axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sanjiva Weerawarana <sanj...@opensource.lk>
Subject Re: [Axis2] New feature - making java class a web service
Date Fri, 06 Jan 2006 04:34:04 GMT
Here's my logic:

- Every service has an AxisService description
	For most services this will come from reading the WSDL and in that case
all the WSDL operations become AxisOperation's inside the AxisService.
If the service doesn't have a WSDL, then we manufacture one using
Java2WSDL (for Java services) and create Axis service from there.
Java2WSDL, by default, should only list public methods of the indicated
service class and any classes it inherits from EXCLUDING
java.lang.Object. That is, methods of java.lang.Object are never
exposed.

- Operations are listed in services.xml only to configure them
	With the above rule, we NEVER have to add operations to the AxisService
by seeing them in services.xml. The only use of services.xml is to allow
the user to configure something about the operation- special message
receivers, name mappings or anything like that.

- Default MessageReceivers work the way Deepal indicated: system has
defaults (indicated in axis2.xml) and the user can change the defaults
service-wide using services.xml or set a message receiver for a specific
operation using the <operation>.

Sanjiva.

On Fri, 2006-01-06 at 10:16 +0600, Deepal Jayasinghe wrote:
> ok , if we all can agree on following then we can publish all the PUBLIC 
> methods in service impl class.
> 
>  - services.xml is just to configure the service , if service impl class has 
> 5 methods and user need to configure only few of them in that case he will 
> add operation tag only for those.
> 
> - if user list none of the operations in the services.xml then all the 
> public operation will be published , with default message receivers 
> depending on the MEP (we an guess mep by looking at the method signature) .
> 
> - and if user want to have his own messaerecivers for his operation then he 
> has to list them in services.xml , else default will RawXML*MR
> 
> 
> pls comment on this soon and I will fix after that.
> 
> here is my +1 for publishing all the public methods in services impl class.
> 
> 
> 
> Thanks,
>  Deepal
> ................................................................
> ~Future is Open~
> 
> ----- Original Message ----- 
> From: "Davanum Srinivas" <davanum@gmail.com>
> To: <axis-dev@ws.apache.org>
> Sent: Friday, January 06, 2006 10:04 AM
> Subject: Re: [Axis2] New feature - making java class a web service
> 
> 
> Deepal,
> 
> Then we should fix the w2j to generate all the names of the individual
> operations. if you see the comments in the generated services.xml it
> says
> 
> <!--All public methods of the service class are exposed by default-->
> 
> thanks,
> dims
> 
> On 1/5/06, Deepal Jayasinghe <deepal@opensource.lk> wrote:
> > Hi dms
> >
> > I am sorry for my late reply , if you deploy service as archive file there
> > has to be a services.xml describing the service then only that would be a
> > valid service, second in current impl you need to list all the operation
> > that you need to publish in services.xml (if you have 4 ops in wsdl and if
> > you list only 3 ops in services.xml  then only those 3 will be available 
> > to
> > invoke.) , but I don't know this is right or wrong.
> >
> > But as I can see some user want to use third party wsdl and want only to
> > publish few functionally of them , in that case we can write his
> > services.xml including the operation that he need to publish.
> >
> > ???????????
> >
> > Thanks,
> >  Deepal
> > ................................................................
> > ~Future is Open~
> >
> > ----- Original Message -----
> > From: "Davanum Srinivas" <davanum@gmail.com>
> > To: <axis-dev@ws.apache.org>
> > Sent: Friday, January 06, 2006 3:12 AM
> > Subject: Re: [Axis2] New feature - making java class a web service
> >
> >
> > Deepal,
> >
> > If i run w2j on the WSDL for AXIS2-243
> > (http://issues.apache.org/jira/secure/attachment/12321416/DLDataService.wsdl)
> > and run the server as per my prev instructions, i don't see the
> > operations *IF* i don't drop my wsdl. If i drop my wsdl in resources
> > all's well. So basically there is a problem filling up the operations
> > of the AxisServer IF the wsdl is missing.
> >
> > thanks,
> > dims
> >
> > On 1/4/06, Deepal Jayasinghe <deepal@opensource.lk> wrote:
> > >
> > > Hi all;
> > >
> > > Sanjiva and I came up with the idea of providing a way to make a java
> > > class
> > > into AxisService , so I implemented that last night and it work as we
> > > wanted. I feel that a very cool feature so if some one does not like to
> > > write services.xml or wsdl and in the mean while he wants to make java
> > > class
> > > into web service now he can do that.
> > >
> > > the only requirement is the corresponding java file should be there in 
> > > the
> > > class path , any way I will improve this to take actual java class not 
> > > the
> > > name of the java class , in the mean while if I have time I will modify
> > > web
> > > admin guide to support this.
> > >
> > > Note : To support any (not all) data types I made operation message
> > > receiver
> > > as RPCMessageReciver.
> > >
> > >
> > > any comments ...... ?
> > >
> > > Thanks,
> > >  Deepal
> > > ................................................................
> > > ~Future is Open~
> > >
> >
> >
> > --
> > Davanum Srinivas : http://wso2.com/blogs/
> >
> >
> >
> 
> 
> --
> Davanum Srinivas : http://wso2.com/blogs/
> 
> 


Mime
View raw message