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