You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Deepal Jayasinghe <de...@opensource.lk> on 2007/02/22 09:11:37 UTC
[Axis2] POJO annotation
Hi all;
As I mentioned before last few days I was working on POJO annotation
support and there I was thinking to use matadata and jaxws module to
have this feature. When I start implementing annotation support I found
that the created AxisService from metadata module does not have any
operation in it (though I have annotated the service impl class correctly).
In the meantime I had a big issue in Java2WSDL support when annotation
present in the POJO , the only option was to re-write or duplicate
ScheamGenerator logic. And I realized that going to be a big code change
so what I did was, use JAM (annogen) to have annotation support in
SchemaGenerator.
With the above I have implemented pojo annotation support in axis2. So I
have written a Deployer called POJODeployer and you can deploy POJO as
.class file and it will make that to an AxisService and will generate
correct schema (so you will see the correct wsdl at the runtime).
If the WebService has wsdllocation annotation then it will call metadata
module to create AxisService (this path has few TODO items)
please comment on my implementation , and I will commit the code you can
go though that and find out if I have done something wrong.
P.S:- Implementation is not completed yet need few more items to complete.
Thanks
Deepal
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Deepal Jayasinghe <de...@opensource.lk>.
Hi Dims
> Deepal,
>
> Nice start with the pojodeployer...Going through the code, i see that
> we use JAM to extract java.jws.* annotation info from the pojo class.
> I think we need to revisit that at the least. IMHO, the code that
> creates the AxisService hierarchy should store enough information so
> that we should not have to look at the pojo class again. Please see if
> you can store more information in the AxisService hierarchy and avoid
> totally peeking into the pojo class in the SchemaGenerator. As a nice
> side-effect, any one who creates a AxisService hierarchy will be able
> to control more of how the wsdl looks, not just via annotations (think
> javascript!) :)
the problem with that is we use same ScheamGenarator class for Java2WSDL
generation , and at the moment we do not have any dependency to kernel
from Java2WSDL. Any way I think that is good idea to store whatever
necessary in AxisService class and from that we generate schemas and
WSDL. I will definitely looking to that and update the list soon.
Thanks
Deepal
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Rajith Attapattu <ra...@gmail.com>.
Deepal,
On 2/23/07, Deepal Jayasinghe <de...@opensource.lk> wrote:
>
> Hi All;
>
> > Dims, Deepal,
> >
> > Looks like we have dumped the WSM route :)
>
> hmm, actually I looked into your code and I used that. But later I
> realize that if we are going to use WSM we need to add few more
> dependency . Since we already use JAM and that has capability of
> handling annotation I thought of using JAM.
[RA] No issues here. Haha .. I told Dims about this :)
I also asked the same questions from Dims :) (ok enough poking fun at
dims)
> I already had some code that read all the JSR181 annotations and built
> > a AxisService via WSM.
> > But that's fine, I am with you if this is the route we are talking.
> >
> > Regards,
> >
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
Re: [Axis2] POJO annotation
Posted by Deepal Jayasinghe <de...@opensource.lk>.
Hi All;
> Dims, Deepal,
>
> Looks like we have dumped the WSM route :)
hmm, actually I looked into your code and I used that. But later I
realize that if we are going to use WSM we need to add few more
dependency . Since we already use JAM and that has capability of
handling annotation I thought of using JAM.
> I already had some code that read all the JSR181 annotations and built
> a AxisService via WSM.
> But that's fine, I am with you if this is the route we are talking.
>
> Regards,
>
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Rajith Attapattu <ra...@gmail.com>.
Dims, Deepal,
Looks like we have dumped the WSM route :)
I already had some code that read all the JSR181 annotations and built a
AxisService via WSM.
But that's fine, I am with you if this is the route we are talking.
Regards,
Rajith
On 2/22/07, Davanum Srinivas <da...@gmail.com> wrote:
>
> Deepal,
>
> Nice start with the pojodeployer...Going through the code, i see that
> we use JAM to extract java.jws.* annotation info from the pojo class.
> I think we need to revisit that at the least. IMHO, the code that
> creates the AxisService hierarchy should store enough information so
> that we should not have to look at the pojo class again. Please see if
> you can store more information in the AxisService hierarchy and avoid
> totally peeking into the pojo class in the SchemaGenerator. As a nice
> side-effect, any one who creates a AxisService hierarchy will be able
> to control more of how the wsdl looks, not just via annotations (think
> javascript!) :)
>
> As a side note, please add a sample/testcase in integration to back up
> the changes when you get a chance.
>
> thanks,
> dims
>
> On 2/22/07, Deepal Jayasinghe <de...@opensource.lk> wrote:
> > Hi all;
> >
> > As I mentioned before last few days I was working on POJO annotation
> > support and there I was thinking to use matadata and jaxws module to
> > have this feature. When I start implementing annotation support I found
> > that the created AxisService from metadata module does not have any
> > operation in it (though I have annotated the service impl class
> correctly).
> >
> > In the meantime I had a big issue in Java2WSDL support when annotation
> > present in the POJO , the only option was to re-write or duplicate
> > ScheamGenerator logic. And I realized that going to be a big code change
> > so what I did was, use JAM (annogen) to have annotation support in
> > SchemaGenerator.
> >
> > With the above I have implemented pojo annotation support in axis2. So I
> > have written a Deployer called POJODeployer and you can deploy POJO as
> > .class file and it will make that to an AxisService and will generate
> > correct schema (so you will see the correct wsdl at the runtime).
> >
> > If the WebService has wsdllocation annotation then it will call metadata
> > module to create AxisService (this path has few TODO items)
> >
> > please comment on my implementation , and I will commit the code you can
> > go though that and find out if I have done something wrong.
> >
> > P.S:- Implementation is not completed yet need few more items to
> complete.
> >
> > Thanks
> > Deepal
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-dev-help@ws.apache.org
> >
> >
>
>
> --
> Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
Re: [Axis2] POJO annotation
Posted by Davanum Srinivas <da...@gmail.com>.
Deepal,
Nice start with the pojodeployer...Going through the code, i see that
we use JAM to extract java.jws.* annotation info from the pojo class.
I think we need to revisit that at the least. IMHO, the code that
creates the AxisService hierarchy should store enough information so
that we should not have to look at the pojo class again. Please see if
you can store more information in the AxisService hierarchy and avoid
totally peeking into the pojo class in the SchemaGenerator. As a nice
side-effect, any one who creates a AxisService hierarchy will be able
to control more of how the wsdl looks, not just via annotations (think
javascript!) :)
As a side note, please add a sample/testcase in integration to back up
the changes when you get a chance.
thanks,
dims
On 2/22/07, Deepal Jayasinghe <de...@opensource.lk> wrote:
> Hi all;
>
> As I mentioned before last few days I was working on POJO annotation
> support and there I was thinking to use matadata and jaxws module to
> have this feature. When I start implementing annotation support I found
> that the created AxisService from metadata module does not have any
> operation in it (though I have annotated the service impl class correctly).
>
> In the meantime I had a big issue in Java2WSDL support when annotation
> present in the POJO , the only option was to re-write or duplicate
> ScheamGenerator logic. And I realized that going to be a big code change
> so what I did was, use JAM (annogen) to have annotation support in
> SchemaGenerator.
>
> With the above I have implemented pojo annotation support in axis2. So I
> have written a Deployer called POJODeployer and you can deploy POJO as
> .class file and it will make that to an AxisService and will generate
> correct schema (so you will see the correct wsdl at the runtime).
>
> If the WebService has wsdllocation annotation then it will call metadata
> module to create AxisService (this path has few TODO items)
>
> please comment on my implementation , and I will commit the code you can
> go though that and find out if I have done something wrong.
>
> P.S:- Implementation is not completed yet need few more items to complete.
>
> Thanks
> Deepal
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
--
Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Jeff Barrett <ba...@us.ibm.com>.
All, I'm adding the factory method described below and doing a little
refactoring of the Factory class; should be done soon.
Thanks,
Jeff
IBM Software Group - WebSphere Web Services Development
Phone: 512-838-4587 or Tie Line 678-4587
Internet e-mail and Sametime ID: barrettj@us.ibm.com
"Davanum Srinivas" <da...@gmail.com>
02/22/2007 05:33 PM
Please respond to
axis-dev@ws.apache.org
To
axis-dev@ws.apache.org
cc
Subject
Re: [Axis2] POJO annotation
Sounds good Jeff :)
> For a simple environment, though, adding a method that takes a single
> class and returns a single ServiceDescription is a good idea.
Thanks,
dims
On 2/22/07, Jeff Barrett <ba...@us.ibm.com> wrote:
> Hi Dims,
>
> Simple answer: Yes, that looks about right.
>
> Slightly Longer answer: Maybe there should be an additonal factory
method
> that takes just a single service impl class and does the DBC conversion
> and returns a single ServiceDescription for the simple case. As you
point
> out, that would be very useful in testing and in simple environments.
>
> Even Slightly Longer answer: Yeah, that is a bit more code, isn't it?
:-)
> The DBC is there so that, in a server environment:
> - We do not require all the classes be loaded at startup time and some
> other high-performance byte scanning technology could be used to load
the
> annotations and create the DBCs.
> - We can process multiple service implementations at one time, for
example
> an archive file that contained a bunch of web services could all be
> processed from a single DBC hashmap.
> For a simple environment, though, adding a method that takes a single
> class and returns a single ServiceDescription is a good idea.
>
> Thanks,
> Jeff
>
> IBM Software Group - WebSphere Web Services Development
> Phone: 512-838-4587 or Tie Line 678-4587
> Internet e-mail and Sametime ID: barrettj@us.ibm.com
>
>
>
> "Davanum Srinivas" <da...@gmail.com>
> 02/22/2007 03:21 PM
> Please respond to
> axis-dev@ws.apache.org
>
>
> To
> axis-dev@ws.apache.org
> cc
>
> Subject
> Re: [Axis2] POJO annotation
>
>
>
>
>
>
> Jeff,
>
> So instead of calling
>
> ServiceDescription sd =
> DescriptionFactory.createServiceDescriptionFromServiceImpl(myClazz,
> myAxisService)
> configCtx.getAxisConfiguration().addService(myAxisService);
>
> We should do the following?
> JavaClassToDBCConverter converter = new
JavaClassToDBCConverter(myClazz);
> HashMap<String, DescriptionBuilderComposite> dbcMap =
> converter.produceDBC();
> List<ServiceDescription> serviceDescList =
> DescriptionFactory.createServiceDescriptionFromDBCMap(dbcMap);
> EndpointDescription[] edArray =
> serviceDescList.get(0).getEndpointDescriptions();
> AxisService service = ed[0].getAxisService():
> configCtx.getAxisConfiguration().addService(myAxisService);
>
> In other words, how do we get a fully configured AxisService from a
> given class? :)
>
> thanks,
> dims
>
> On 2/22/07, Jeff Barrett <ba...@us.ibm.com> wrote:
> > Hi Deepal,
> >
> > You may not have seen it yet, but I replied yesterday to your note on
> not
> > getting the AxisOperations when you used the metadata layer. I
believe
> > that had to do with which DescriptionFactory method you were using.
I'm
> > just about to commit updates to the javadoc in that class and tagging
> the
> > method you were using as deprecated. Sorry the javadoc wasn't better
in
> > there to begin with!
> >
> > The metadata module will build up the full AxisService description
> > hierachy given just annotations (no WSDL), or annotations and WSDL.
> > Currently the metadata layer does NOT generate the correct schema if
> > there's no WSDL; that is something it should probably do.
> >
> > Other than that, if the POJODeployer were to create a
> > DescriptionBuilderComposite (using the JavaReflection to DBC converter
> in
> > the metadata package, at least for now), it should be able to use the
> > metadata layer for both the WSDL-provided and
> no-WSDL-provided/annotations
> > only case.
> >
> > Thanks,
> > Jeff
> >
> > IBM Software Group - WebSphere Web Services Development
> > Phone: 512-838-4587 or Tie Line 678-4587
> > Internet e-mail and Sametime ID: barrettj@us.ibm.com
> >
> >
> >
> > Deepal Jayasinghe <de...@opensource.lk>
> > 02/22/2007 02:11 AM
> > Please respond to
> > axis-dev@ws.apache.org
> >
> >
> > To
> > "axis-dev@ws.apache.org" <ax...@ws.apache.org>
> > cc
> >
> > Subject
> > [Axis2] POJO annotation
> >
> >
> >
> >
> >
> >
> > Hi all;
> >
> > As I mentioned before last few days I was working on POJO annotation
> > support and there I was thinking to use matadata and jaxws module to
> > have this feature. When I start implementing annotation support I
found
> > that the created AxisService from metadata module does not have any
> > operation in it (though I have annotated the service impl class
> > correctly).
> >
> > In the meantime I had a big issue in Java2WSDL support when annotation
> > present in the POJO , the only option was to re-write or duplicate
> > ScheamGenerator logic. And I realized that going to be a big code
change
> > so what I did was, use JAM (annogen) to have annotation support in
> > SchemaGenerator.
> >
> > With the above I have implemented pojo annotation support in axis2. So
I
> > have written a Deployer called POJODeployer and you can deploy POJO as
> > .class file and it will make that to an AxisService and will generate
> > correct schema (so you will see the correct wsdl at the runtime).
> >
> > If the WebService has wsdllocation annotation then it will call
metadata
> > module to create AxisService (this path has few TODO items)
> >
> > please comment on my implementation , and I will commit the code you
can
> > go though that and find out if I have done something wrong.
> >
> > P.S:- Implementation is not completed yet need few more items to
> complete.
> >
> > Thanks
> > Deepal
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-dev-help@ws.apache.org
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-dev-help@ws.apache.org
> >
> >
>
>
> --
> Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services
Developers
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
--
Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Davanum Srinivas <da...@gmail.com>.
Sounds good Jeff :)
> For a simple environment, though, adding a method that takes a single
> class and returns a single ServiceDescription is a good idea.
Thanks,
dims
On 2/22/07, Jeff Barrett <ba...@us.ibm.com> wrote:
> Hi Dims,
>
> Simple answer: Yes, that looks about right.
>
> Slightly Longer answer: Maybe there should be an additonal factory method
> that takes just a single service impl class and does the DBC conversion
> and returns a single ServiceDescription for the simple case. As you point
> out, that would be very useful in testing and in simple environments.
>
> Even Slightly Longer answer: Yeah, that is a bit more code, isn't it? :-)
> The DBC is there so that, in a server environment:
> - We do not require all the classes be loaded at startup time and some
> other high-performance byte scanning technology could be used to load the
> annotations and create the DBCs.
> - We can process multiple service implementations at one time, for example
> an archive file that contained a bunch of web services could all be
> processed from a single DBC hashmap.
> For a simple environment, though, adding a method that takes a single
> class and returns a single ServiceDescription is a good idea.
>
> Thanks,
> Jeff
>
> IBM Software Group - WebSphere Web Services Development
> Phone: 512-838-4587 or Tie Line 678-4587
> Internet e-mail and Sametime ID: barrettj@us.ibm.com
>
>
>
> "Davanum Srinivas" <da...@gmail.com>
> 02/22/2007 03:21 PM
> Please respond to
> axis-dev@ws.apache.org
>
>
> To
> axis-dev@ws.apache.org
> cc
>
> Subject
> Re: [Axis2] POJO annotation
>
>
>
>
>
>
> Jeff,
>
> So instead of calling
>
> ServiceDescription sd =
> DescriptionFactory.createServiceDescriptionFromServiceImpl(myClazz,
> myAxisService)
> configCtx.getAxisConfiguration().addService(myAxisService);
>
> We should do the following?
> JavaClassToDBCConverter converter = new JavaClassToDBCConverter(myClazz);
> HashMap<String, DescriptionBuilderComposite> dbcMap =
> converter.produceDBC();
> List<ServiceDescription> serviceDescList =
> DescriptionFactory.createServiceDescriptionFromDBCMap(dbcMap);
> EndpointDescription[] edArray =
> serviceDescList.get(0).getEndpointDescriptions();
> AxisService service = ed[0].getAxisService():
> configCtx.getAxisConfiguration().addService(myAxisService);
>
> In other words, how do we get a fully configured AxisService from a
> given class? :)
>
> thanks,
> dims
>
> On 2/22/07, Jeff Barrett <ba...@us.ibm.com> wrote:
> > Hi Deepal,
> >
> > You may not have seen it yet, but I replied yesterday to your note on
> not
> > getting the AxisOperations when you used the metadata layer. I believe
> > that had to do with which DescriptionFactory method you were using. I'm
> > just about to commit updates to the javadoc in that class and tagging
> the
> > method you were using as deprecated. Sorry the javadoc wasn't better in
> > there to begin with!
> >
> > The metadata module will build up the full AxisService description
> > hierachy given just annotations (no WSDL), or annotations and WSDL.
> > Currently the metadata layer does NOT generate the correct schema if
> > there's no WSDL; that is something it should probably do.
> >
> > Other than that, if the POJODeployer were to create a
> > DescriptionBuilderComposite (using the JavaReflection to DBC converter
> in
> > the metadata package, at least for now), it should be able to use the
> > metadata layer for both the WSDL-provided and
> no-WSDL-provided/annotations
> > only case.
> >
> > Thanks,
> > Jeff
> >
> > IBM Software Group - WebSphere Web Services Development
> > Phone: 512-838-4587 or Tie Line 678-4587
> > Internet e-mail and Sametime ID: barrettj@us.ibm.com
> >
> >
> >
> > Deepal Jayasinghe <de...@opensource.lk>
> > 02/22/2007 02:11 AM
> > Please respond to
> > axis-dev@ws.apache.org
> >
> >
> > To
> > "axis-dev@ws.apache.org" <ax...@ws.apache.org>
> > cc
> >
> > Subject
> > [Axis2] POJO annotation
> >
> >
> >
> >
> >
> >
> > Hi all;
> >
> > As I mentioned before last few days I was working on POJO annotation
> > support and there I was thinking to use matadata and jaxws module to
> > have this feature. When I start implementing annotation support I found
> > that the created AxisService from metadata module does not have any
> > operation in it (though I have annotated the service impl class
> > correctly).
> >
> > In the meantime I had a big issue in Java2WSDL support when annotation
> > present in the POJO , the only option was to re-write or duplicate
> > ScheamGenerator logic. And I realized that going to be a big code change
> > so what I did was, use JAM (annogen) to have annotation support in
> > SchemaGenerator.
> >
> > With the above I have implemented pojo annotation support in axis2. So I
> > have written a Deployer called POJODeployer and you can deploy POJO as
> > .class file and it will make that to an AxisService and will generate
> > correct schema (so you will see the correct wsdl at the runtime).
> >
> > If the WebService has wsdllocation annotation then it will call metadata
> > module to create AxisService (this path has few TODO items)
> >
> > please comment on my implementation , and I will commit the code you can
> > go though that and find out if I have done something wrong.
> >
> > P.S:- Implementation is not completed yet need few more items to
> complete.
> >
> > Thanks
> > Deepal
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-dev-help@ws.apache.org
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-dev-help@ws.apache.org
> >
> >
>
>
> --
> Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
--
Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Deepal Jayasinghe <de...@opensource.lk>.
hi Jeff ;
As you suggested I tried to use DescriptionBuilderComposite for POJO and
I got set of exception;
Here we go , I have my Service class annotated in [1] and I used [2] to
create AxisService , and then I got the exception in [3]. After that I
changed my Service class as in [4] and got the exception in [5]. Then I
found the issue is ServiceDecriptionImpl and added following code [6] to
line number 441 , then I got the exception in [7]. So what am I suppose
to do next.
Btw there was a bug in JavaClassToDBCConverter line number 155.
Thanks
Deepal
[1]
@WebService
public class MyServiceClass {
@WebMethod
public String dee() {
return "";
}
@WebMethod
public void add(int a, int b) {
}
@WebMethod
public String[] nothing(int a) {
return null;
}
}
[2]
JavaClassToDBCConverter converter = new
JavaClassToDBCConverter(MyServiceClass.class);
HashMap<String, DescriptionBuilderComposite> dbcMap =
converter.produceDBC();
List list = DescriptionFactory.createServiceDescriptionFromDBCMap(dbcMap);
[3]
javax.xml.ws.WebServiceException: EndpointDescriptionImpl: Unable to
find custom WSDL generator
at
org.apache.axis2.jaxws.ExceptionFactory.createWebServiceException(ExceptionFactory.java:177)
at
org.apache.axis2.jaxws.ExceptionFactory.makeWebServiceException(ExceptionFactory.java:79)
at
org.apache.axis2.jaxws.ExceptionFactory.makeWebServiceException(ExceptionFactory.java:124)
at
org.apache.axis2.jaxws.description.impl.EndpointDescriptionImpl.generateWSDL(EndpointDescriptionImpl.java:1449)
at
org.apache.axis2.jaxws.description.impl.EndpointDescriptionImpl.<init>(EndpointDescriptionImpl.java:296)
at
org.apache.axis2.jaxws.description.impl.ServiceDescriptionImpl.<init>(ServiceDescriptionImpl.java:178)
at
org.apache.axis2.jaxws.description.impl.DescriptionFactoryImpl.createServiceDescriptionFromDBCMap(DescriptionFactoryImpl.java:93)
at
org.apache.axis2.jaxws.description.DescriptionFactory.createServiceDescriptionFromDBCMap(DescriptionFactory.java:55
[4]
@WebService(wsdlLocation = "test.wsdl")
public class MyServiceClass {
@WebMethod
public String dee() {
return "";
}
@WebMethod
public void add(int a, int b) {
}
@WebMethod
public String[] nothing(int a) {
return null;
}
}
[5].
javax.xml.ws.WebServiceException: Validation error: cannot find WSDL
Definition specified by this WebService annotation. Implementation
class: MyServiceClass; WSDL location: test.wsdl
at
org.apache.axis2.jaxws.ExceptionFactory.createWebServiceException(ExceptionFactory.java:177)
at
org.apache.axis2.jaxws.ExceptionFactory.makeWebServiceException(ExceptionFactory.java:79)
at
org.apache.axis2.jaxws.ExceptionFactory.makeWebServiceException(ExceptionFactory.java:124)
at
org.apache.axis2.jaxws.description.impl.ServiceDescriptionImpl.validateIntegrity(ServiceDescriptionImpl.java:675)
at
org.apache.axis2.jaxws.description.impl.ServiceDescriptionImpl.validateDBCLIntegrity(ServiceDescriptionImpl.java:581)
at
org.apache.axis2.jaxws.description.impl.ServiceDescriptionImpl.<init>(ServiceDescriptionImpl.java:167)
at
org.apache.axis2.jaxws.description.impl.DescriptionFactoryImpl.createServiceDescriptionFromDBCMap(DescriptionFactoryImpl.java:93)
at
org.apache.axis2.jaxws.description.DescriptionFactory.createServiceDescriptionFromDBCMap(DescriptionFactory.java:55)
[6].
else {
String wsdlLocation =
composite.getWebServiceAnnot().wsdlLocation();
if(wsdlLocation !=null&&!"".equals(wsdlLocation)){
File wsdlFile = new File(wsdlLocation);
if(wsdlFile.exists()){
try {
this.wsdlURL = wsdlFile.toURL();
this.wsdlWrapper = new
WSDL4JWrapper(this.wsdlURL);
this.composite.setWsdlDefinition(wsdlWrapper.getDefinition());
} catch (Exception e) {
throw
ExceptionFactory.makeWebServiceException(Messages.getMessage("wsdlException",
e.getMessage()), e);
}
} else {
try {
wsdlFile.createNewFile();
System.out.println(wsdlFile.getAbsolutePath());
} catch (IOException e) {
e.printStackTrace(); //To change body
of catch statement use File | Settings | File Templates.
}
}
}
[7].
javax.xml.ws.WebServiceException: EndpointDescriptionImpl: Unable to
find custom WSDL generator
at
org.apache.axis2.jaxws.ExceptionFactory.createWebServiceException(ExceptionFactory.java:177)
at
org.apache.axis2.jaxws.ExceptionFactory.makeWebServiceException(ExceptionFactory.java:79)
at
org.apache.axis2.jaxws.ExceptionFactory.makeWebServiceException(ExceptionFactory.java:124)
at
org.apache.axis2.jaxws.description.impl.EndpointDescriptionImpl.generateWSDL(EndpointDescriptionImpl.java:1449)
at
org.apache.axis2.jaxws.description.impl.EndpointDescriptionImpl.<init>(EndpointDescriptionImpl.java:296)
at
org.apache.axis2.jaxws.description.impl.ServiceDescriptionImpl.<init>(ServiceDescriptionImpl.java:178)
at
org.apache.axis2.jaxws.description.impl.DescriptionFactoryImpl.createServiceDescriptionFromDBCMap(DescriptionFactoryImpl.java:93)
at
org.apache.axis2.jaxws.description.DescriptionFactory.createServiceDescriptionFromDBCMap(DescriptionFactory.java:55)
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Jeff Barrett <ba...@us.ibm.com>.
Hi Dims,
Simple answer: Yes, that looks about right.
Slightly Longer answer: Maybe there should be an additonal factory method
that takes just a single service impl class and does the DBC conversion
and returns a single ServiceDescription for the simple case. As you point
out, that would be very useful in testing and in simple environments.
Even Slightly Longer answer: Yeah, that is a bit more code, isn't it? :-)
The DBC is there so that, in a server environment:
- We do not require all the classes be loaded at startup time and some
other high-performance byte scanning technology could be used to load the
annotations and create the DBCs.
- We can process multiple service implementations at one time, for example
an archive file that contained a bunch of web services could all be
processed from a single DBC hashmap.
For a simple environment, though, adding a method that takes a single
class and returns a single ServiceDescription is a good idea.
Thanks,
Jeff
IBM Software Group - WebSphere Web Services Development
Phone: 512-838-4587 or Tie Line 678-4587
Internet e-mail and Sametime ID: barrettj@us.ibm.com
"Davanum Srinivas" <da...@gmail.com>
02/22/2007 03:21 PM
Please respond to
axis-dev@ws.apache.org
To
axis-dev@ws.apache.org
cc
Subject
Re: [Axis2] POJO annotation
Jeff,
So instead of calling
ServiceDescription sd =
DescriptionFactory.createServiceDescriptionFromServiceImpl(myClazz,
myAxisService)
configCtx.getAxisConfiguration().addService(myAxisService);
We should do the following?
JavaClassToDBCConverter converter = new JavaClassToDBCConverter(myClazz);
HashMap<String, DescriptionBuilderComposite> dbcMap =
converter.produceDBC();
List<ServiceDescription> serviceDescList =
DescriptionFactory.createServiceDescriptionFromDBCMap(dbcMap);
EndpointDescription[] edArray =
serviceDescList.get(0).getEndpointDescriptions();
AxisService service = ed[0].getAxisService():
configCtx.getAxisConfiguration().addService(myAxisService);
In other words, how do we get a fully configured AxisService from a
given class? :)
thanks,
dims
On 2/22/07, Jeff Barrett <ba...@us.ibm.com> wrote:
> Hi Deepal,
>
> You may not have seen it yet, but I replied yesterday to your note on
not
> getting the AxisOperations when you used the metadata layer. I believe
> that had to do with which DescriptionFactory method you were using. I'm
> just about to commit updates to the javadoc in that class and tagging
the
> method you were using as deprecated. Sorry the javadoc wasn't better in
> there to begin with!
>
> The metadata module will build up the full AxisService description
> hierachy given just annotations (no WSDL), or annotations and WSDL.
> Currently the metadata layer does NOT generate the correct schema if
> there's no WSDL; that is something it should probably do.
>
> Other than that, if the POJODeployer were to create a
> DescriptionBuilderComposite (using the JavaReflection to DBC converter
in
> the metadata package, at least for now), it should be able to use the
> metadata layer for both the WSDL-provided and
no-WSDL-provided/annotations
> only case.
>
> Thanks,
> Jeff
>
> IBM Software Group - WebSphere Web Services Development
> Phone: 512-838-4587 or Tie Line 678-4587
> Internet e-mail and Sametime ID: barrettj@us.ibm.com
>
>
>
> Deepal Jayasinghe <de...@opensource.lk>
> 02/22/2007 02:11 AM
> Please respond to
> axis-dev@ws.apache.org
>
>
> To
> "axis-dev@ws.apache.org" <ax...@ws.apache.org>
> cc
>
> Subject
> [Axis2] POJO annotation
>
>
>
>
>
>
> Hi all;
>
> As I mentioned before last few days I was working on POJO annotation
> support and there I was thinking to use matadata and jaxws module to
> have this feature. When I start implementing annotation support I found
> that the created AxisService from metadata module does not have any
> operation in it (though I have annotated the service impl class
> correctly).
>
> In the meantime I had a big issue in Java2WSDL support when annotation
> present in the POJO , the only option was to re-write or duplicate
> ScheamGenerator logic. And I realized that going to be a big code change
> so what I did was, use JAM (annogen) to have annotation support in
> SchemaGenerator.
>
> With the above I have implemented pojo annotation support in axis2. So I
> have written a Deployer called POJODeployer and you can deploy POJO as
> .class file and it will make that to an AxisService and will generate
> correct schema (so you will see the correct wsdl at the runtime).
>
> If the WebService has wsdllocation annotation then it will call metadata
> module to create AxisService (this path has few TODO items)
>
> please comment on my implementation , and I will commit the code you can
> go though that and find out if I have done something wrong.
>
> P.S:- Implementation is not completed yet need few more items to
complete.
>
> Thanks
> Deepal
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
--
Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Davanum Srinivas <da...@gmail.com>.
Jeff,
So instead of calling
ServiceDescription sd =
DescriptionFactory.createServiceDescriptionFromServiceImpl(myClazz,
myAxisService)
configCtx.getAxisConfiguration().addService(myAxisService);
We should do the following?
JavaClassToDBCConverter converter = new JavaClassToDBCConverter(myClazz);
HashMap<String, DescriptionBuilderComposite> dbcMap = converter.produceDBC();
List<ServiceDescription> serviceDescList =
DescriptionFactory.createServiceDescriptionFromDBCMap(dbcMap);
EndpointDescription[] edArray =
serviceDescList.get(0).getEndpointDescriptions();
AxisService service = ed[0].getAxisService():
configCtx.getAxisConfiguration().addService(myAxisService);
In other words, how do we get a fully configured AxisService from a
given class? :)
thanks,
dims
On 2/22/07, Jeff Barrett <ba...@us.ibm.com> wrote:
> Hi Deepal,
>
> You may not have seen it yet, but I replied yesterday to your note on not
> getting the AxisOperations when you used the metadata layer. I believe
> that had to do with which DescriptionFactory method you were using. I'm
> just about to commit updates to the javadoc in that class and tagging the
> method you were using as deprecated. Sorry the javadoc wasn't better in
> there to begin with!
>
> The metadata module will build up the full AxisService description
> hierachy given just annotations (no WSDL), or annotations and WSDL.
> Currently the metadata layer does NOT generate the correct schema if
> there's no WSDL; that is something it should probably do.
>
> Other than that, if the POJODeployer were to create a
> DescriptionBuilderComposite (using the JavaReflection to DBC converter in
> the metadata package, at least for now), it should be able to use the
> metadata layer for both the WSDL-provided and no-WSDL-provided/annotations
> only case.
>
> Thanks,
> Jeff
>
> IBM Software Group - WebSphere Web Services Development
> Phone: 512-838-4587 or Tie Line 678-4587
> Internet e-mail and Sametime ID: barrettj@us.ibm.com
>
>
>
> Deepal Jayasinghe <de...@opensource.lk>
> 02/22/2007 02:11 AM
> Please respond to
> axis-dev@ws.apache.org
>
>
> To
> "axis-dev@ws.apache.org" <ax...@ws.apache.org>
> cc
>
> Subject
> [Axis2] POJO annotation
>
>
>
>
>
>
> Hi all;
>
> As I mentioned before last few days I was working on POJO annotation
> support and there I was thinking to use matadata and jaxws module to
> have this feature. When I start implementing annotation support I found
> that the created AxisService from metadata module does not have any
> operation in it (though I have annotated the service impl class
> correctly).
>
> In the meantime I had a big issue in Java2WSDL support when annotation
> present in the POJO , the only option was to re-write or duplicate
> ScheamGenerator logic. And I realized that going to be a big code change
> so what I did was, use JAM (annogen) to have annotation support in
> SchemaGenerator.
>
> With the above I have implemented pojo annotation support in axis2. So I
> have written a Deployer called POJODeployer and you can deploy POJO as
> .class file and it will make that to an AxisService and will generate
> correct schema (so you will see the correct wsdl at the runtime).
>
> If the WebService has wsdllocation annotation then it will call metadata
> module to create AxisService (this path has few TODO items)
>
> please comment on my implementation , and I will commit the code you can
> go though that and find out if I have done something wrong.
>
> P.S:- Implementation is not completed yet need few more items to complete.
>
> Thanks
> Deepal
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
--
Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Davanum Srinivas <da...@gmail.com>.
Yep! :)
-- dims
On 2/23/07, Rajith Attapattu <ra...@gmail.com> wrote:
> LOL, agreed then Deepla can simply put JAX-WS MR as the Message Receiver :)
>
> Rajith
>
>
> On 2/23/07, Davanum Srinivas < davanum@gmail.com> wrote:
> >
> > Right now, for 1.2 the effort is to deploy using JAXWSMessageReceiver.
> > Whatever you want to call it :)
> >
> > -- dims
> >
> > On 2/23/07, Rajith Attapattu <ra...@gmail.com> wrote:
> > > Deepal,
> > >
> > > On 2/23/07, Deepal Jayasinghe < deepal@opensource.lk> wrote:
> > > > Hi Rajith ;
> > > >
> > > > > Deepal,
> > > > >
> > > > > Same here, nick and I suggested a way to denote wether the POJO is
> an
> > > > > Axis2 endpoint ot a JAX-WS endpoint.
> > > >
> > > > Hmm , no I am not using any JAX-WS endpoint when you deploy a POJO .
> It
> > > > will work as you deploy a java class with RPC MR.
> > >
> > > [RA] The problems is as nick explained, when u deploy a JSR 181
> annotated
> > > POJO we need to know whether to expose it as a JAX-WS endpoint or an
> Axis2
> > > endpoint. I also in my impl added the RPC MR, but nick pointed out that
> if
> > > the same service needs to be exposed as a JAX-WS endpoint then u need to
> > > have the JAXWS MR. Since there is no point maintaining two services(or
> two
> > > endpoints) for the same "service", we decided to add an annotation to
> say
> > > whether it's JAX-WS or Axis2.
> > >
> > > If it's marked as JAX-WS then u can add the JAX-WS MR and if it's an
> axis2
> > > endpoint u could add a RCP MR.
> > >
> > > Does this make sense?
> > >
> > > > > Nick can u point to the wiki page?
> > > > > Also we had some suggestions on axis2 specific annotations to
> > > > > suplement the features that would have been there if the
> services.xml
> > > > > is used.
> > > >
> > > > I also like to support Axis2 specific annotation and I really do not
> > > > want to have services.xml when we use POJO (thats a pain and
> > > > unnecessary cost).
> > >
> > > +1 on this. I can help you here.
> > >
> > > Thanks,
> > > Rajith
> > >
> > > > Thanks
> > > > Deepal
> > > >
> > > >
> > > >
> > >
> ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail:
> > > axis-dev-unsubscribe@ws.apache.org
> > > > For additional commands, e-mail: axis-dev-help@ws.apache.org
> > > >
> > > >
> > >
> > >
> >
> >
> > --
> > Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> axis-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-dev-help@ws.apache.org
> >
> >
>
>
--
Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Rajith Attapattu <ra...@gmail.com>.
LOL, agreed then Deepla can simply put JAX-WS MR as the Message Receiver :)
Rajith
On 2/23/07, Davanum Srinivas <da...@gmail.com> wrote:
>
> Right now, for 1.2 the effort is to deploy using JAXWSMessageReceiver.
> Whatever you want to call it :)
>
> -- dims
>
> On 2/23/07, Rajith Attapattu <ra...@gmail.com> wrote:
> > Deepal,
> >
> > On 2/23/07, Deepal Jayasinghe <de...@opensource.lk> wrote:
> > > Hi Rajith ;
> > >
> > > > Deepal,
> > > >
> > > > Same here, nick and I suggested a way to denote wether the POJO is
> an
> > > > Axis2 endpoint ot a JAX-WS endpoint.
> > >
> > > Hmm , no I am not using any JAX-WS endpoint when you deploy a POJO .
> It
> > > will work as you deploy a java class with RPC MR.
> >
> > [RA] The problems is as nick explained, when u deploy a JSR 181
> annotated
> > POJO we need to know whether to expose it as a JAX-WS endpoint or an
> Axis2
> > endpoint. I also in my impl added the RPC MR, but nick pointed out that
> if
> > the same service needs to be exposed as a JAX-WS endpoint then u need to
> > have the JAXWS MR. Since there is no point maintaining two services(or
> two
> > endpoints) for the same "service", we decided to add an annotation to
> say
> > whether it's JAX-WS or Axis2.
> >
> > If it's marked as JAX-WS then u can add the JAX-WS MR and if it's an
> axis2
> > endpoint u could add a RCP MR.
> >
> > Does this make sense?
> >
> > > > Nick can u point to the wiki page?
> > > > Also we had some suggestions on axis2 specific annotations to
> > > > suplement the features that would have been there if the
> services.xml
> > > > is used.
> > >
> > > I also like to support Axis2 specific annotation and I really do not
> > > want to have services.xml when we use POJO (thats a pain and
> > > unnecessary cost).
> >
> > +1 on this. I can help you here.
> >
> > Thanks,
> > Rajith
> >
> > > Thanks
> > > Deepal
> > >
> > >
> > >
> > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail:
> > axis-dev-unsubscribe@ws.apache.org
> > > For additional commands, e-mail: axis-dev-help@ws.apache.org
> > >
> > >
> >
> >
>
>
> --
> Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
Re: [Axis2] POJO annotation
Posted by Davanum Srinivas <da...@gmail.com>.
Right now, for 1.2 the effort is to deploy using JAXWSMessageReceiver.
Whatever you want to call it :)
-- dims
On 2/23/07, Rajith Attapattu <ra...@gmail.com> wrote:
> Deepal,
>
> On 2/23/07, Deepal Jayasinghe <de...@opensource.lk> wrote:
> > Hi Rajith ;
> >
> > > Deepal,
> > >
> > > Same here, nick and I suggested a way to denote wether the POJO is an
> > > Axis2 endpoint ot a JAX-WS endpoint.
> >
> > Hmm , no I am not using any JAX-WS endpoint when you deploy a POJO . It
> > will work as you deploy a java class with RPC MR.
>
> [RA] The problems is as nick explained, when u deploy a JSR 181 annotated
> POJO we need to know whether to expose it as a JAX-WS endpoint or an Axis2
> endpoint. I also in my impl added the RPC MR, but nick pointed out that if
> the same service needs to be exposed as a JAX-WS endpoint then u need to
> have the JAXWS MR. Since there is no point maintaining two services(or two
> endpoints) for the same "service", we decided to add an annotation to say
> whether it's JAX-WS or Axis2.
>
> If it's marked as JAX-WS then u can add the JAX-WS MR and if it's an axis2
> endpoint u could add a RCP MR.
>
> Does this make sense?
>
> > > Nick can u point to the wiki page?
> > > Also we had some suggestions on axis2 specific annotations to
> > > suplement the features that would have been there if the services.xml
> > > is used.
> >
> > I also like to support Axis2 specific annotation and I really do not
> > want to have services.xml when we use POJO (thats a pain and
> > unnecessary cost).
>
> +1 on this. I can help you here.
>
> Thanks,
> Rajith
>
> > Thanks
> > Deepal
> >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> axis-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-dev-help@ws.apache.org
> >
> >
>
>
--
Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Rajith Attapattu <ra...@gmail.com>.
Deepal,
On 2/23/07, Deepal Jayasinghe <de...@opensource.lk> wrote:
>
> Hi Rajith ;
>
> > Deepal,
> >
> > Same here, nick and I suggested a way to denote wether the POJO is an
> > Axis2 endpoint ot a JAX-WS endpoint.
>
> Hmm , no I am not using any JAX-WS endpoint when you deploy a POJO . It
> will work as you deploy a java class with RPC MR.
[RA] The problems is as nick explained, when u deploy a JSR 181 annotated
POJO we need to know whether to expose it as a JAX-WS endpoint or an Axis2
endpoint. I also in my impl added the RPC MR, but nick pointed out that if
the same service needs to be exposed as a JAX-WS endpoint then u need to
have the JAXWS MR. Since there is no point maintaining two services(or two
endpoints) for the same "service", we decided to add an annotation to say
whether it's JAX-WS or Axis2.
If it's marked as JAX-WS then u can add the JAX-WS MR and if it's an axis2
endpoint u could add a RCP MR.
Does this make sense?
> Nick can u point to the wiki page?
> > Also we had some suggestions on axis2 specific annotations to
> > suplement the features that would have been there if the services.xml
> > is used.
>
> I also like to support Axis2 specific annotation and I really do not
> want to have services.xml when we use POJO (thats a pain and
> unnecessary cost).
+1 on this. I can help you here.
Thanks,
Rajith
Thanks
> Deepal
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
Re: [Axis2] POJO annotation
Posted by Deepal Jayasinghe <de...@opensource.lk>.
Hi Rajith ;
> Deepal,
>
> Same here, nick and I suggested a way to denote wether the POJO is an
> Axis2 endpoint ot a JAX-WS endpoint.
Hmm , no I am not using any JAX-WS endpoint when you deploy a POJO . It
will work as you deploy a java class with RPC MR.
> Nick can u point to the wiki page?
> Also we had some suggestions on axis2 specific annotations to
> suplement the features that would have been there if the services.xml
> is used.
I also like to support Axis2 specific annotation and I really do not
want to have services.xml when we use POJO (thats a pain and
unnecessary cost).
Thanks
Deepal
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Davanum Srinivas <da...@gmail.com>.
Rajith, Nick,
At this point, All Deepal is doing is call the jaxws/metadata layer to
construct the AxisService. He had trouble with the annotation info not
showing up in the auto constructed wsdl and he added some JAM based
code for that. So...See my other email in this thread on how to
delegate that work to the jaxws/metadata layer as well. So that
SchemaGenerator is not peppered with jam/annotations code. Everything
that is needed should be in the AxisService hierarchy. Please see the
pojo deployer code for more info.
thanks,
dims
On 2/22/07, Rajith Attapattu <ra...@gmail.com> wrote:
> Deepal,
>
> Same here, nick and I suggested a way to denote wether the POJO is an Axis2
> endpoint ot a JAX-WS endpoint.
> Nick can u point to the wiki page?
> Also we had some suggestions on axis2 specific annotations to suplement the
> features that would have been there if the services.xml is used.
> For example, service level parameters, engaging modules at service or
> operation level ..etc.
>
> Rajith
>
>
> On 2/22/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
> > Deepal,
> >
> > I haven't had a chance to look at the code, but is there any distinction
> > made between Axis2 endpoints and JAX-WS endpoints in the POJODeployer?
> >
> > I'll try to take a look at this later on this afternoon.
> >
> > Regards,
> >
> > Nicholas Gallardo
> > WebSphere - WebServices Development
> > nlgallar@us.ibm.com
> > Phone: 512-838-1182
> > Building: 901 / 5G-016
> >
> >
> >
> > Deepal Jayasinghe < deepal@opensource.lk>
> > 02/22/2007 02:11 AM
> > Please respond to
> > axis-dev@ws.apache.org
> >
> >
> > To
> > " axis-dev@ws.apache.org" <ax...@ws.apache.org>
> > cc
> >
> > Subject
> > [Axis2] POJO annotation
> >
> >
> >
> >
> >
> >
> > Hi all;
> >
> > As I mentioned before last few days I was working on POJO annotation
> > support and there I was thinking to use matadata and jaxws module to
> > have this feature. When I start implementing annotation support I found
> > that the created AxisService from metadata module does not have any
> > operation in it (though I have annotated the service impl class
> > correctly).
> >
> > In the meantime I had a big issue in Java2WSDL support when annotation
> > present in the POJO , the only option was to re-write or duplicate
> > ScheamGenerator logic. And I realized that going to be a big code change
> > so what I did was, use JAM (annogen) to have annotation support in
> > SchemaGenerator.
> >
> > With the above I have implemented pojo annotation support in axis2. So I
> > have written a Deployer called POJODeployer and you can deploy POJO as
> > .class file and it will make that to an AxisService and will generate
> > correct schema (so you will see the correct wsdl at the runtime).
> >
> > If the WebService has wsdllocation annotation then it will call metadata
> > module to create AxisService (this path has few TODO items)
> >
> > please comment on my implementation , and I will commit the code you can
> > go though that and find out if I have done something wrong.
> >
> > P.S:- Implementation is not completed yet need few more items to complete.
> >
> > Thanks
> > Deepal
> >
> >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> axis-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-dev-help@ws.apache.org
> >
> >
> >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> axis-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-dev-help@ws.apache.org
> >
> >
>
>
--
Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Rajith Attapattu <ra...@gmail.com>.
Deepal,
Same here, nick and I suggested a way to denote wether the POJO is an Axis2
endpoint ot a JAX-WS endpoint.
Nick can u point to the wiki page?
Also we had some suggestions on axis2 specific annotations to suplement the
features that would have been there if the services.xml is used.
For example, service level parameters, engaging modules at service or
operation level ..etc.
Rajith
On 2/22/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
>
> Deepal,
>
> I haven't had a chance to look at the code, but is there any distinction
> made between Axis2 endpoints and JAX-WS endpoints in the POJODeployer?
>
> I'll try to take a look at this later on this afternoon.
>
> Regards,
>
> Nicholas Gallardo
> WebSphere - WebServices Development
> nlgallar@us.ibm.com
> Phone: 512-838-1182
> Building: 901 / 5G-016
>
>
>
> Deepal Jayasinghe <de...@opensource.lk>
> 02/22/2007 02:11 AM
> Please respond to
> axis-dev@ws.apache.org
>
>
> To
> "axis-dev@ws.apache.org" <ax...@ws.apache.org>
> cc
>
> Subject
> [Axis2] POJO annotation
>
>
>
>
>
>
> Hi all;
>
> As I mentioned before last few days I was working on POJO annotation
> support and there I was thinking to use matadata and jaxws module to
> have this feature. When I start implementing annotation support I found
> that the created AxisService from metadata module does not have any
> operation in it (though I have annotated the service impl class
> correctly).
>
> In the meantime I had a big issue in Java2WSDL support when annotation
> present in the POJO , the only option was to re-write or duplicate
> ScheamGenerator logic. And I realized that going to be a big code change
> so what I did was, use JAM (annogen) to have annotation support in
> SchemaGenerator.
>
> With the above I have implemented pojo annotation support in axis2. So I
> have written a Deployer called POJODeployer and you can deploy POJO as
> .class file and it will make that to an AxisService and will generate
> correct schema (so you will see the correct wsdl at the runtime).
>
> If the WebService has wsdllocation annotation then it will call metadata
> module to create AxisService (this path has few TODO items)
>
> please comment on my implementation , and I will commit the code you can
> go though that and find out if I have done something wrong.
>
> P.S:- Implementation is not completed yet need few more items to complete.
>
> Thanks
> Deepal
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
Re: [Axis2] POJO annotation
Posted by Jeff Barrett <ba...@us.ibm.com>.
Hi Deepal,
You may not have seen it yet, but I replied yesterday to your note on not
getting the AxisOperations when you used the metadata layer. I believe
that had to do with which DescriptionFactory method you were using. I'm
just about to commit updates to the javadoc in that class and tagging the
method you were using as deprecated. Sorry the javadoc wasn't better in
there to begin with!
The metadata module will build up the full AxisService description
hierachy given just annotations (no WSDL), or annotations and WSDL.
Currently the metadata layer does NOT generate the correct schema if
there's no WSDL; that is something it should probably do.
Other than that, if the POJODeployer were to create a
DescriptionBuilderComposite (using the JavaReflection to DBC converter in
the metadata package, at least for now), it should be able to use the
metadata layer for both the WSDL-provided and no-WSDL-provided/annotations
only case.
Thanks,
Jeff
IBM Software Group - WebSphere Web Services Development
Phone: 512-838-4587 or Tie Line 678-4587
Internet e-mail and Sametime ID: barrettj@us.ibm.com
Deepal Jayasinghe <de...@opensource.lk>
02/22/2007 02:11 AM
Please respond to
axis-dev@ws.apache.org
To
"axis-dev@ws.apache.org" <ax...@ws.apache.org>
cc
Subject
[Axis2] POJO annotation
Hi all;
As I mentioned before last few days I was working on POJO annotation
support and there I was thinking to use matadata and jaxws module to
have this feature. When I start implementing annotation support I found
that the created AxisService from metadata module does not have any
operation in it (though I have annotated the service impl class
correctly).
In the meantime I had a big issue in Java2WSDL support when annotation
present in the POJO , the only option was to re-write or duplicate
ScheamGenerator logic. And I realized that going to be a big code change
so what I did was, use JAM (annogen) to have annotation support in
SchemaGenerator.
With the above I have implemented pojo annotation support in axis2. So I
have written a Deployer called POJODeployer and you can deploy POJO as
.class file and it will make that to an AxisService and will generate
correct schema (so you will see the correct wsdl at the runtime).
If the WebService has wsdllocation annotation then it will call metadata
module to create AxisService (this path has few TODO items)
please comment on my implementation , and I will commit the code you can
go though that and find out if I have done something wrong.
P.S:- Implementation is not completed yet need few more items to complete.
Thanks
Deepal
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [Axis2] POJO annotation
Posted by Nicholas L Gallardo <nl...@us.ibm.com>.
Deepal,
I haven't had a chance to look at the code, but is there any distinction
made between Axis2 endpoints and JAX-WS endpoints in the POJODeployer?
I'll try to take a look at this later on this afternoon.
Regards,
Nicholas Gallardo
WebSphere - WebServices Development
nlgallar@us.ibm.com
Phone: 512-838-1182
Building: 901 / 5G-016
Deepal Jayasinghe <de...@opensource.lk>
02/22/2007 02:11 AM
Please respond to
axis-dev@ws.apache.org
To
"axis-dev@ws.apache.org" <ax...@ws.apache.org>
cc
Subject
[Axis2] POJO annotation
Hi all;
As I mentioned before last few days I was working on POJO annotation
support and there I was thinking to use matadata and jaxws module to
have this feature. When I start implementing annotation support I found
that the created AxisService from metadata module does not have any
operation in it (though I have annotated the service impl class
correctly).
In the meantime I had a big issue in Java2WSDL support when annotation
present in the POJO , the only option was to re-write or duplicate
ScheamGenerator logic. And I realized that going to be a big code change
so what I did was, use JAM (annogen) to have annotation support in
SchemaGenerator.
With the above I have implemented pojo annotation support in axis2. So I
have written a Deployer called POJODeployer and you can deploy POJO as
.class file and it will make that to an AxisService and will generate
correct schema (so you will see the correct wsdl at the runtime).
If the WebService has wsdllocation annotation then it will call metadata
module to create AxisService (this path has few TODO items)
please comment on my implementation , and I will commit the code you can
go though that and find out if I have done something wrong.
P.S:- Implementation is not completed yet need few more items to complete.
Thanks
Deepal
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org