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 Davanum Srinivas <da...@gmail.com> on 2007/02/17 22:39:26 UTC
[Axis2] AXIS2-2155 - Re: JAXWSMessageReciever Marshaller Problem
Rich, Nick,
Any idea if we can fix this for 1.2 release?
thanks,
dims
On 2/9/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
>
> Dims,
>
> By "the other SOAP engine", I'm assuming that's CXF?
>
> Our usage of JAXB right now is dependent upon root elements. By that, I mean that the wrapper bean that's defined as the root element in the schema. These generated classes carry some additional annotations that allow us to unmarshall them easily with JAXB.
>
> I discussed this with Rich and he had some ideas about ways we could possibly get around this. It will have to be a lower severity item though as we're working through some functional scenarios. I've opened a JIRA issue to track this.
>
> https://issues.apache.org/jira/browse/AXIS2-2155
>
> Regards,
>
> Nicholas Gallardo
> WebSphere - WebServices Development
> nlgallar@us.ibm.com
> Phone: 512-838-1182
> Building: 901 / 5G-016
>
>
>
> "Davanum Srinivas" <da...@gmail.com>
>
> 02/09/2007 10:54 AM
>
> Please respond to
> axis-dev@ws.apache.org
>
>
> To axis-dev@ws.apache.org
>
> cc
>
>
> Subject Re: JAXWSMessageReciever Marshaller Problem
>
>
>
>
>
>
>
>
> Nick,
>
> The other soap engine inside Geronimo seems to work w/o needing the
> wrapper classes. Anything we can do to get ours working too? w/o
> having to run the xjc command with "-wsdl"? Is this planned, or out of
> scope?
>
> thanks,
> dims
>
> On 2/9/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
> >
> > Hi Lasantha,
> >
> > Sorry for the late response here. You have correctly identified the missing piece though. For services that are considered doc/lit wrapped (the default for JAX-WS), it is required that the wrapper beans be generated. You can get these by running the JAXB generation tool with the "-wsdl" flag I believe. The JAX-WS runtime in Axis2 will not generate these on the fly, but needs these classes to be able to marshall/unmarshall the messages.
> >
> > Beyond that though, you don't need to include the @RequestWrapper or @ResponseWrapper annotations if the generated class names follow the defaults:
> >
> > - package name is the same as the SEI
> > - class names are OperationName and OperationNameResponse with the appropriate camel casing.
> >
> > Hope that helps...
> >
> > Regards,
> >
> > Nicholas Gallardo
> > WebSphere - WebServices Development
> > nlgallar@us.ibm.com
> > Phone: 512-838-1182
> > Building: 901 / 5G-016
> >
> >
> >
> > "Lasantha Ranaweera" <la...@opensource.lk>
> >
> > 02/05/2007 09:54 AM
> >
> >
> > Please respond to
> > axis-dev@ws.apache.org
> >
> >
> > To axis-dev@ws.apache.org
> >
> > cc
> >
> >
> > Subject RE: JAXWSMessageReciever Marshaller Problem
> >
> >
> >
> >
> >
> >
> >
> >
> > Hi Nick,
> >
> > Thank you very much for the giving some insight.
> >
> > Say for example if are having Doc/Lit service with @ResponsWrapper &
> > @RequestWrapper annotations, will the Axis2 generate intermediate classes
> > for the JAXB binding automatically? Otherwise do we need to some how
> > generate it & add it in to the archive?
> >
> > First we are working on an example which has a WSDL and creating
> > annotations by hand using it's relevant composites.
> >
> > Please find the attached WSDL, endpoint & endpoint impl class.
> >
> > Any help would be greately appriciated.
> >
> > Thanks,
> > Lasantha Ranaweera
> > > Lin,
> > >
> > > JAXB objects are not always required. You could be using simple types
> > > that map base Java types like String, int, boolean, etc. But, in all
> > > cases, we will use JAX-WS as a means to marshall/unmarshall data types.
> > >
> > > The exception you're seeing usually happens when the JAXBContext that is
> > > used to unmarshall the message is not configured correctly. The two
> > > messages that you see from JAXBUtils could be an indication of the problem
> > > depending on what pattern your service is following (wrapped vs. bare).
> > > I'm guessing wrapped since it went down into the
> > > DocLitWrappedMethodMarshaller.
> > >
> > > Overall, we need one of two things to be able to configure the JAXBContext
> > > correctly and unmarshall the incoming request.
> > >
> > > a) If it's wrapped, then you need to have an @RequestWrapper and
> > > @ResponseWrapper annotation on your operation. That can be used by JAXB
> > > to pick-up the wrapper classes that are defined for that operation.
> > >
> > > b) If it's not wrapped, then you will need to have an ObjectFactory. The
> > > ObjectFactory can be used by the JAXBContext under the covers to figure
> > > out how to unmarshall elements that don't have custom types defined.
> > > Without this though, the unmarhaller wont' work.
> > >
> > > Can you post an example of the endpoint that you're trying to deploy and
> > > what annotations it has on it? Is this endpoint being deployed with or
> > > without a WSDL?
> > >
> > > Regards,
> > >
> > > Nicholas Gallardo
> > > WebSphere - WebServices Development
> > > nlgallar@us.ibm.com
> > > Phone: 512-838-1182
> > > Building: 901 / 5G-016
> > >
> > >
> > >
> > > "Lin Sun" <li...@gmail.com>
> > > 02/04/2007 09:50 PM
> > > Please respond to
> > > axis-dev@ws.apache.org
> > >
> > >
> > > To
> > > <ax...@ws.apache.org>
> > > cc
> > >
> > > Subject
> > > RE: JAXWSMessageReciever Marshaller Problem
> > >
> > >
> > >
> > >
> > >
> > >
> > > Hi there,
> > >
> > > A basic question, are jaxb objects required in a simple hello jax-ws
> > > application? I think I am running the same test as Lasantha and this
> > > test
> > > doesn't have any jaxb generated classes in the war file. Axis2 did choose
> > > to use DocLitWrappedMethodMarshaller to do the marshaller work and the
> > > following exception was thrown when message.getBodyBlock(0, blockContext,
> > > factory) is called.
> > >
> > > javax.xml.bind.UnmarshalException
> > > - with linked exception:
> > > [javax.xml.bind.UnmarshalException: unexpected element
> > > (uri:"http://apache.org/hello_world_soap_http", local:"greetMe"). Expected
> > > elements are (none)]
> > >
> > > I also saw
> > >
> > > 21:50:34,781 INFO [JAXBUtils] ObjectFactory Class Not Found
> > > 21:50:34,828 INFO [JAXBUtils] package-info Class Not Found
> > >
> > > in my console log, which seems to indicate that axis2 requires the
> > > existence
> > > of the ObjectFactory Class and package-info Class (part of jaxb generated
> > > classes) in the test application?
> > >
> > > This same jax-ws test works with CXF integration into Geronimo so I
> > > thought
> > > it would be okay to not have jaxb objects in the application archive.
> > > However, missing it seems to cause the UnmarshalException.
> > >
> > > Any help is appreciated.
> > >
> > > Lin
> > >
> > > -----Original Message-----
> > > From: Lasantha Ranaweera [mailto:lasantha@opensource.lk]
> > > Sent: Wednesday, January 31, 2007 1:33 AM
> > > To: axis-dev@ws.apache.org
> > > Subject: Re: JAXWSMessageReciever Marshaller Problem
> > >
> > > Hi Nich,
> > >
> > > Thank you very much for the information. I have uploaded latest patch
> > > (number 2) to the Geronimo list under GERONIMO-2776.
> > >
> > > I am basically trying to read a WSDL and create JAXWS service by hand
> > > filling necessary composites for situations where class level
> > > annotations are not provided.
> > >
> > > After some debugging sessions understand this is due to the missing JAXB
> > > objects in my application archive. It would be ideal if you can explain
> > > me how the JAXB bindings work for the JAXWS in the Axis2 side. :-)
> > >
> > > Also is there any publicly available articles to refer JAXWS stuff on
> > > the Axis2?
> > >
> > > Thanks Again,
> > > Lasantha
> > >
> > > Nicholas L Gallardo wrote:
> > >>
> > >> Hi Lasantha,
> > >>
> > >> Sorry for the delayed response here.
> > >>
> > >> I think I need to understand how you're deploying/configuring the
> > >> endpoint before I can provide guidance on what's going on here. I
> > >> know we've already started the Geronimo integration, but I think some
> > >> of that is going to (or should probably) rely on similar work that
> > >> needs to be done in Axis2. Do you have some information or
> > >> architecture that you can share for how this is being done?
> > >>
> > >> As far as this situation, the unmarshalling is going to be predicated
> > >> on what style of WSDL you have. If you've just annotated a POJO and
> > >> then deployed that, the default WSDL mapping is to a Document/Literal
> > >> Wrapped style WSDL. You can use the SOAPBinding annotation as you've
> > >> already seen to toggle between a Document and RPC style. Only
> > >> "literal" use is supported. JAX-WS does not support RPC/Encoded style
> > >> WSDLs.
> > >>
> > >> At a high level what will happen is, after the request comes in to the
> > >> JAXWSMessageReceiver, a decision will be made as to what
> > >> MethodMarshaller needs to be loaded. This decision is based on the
> > >> information in the EndpointDescription/OperationDescription. Each of
> > >> those objects is a view of the WSDL and annotation information
> > >> available for an endpoint/operation. If those are not configured
> > >> correctly, then you won't have the right MethodMarshaller.
> > >>
> > >> Is the scenario that you have intended to truly be based on an "RPC"
> > >> style WSDL (as opposed to a "Document" style)? I'm assuming that the
> > >> RPC in the RPCMessageReceiver is referring more to the fact that it's
> > >> for services that are based on an interaction that people would
> > >> consider RPC over a messaging style interaction. Is that correct?
> > >>
> > >> Regards,
> > >>
> > >> Nicholas Gallardo
> > >> WebSphere - WebServices Development
> > >> nlgallar@us.ibm.com
> > >> Phone: 512-838-1182
> > >> Building: 901 / 5G-016
> > >>
> > >>
> > >> *"Lasantha Ranaweera" <la...@opensource.lk>*
> > >>
> > >> 01/26/2007 11:09 PM
> > >> Please respond to
> > >> axis-dev@ws.apache.org
> > >>
> > >>
> > >>
> > >> To
> > >> axis-dev@ws.apache.org
> > >> cc
> > >> dims@wso2.com
> > >> Subject
> > >> JAXWSMessageReciever Marshaller Problem
> > >>
> > >>
> > >>
> > >>
> > >>
> > >>
> > >>
> > >>
> > >>
> > >> Hi,
> > >>
> > >> This is a problem arised in the Geronimo Axis2 integration with
> > >> JAXWSMessageReciever.
> > >>
> > >> I created an AxisService with a JAXWSMessageReciever as it's message
> > >> reciever and trying to invoke the service using
> > >> HTTPTransportUtils.processHTTPPostRequest() method. We are sending a RPC
> > >> based SOAPRequest to the service invocation.
> > >>
> > >> The JAXWSMessageReciever then creates Marshaller for the unmarshall
> > >> requests. This marshaller creation is entirely depends on the
> > >> EndpointInterfaceDescriptionImpl SOAPBinding style. By default it
> > > creates
> > >> a DocLiteralMarashaller and tries to unmarshall my RPC based request and
> > >> get failed with UnmarshallException :(. When I change the default
> > >> SOAPBinding style in EndpointInterfaceDescriptionImpl to RPC it works
> > > fine
> > >> (sure it's not the way to do it). Is this is the correct behaviour of
> > >> Marshal creation of JAXWSMessageReciever? Shouldn't it be depends on
> > >> SOAPMessage messaging mode too?
> > >>
> > >> BTW I have created a JIRA (AXIS2-2044) patch to remove some of the
> > >> misleading information gives in the Axis2 integrating it with Geronimo.
> > >>
> > >> Thanks,
> > >> Lasantha Ranaweera
> > >>
> > >> ---------------------------------------------------------------------
> > >> 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
> > >
> > >
> > > ---------------------------------------------------------------------
> > > 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
> > --=_alternative 005A88328625727D_=--
> > ---------------------------------------------------------------------
> > 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] AXIS2-2155 - Re: JAXWSMessageReciever Marshaller Problem
Posted by R J Scheuerle Jr <sc...@us.ibm.com>.
Nick and I have discussed ways to architect the code to meet this
requirement.
I am going to investigate an initial solution and will report back at the
end of this week with my findings.
I will also change the JIRA over to me.
---------------
Note I have some reservations about supporting this requirement, but I
agree that providing some minimal support may be necessary.
Rich Scheuerle
IBM Web Services
Apache Axis2 (scheu@apache.org)
512-838-5115 (IBM TL 678-5115)
"Davanum Srinivas" <da...@gmail.com> wrote on 02/19/2007 08:23:46 AM:
> Till we cut RC1 :) say end of the month?
>
> thanks,
> dims
>
> On 2/19/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
> > Hi Dims,
> >
> > I'd actually started on it last week, but didn't make as much progress
as
> > I'd hoped.
> >
> > When is the freeze date for the 1.2 release?
> >
> > Thanks,
> >
> > Nicholas Gallardo
> > WebSphere - WebServices Development
> > nlgallar@us.ibm.com
> > Phone: 512-838-1182
> > Building: 901 / 5G-016
> >
> >
> >
> > "Davanum Srinivas" <da...@gmail.com>
> > 02/17/2007 03:39 PM
> > Please respond to
> > axis-dev@ws.apache.org
> >
> >
> > To
> > axis-dev@ws.apache.org
> > cc
> >
> > Subject
> > [Axis2] AXIS2-2155 - Re: JAXWSMessageReciever Marshaller Problem
> >
> >
> >
> >
> >
> >
> > Rich, Nick,
> >
> > Any idea if we can fix this for 1.2 release?
> >
> > thanks,
> > dims
> >
> > On 2/9/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
> > >
> > > Dims,
> > >
> > > By "the other SOAP engine", I'm assuming that's CXF?
> > >
> > > Our usage of JAXB right now is dependent upon root elements. By
that, I
> > mean that the wrapper bean that's defined as the root element in the
> > schema. These generated classes carry some additional annotations that
> > allow us to unmarshall them easily with JAXB.
> > >
> > > I discussed this with Rich and he had some ideas about ways we could
> > possibly get around this. It will have to be a lower severity item
though
> > as we're working through some functional scenarios. I've opened a JIRA
> > issue to track this.
> > >
> > > https://issues.apache.org/jira/browse/AXIS2-2155
> > >
> > > Regards,
> > >
> > > Nicholas Gallardo
> > > WebSphere - WebServices Development
> > > nlgallar@us.ibm.com
> > > Phone: 512-838-1182
> > > Building: 901 / 5G-016
> > >
> > >
> > >
> > > "Davanum Srinivas" <da...@gmail.com>
> > >
> > > 02/09/2007 10:54 AM
> > >
> > > Please respond to
> > > axis-dev@ws.apache.org
> > >
> > >
> > > To axis-dev@ws.apache.org
> > >
> > > cc
> > >
> > >
> > > Subject Re: JAXWSMessageReciever Marshaller Problem
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > Nick,
> > >
> > > The other soap engine inside Geronimo seems to work w/o needing the
> > > wrapper classes. Anything we can do to get ours working too? w/o
> > > having to run the xjc command with "-wsdl"? Is this planned, or out
of
> > > scope?
> > >
> > > thanks,
> > > dims
> > >
> > > On 2/9/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
> > > >
> > > > Hi Lasantha,
> > > >
> > > > Sorry for the late response here. You have correctly identified
the
> > missing piece though. For services that are considered doc/lit wrapped
> > (the default for JAX-WS), it is required that the wrapper beans be
> > generated. You can get these by running the JAXB generation tool with
the
> > "-wsdl" flag I believe. The JAX-WS runtime in Axis2 will not generate
> > these on the fly, but needs these classes to be able to
> > marshall/unmarshall the messages.
> > > >
> > > > Beyond that though, you don't need to include the @RequestWrapper
or
> > @ResponseWrapper annotations if the generated class names follow the
> > defaults:
> > > >
> > > > - package name is the same as the SEI
> > > > - class names are OperationName and OperationNameResponse
with
> > the appropriate camel casing.
> > > >
> > > > Hope that helps...
> > > >
> > > > Regards,
> > > >
> > > > Nicholas Gallardo
> > > > WebSphere - WebServices Development
> > > > nlgallar@us.ibm.com
> > > > Phone: 512-838-1182
> > > > Building: 901 / 5G-016
> > > >
> > > >
> > > >
> > > > "Lasantha Ranaweera" <la...@opensource.lk>
> > > >
> > > > 02/05/2007 09:54 AM
> > > >
> > > >
> > > > Please respond to
> > > > axis-dev@ws.apache.org
> > > >
> > > >
> > > > To axis-dev@ws.apache.org
> > > >
> > > > cc
> > > >
> > > >
> > > > Subject RE: JAXWSMessageReciever Marshaller Problem
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > Hi Nick,
> > > >
> > > > Thank you very much for the giving some insight.
> > > >
> > > > Say for example if are having Doc/Lit service with
@ResponsWrapper &
> > > > @RequestWrapper annotations, will the Axis2 generate intermediate
> > classes
> > > > for the JAXB binding automatically? Otherwise do we need to some
how
> > > > generate it & add it in to the archive?
> > > >
> > > > First we are working on an example which has a WSDL and creating
> > > > annotations by hand using it's relevant composites.
> > > >
> > > > Please find the attached WSDL, endpoint & endpoint impl class.
> > > >
> > > > Any help would be greately appriciated.
> > > >
> > > > Thanks,
> > > > Lasantha Ranaweera
> > > > > Lin,
> > > > >
> > > > > JAXB objects are not always required. You could be using
simple
> > types
> > > > > that map base Java types like String, int, boolean, etc. But,
in
> > all
> > > > > cases, we will use JAX-WS as a means to marshall/unmarshall
data
> > types.
> > > > >
> > > > > The exception you're seeing usually happens when the
JAXBContext
> > that is
> > > > > used to unmarshall the message is not configured correctly.
The
> > two
> > > > > messages that you see from JAXBUtils could be an indication of
the
> > problem
> > > > > depending on what pattern your service is following (wrapped
vs.
> > bare).
> > > > > I'm guessing wrapped since it went down into the
> > > > > DocLitWrappedMethodMarshaller.
> > > > >
> > > > > Overall, we need one of two things to be able to configure the
> > JAXBContext
> > > > > correctly and unmarshall the incoming request.
> > > > >
> > > > > a) If it's wrapped, then you need to have an @RequestWrapper
and
> > > > > @ResponseWrapper annotation on your operation. That can be
used
> > by JAXB
> > > > > to pick-up the wrapper classes that are defined for that
> > operation.
> > > > >
> > > > > b) If it's not wrapped, then you will need to have an
> > ObjectFactory. The
> > > > > ObjectFactory can be used by the JAXBContext under the covers
to
> > figure
> > > > > out how to unmarshall elements that don't have custom types
> > defined.
> > > > > Without this though, the unmarhaller wont' work.
> > > > >
> > > > > Can you post an example of the endpoint that you're trying to
> > deploy and
> > > > > what annotations it has on it? Is this endpoint being deployed
> > with or
> > > > > without a WSDL?
> > > > >
> > > > > Regards,
> > > > >
> > > > > Nicholas Gallardo
> > > > > WebSphere - WebServices Development
> > > > > nlgallar@us.ibm.com
> > > > > Phone: 512-838-1182
> > > > > Building: 901 / 5G-016
> > > > >
> > > > >
> > > > >
> > > > > "Lin Sun" <li...@gmail.com>
> > > > > 02/04/2007 09:50 PM
> > > > > Please respond to
> > > > > axis-dev@ws.apache.org
> > > > >
> > > > >
> > > > > To
> > > > > <ax...@ws.apache.org>
> > > > > cc
> > > > >
> > > > > Subject
> > > > > RE: JAXWSMessageReciever Marshaller Problem
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > Hi there,
> > > > >
> > > > > A basic question, are jaxb objects required in a simple hello
> > jax-ws
> > > > > application? I think I am running the same test as Lasantha
and
> > this
> > > > > test
> > > > > doesn't have any jaxb generated classes in the war file. Axis2
> > did choose
> > > > > to use DocLitWrappedMethodMarshaller to do the marshaller work
and
> > the
> > > > > following exception was thrown when message.getBodyBlock(0,
> > blockContext,
> > > > > factory) is called.
> > > > >
> > > > > javax.xml.bind.UnmarshalException
> > > > > - with linked exception:
> > > > > [javax.xml.bind.UnmarshalException: unexpected element
> > > > > (uri:"http://apache.org/hello_world_soap_http",
local:"greetMe").
> > Expected
> > > > > elements are (none)]
> > > > >
> > > > > I also saw
> > > > >
> > > > > 21:50:34,781 INFO [JAXBUtils] ObjectFactory Class Not Found
> > > > > 21:50:34,828 INFO [JAXBUtils] package-info Class Not Found
> > > > >
> > > > > in my console log, which seems to indicate that axis2 requires
the
> > > > > existence
> > > > > of the ObjectFactory Class and package-info Class (part of jaxb
> > generated
> > > > > classes) in the test application?
> > > > >
> > > > > This same jax-ws test works with CXF integration into Geronimo
so
> > I
> > > > > thought
> > > > > it would be okay to not have jaxb objects in the application
> > archive.
> > > > > However, missing it seems to cause the UnmarshalException.
> > > > >
> > > > > Any help is appreciated.
> > > > >
> > > > > Lin
> > > > >
> > > > > -----Original Message-----
> > > > > From: Lasantha Ranaweera [mailto:lasantha@opensource.lk]
> > > > > Sent: Wednesday, January 31, 2007 1:33 AM
> > > > > To: axis-dev@ws.apache.org
> > > > > Subject: Re: JAXWSMessageReciever Marshaller Problem
> > > > >
> > > > > Hi Nich,
> > > > >
> > > > > Thank you very much for the information. I have uploaded latest
> > patch
> > > > > (number 2) to the Geronimo list under GERONIMO-2776.
> > > > >
> > > > > I am basically trying to read a WSDL and create JAXWS service
by
> > hand
> > > > > filling necessary composites for situations where class level
> > > > > annotations are not provided.
> > > > >
> > > > > After some debugging sessions understand this is due to the
> > missing JAXB
> > > > > objects in my application archive. It would be ideal if you can
> > explain
> > > > > me how the JAXB bindings work for the JAXWS in the Axis2 side.
:-)
> > > > >
> > > > > Also is there any publicly available articles to refer JAXWS
stuff
> > on
> > > > > the Axis2?
> > > > >
> > > > > Thanks Again,
> > > > > Lasantha
> > > > >
> > > > > Nicholas L Gallardo wrote:
> > > > >>
> > > > >> Hi Lasantha,
> > > > >>
> > > > >> Sorry for the delayed response here.
> > > > >>
> > > > >> I think I need to understand how you're deploying/configuring
the
> > > > >> endpoint before I can provide guidance on what's going on
here. I
> > > > >> know we've already started the Geronimo integration, but I
think
> > some
> > > > >> of that is going to (or should probably) rely on similar work
> > that
> > > > >> needs to be done in Axis2. Do you have some information or
> > > > >> architecture that you can share for how this is being done?
> > > > >>
> > > > >> As far as this situation, the unmarshalling is going to be
> > predicated
> > > > >> on what style of WSDL you have. If you've just annotated a
POJO
> > and
> > > > >> then deployed that, the default WSDL mapping is to a
> > Document/Literal
> > > > >> Wrapped style WSDL. You can use the SOAPBinding annotation as
> > you've
> > > > >> already seen to toggle between a Document and RPC style. Only
> > > > >> "literal" use is supported. JAX-WS does not support
RPC/Encoded
> > style
> > > > >> WSDLs.
> > > > >>
> > > > >> At a high level what will happen is, after the request comes
in
> > to the
> > > > >> JAXWSMessageReceiver, a decision will be made as to what
> > > > >> MethodMarshaller needs to be loaded. This decision is based
on
> > the
> > > > >> information in the EndpointDescription/OperationDescription.
Each
> > of
> > > > >> those objects is a view of the WSDL and annotation information
> > > > >> available for an endpoint/operation. If those are not
configured
> > > > >> correctly, then you won't have the right MethodMarshaller.
> > > > >>
> > > > >> Is the scenario that you have intended to truly be based on an
> > "RPC"
> > > > >> style WSDL (as opposed to a "Document" style)? I'm assuming
that
> > the
> > > > >> RPC in the RPCMessageReceiver is referring more to the fact
that
> > it's
> > > > >> for services that are based on an interaction that people
would
> > > > >> consider RPC over a messaging style interaction. Is that
> > correct?
> > > > >>
> > > > >> Regards,
> > > > >>
> > > > >> Nicholas Gallardo
> > > > >> WebSphere - WebServices Development
> > > > >> nlgallar@us.ibm.com
> > > > >> Phone: 512-838-1182
> > > > >> Building: 901 / 5G-016
> > > > >>
> > > > >>
> > > > >> *"Lasantha Ranaweera" <la...@opensource.lk>*
> > > > >>
> > > > >> 01/26/2007 11:09 PM
> > > > >> Please respond to
> > > > >> axis-dev@ws.apache.org
> > > > >>
> > > > >>
> > > > >>
> > > > >> To
> > > > >> axis-dev@ws.apache.org
> > > > >> cc
> > > > >> dims@wso2.com
> > > > >> Subject
> > > > >> JAXWSMessageReciever Marshaller Problem
> > > > >>
> > > > >>
> > > > >>
> > > > >>
> > > > >>
> > > > >>
> > > > >>
> > > > >>
> > > > >>
> > > > >> Hi,
> > > > >>
> > > > >> This is a problem arised in the Geronimo Axis2 integration
with
> > > > >> JAXWSMessageReciever.
> > > > >>
> > > > >> I created an AxisService with a JAXWSMessageReciever as it's
> > message
> > > > >> reciever and trying to invoke the service using
> > > > >> HTTPTransportUtils.processHTTPPostRequest() method. We are
> > sending a RPC
> > > > >> based SOAPRequest to the service invocation.
> > > > >>
> > > > >> The JAXWSMessageReciever then creates Marshaller for the
> > unmarshall
> > > > >> requests. This marshaller creation is entirely depends on the
> > > > >> EndpointInterfaceDescriptionImpl SOAPBinding style. By default
it
> > > > > creates
> > > > >> a DocLiteralMarashaller and tries to unmarshall my RPC based
> > request and
> > > > >> get failed with UnmarshallException :(. When I change the
default
> > > > >> SOAPBinding style in EndpointInterfaceDescriptionImpl to RPC
it
> > works
> > > > > fine
> > > > >> (sure it's not the way to do it). Is this is the correct
> > behaviour of
> > > > >> Marshal creation of JAXWSMessageReciever? Shouldn't it be
depends
> > on
> > > > >> SOAPMessage messaging mode too?
> > > > >>
> > > > >> BTW I have created a JIRA (AXIS2-2044) patch to remove some of
> > the
> > > > >> misleading information gives in the Axis2 integrating it with
> > Geronimo.
> > > > >>
> > > > >> Thanks,
> > > > >> Lasantha Ranaweera
> > > > >>
> > > > >>
> > ---------------------------------------------------------------------
> > > > >> 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
> > > > >
> > > > >
> > > > >
> > ---------------------------------------------------------------------
> > > > > 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
> > > > --=_alternative 005A88328625727D_=--
> > > >
---------------------------------------------------------------------
> > > > 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
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > 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] AXIS2-2155 - Re: JAXWSMessageReciever Marshaller Problem
Posted by Davanum Srinivas <da...@gmail.com>.
Till we cut RC1 :) say end of the month?
thanks,
dims
On 2/19/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
> Hi Dims,
>
> I'd actually started on it last week, but didn't make as much progress as
> I'd hoped.
>
> When is the freeze date for the 1.2 release?
>
> Thanks,
>
> Nicholas Gallardo
> WebSphere - WebServices Development
> nlgallar@us.ibm.com
> Phone: 512-838-1182
> Building: 901 / 5G-016
>
>
>
> "Davanum Srinivas" <da...@gmail.com>
> 02/17/2007 03:39 PM
> Please respond to
> axis-dev@ws.apache.org
>
>
> To
> axis-dev@ws.apache.org
> cc
>
> Subject
> [Axis2] AXIS2-2155 - Re: JAXWSMessageReciever Marshaller Problem
>
>
>
>
>
>
> Rich, Nick,
>
> Any idea if we can fix this for 1.2 release?
>
> thanks,
> dims
>
> On 2/9/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
> >
> > Dims,
> >
> > By "the other SOAP engine", I'm assuming that's CXF?
> >
> > Our usage of JAXB right now is dependent upon root elements. By that, I
> mean that the wrapper bean that's defined as the root element in the
> schema. These generated classes carry some additional annotations that
> allow us to unmarshall them easily with JAXB.
> >
> > I discussed this with Rich and he had some ideas about ways we could
> possibly get around this. It will have to be a lower severity item though
> as we're working through some functional scenarios. I've opened a JIRA
> issue to track this.
> >
> > https://issues.apache.org/jira/browse/AXIS2-2155
> >
> > Regards,
> >
> > Nicholas Gallardo
> > WebSphere - WebServices Development
> > nlgallar@us.ibm.com
> > Phone: 512-838-1182
> > Building: 901 / 5G-016
> >
> >
> >
> > "Davanum Srinivas" <da...@gmail.com>
> >
> > 02/09/2007 10:54 AM
> >
> > Please respond to
> > axis-dev@ws.apache.org
> >
> >
> > To axis-dev@ws.apache.org
> >
> > cc
> >
> >
> > Subject Re: JAXWSMessageReciever Marshaller Problem
> >
> >
> >
> >
> >
> >
> >
> >
> > Nick,
> >
> > The other soap engine inside Geronimo seems to work w/o needing the
> > wrapper classes. Anything we can do to get ours working too? w/o
> > having to run the xjc command with "-wsdl"? Is this planned, or out of
> > scope?
> >
> > thanks,
> > dims
> >
> > On 2/9/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
> > >
> > > Hi Lasantha,
> > >
> > > Sorry for the late response here. You have correctly identified the
> missing piece though. For services that are considered doc/lit wrapped
> (the default for JAX-WS), it is required that the wrapper beans be
> generated. You can get these by running the JAXB generation tool with the
> "-wsdl" flag I believe. The JAX-WS runtime in Axis2 will not generate
> these on the fly, but needs these classes to be able to
> marshall/unmarshall the messages.
> > >
> > > Beyond that though, you don't need to include the @RequestWrapper or
> @ResponseWrapper annotations if the generated class names follow the
> defaults:
> > >
> > > - package name is the same as the SEI
> > > - class names are OperationName and OperationNameResponse with
> the appropriate camel casing.
> > >
> > > Hope that helps...
> > >
> > > Regards,
> > >
> > > Nicholas Gallardo
> > > WebSphere - WebServices Development
> > > nlgallar@us.ibm.com
> > > Phone: 512-838-1182
> > > Building: 901 / 5G-016
> > >
> > >
> > >
> > > "Lasantha Ranaweera" <la...@opensource.lk>
> > >
> > > 02/05/2007 09:54 AM
> > >
> > >
> > > Please respond to
> > > axis-dev@ws.apache.org
> > >
> > >
> > > To axis-dev@ws.apache.org
> > >
> > > cc
> > >
> > >
> > > Subject RE: JAXWSMessageReciever Marshaller Problem
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > Hi Nick,
> > >
> > > Thank you very much for the giving some insight.
> > >
> > > Say for example if are having Doc/Lit service with @ResponsWrapper &
> > > @RequestWrapper annotations, will the Axis2 generate intermediate
> classes
> > > for the JAXB binding automatically? Otherwise do we need to some how
> > > generate it & add it in to the archive?
> > >
> > > First we are working on an example which has a WSDL and creating
> > > annotations by hand using it's relevant composites.
> > >
> > > Please find the attached WSDL, endpoint & endpoint impl class.
> > >
> > > Any help would be greately appriciated.
> > >
> > > Thanks,
> > > Lasantha Ranaweera
> > > > Lin,
> > > >
> > > > JAXB objects are not always required. You could be using simple
> types
> > > > that map base Java types like String, int, boolean, etc. But, in
> all
> > > > cases, we will use JAX-WS as a means to marshall/unmarshall data
> types.
> > > >
> > > > The exception you're seeing usually happens when the JAXBContext
> that is
> > > > used to unmarshall the message is not configured correctly. The
> two
> > > > messages that you see from JAXBUtils could be an indication of the
> problem
> > > > depending on what pattern your service is following (wrapped vs.
> bare).
> > > > I'm guessing wrapped since it went down into the
> > > > DocLitWrappedMethodMarshaller.
> > > >
> > > > Overall, we need one of two things to be able to configure the
> JAXBContext
> > > > correctly and unmarshall the incoming request.
> > > >
> > > > a) If it's wrapped, then you need to have an @RequestWrapper and
> > > > @ResponseWrapper annotation on your operation. That can be used
> by JAXB
> > > > to pick-up the wrapper classes that are defined for that
> operation.
> > > >
> > > > b) If it's not wrapped, then you will need to have an
> ObjectFactory. The
> > > > ObjectFactory can be used by the JAXBContext under the covers to
> figure
> > > > out how to unmarshall elements that don't have custom types
> defined.
> > > > Without this though, the unmarhaller wont' work.
> > > >
> > > > Can you post an example of the endpoint that you're trying to
> deploy and
> > > > what annotations it has on it? Is this endpoint being deployed
> with or
> > > > without a WSDL?
> > > >
> > > > Regards,
> > > >
> > > > Nicholas Gallardo
> > > > WebSphere - WebServices Development
> > > > nlgallar@us.ibm.com
> > > > Phone: 512-838-1182
> > > > Building: 901 / 5G-016
> > > >
> > > >
> > > >
> > > > "Lin Sun" <li...@gmail.com>
> > > > 02/04/2007 09:50 PM
> > > > Please respond to
> > > > axis-dev@ws.apache.org
> > > >
> > > >
> > > > To
> > > > <ax...@ws.apache.org>
> > > > cc
> > > >
> > > > Subject
> > > > RE: JAXWSMessageReciever Marshaller Problem
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > Hi there,
> > > >
> > > > A basic question, are jaxb objects required in a simple hello
> jax-ws
> > > > application? I think I am running the same test as Lasantha and
> this
> > > > test
> > > > doesn't have any jaxb generated classes in the war file. Axis2
> did choose
> > > > to use DocLitWrappedMethodMarshaller to do the marshaller work and
> the
> > > > following exception was thrown when message.getBodyBlock(0,
> blockContext,
> > > > factory) is called.
> > > >
> > > > javax.xml.bind.UnmarshalException
> > > > - with linked exception:
> > > > [javax.xml.bind.UnmarshalException: unexpected element
> > > > (uri:"http://apache.org/hello_world_soap_http", local:"greetMe").
> Expected
> > > > elements are (none)]
> > > >
> > > > I also saw
> > > >
> > > > 21:50:34,781 INFO [JAXBUtils] ObjectFactory Class Not Found
> > > > 21:50:34,828 INFO [JAXBUtils] package-info Class Not Found
> > > >
> > > > in my console log, which seems to indicate that axis2 requires the
> > > > existence
> > > > of the ObjectFactory Class and package-info Class (part of jaxb
> generated
> > > > classes) in the test application?
> > > >
> > > > This same jax-ws test works with CXF integration into Geronimo so
> I
> > > > thought
> > > > it would be okay to not have jaxb objects in the application
> archive.
> > > > However, missing it seems to cause the UnmarshalException.
> > > >
> > > > Any help is appreciated.
> > > >
> > > > Lin
> > > >
> > > > -----Original Message-----
> > > > From: Lasantha Ranaweera [mailto:lasantha@opensource.lk]
> > > > Sent: Wednesday, January 31, 2007 1:33 AM
> > > > To: axis-dev@ws.apache.org
> > > > Subject: Re: JAXWSMessageReciever Marshaller Problem
> > > >
> > > > Hi Nich,
> > > >
> > > > Thank you very much for the information. I have uploaded latest
> patch
> > > > (number 2) to the Geronimo list under GERONIMO-2776.
> > > >
> > > > I am basically trying to read a WSDL and create JAXWS service by
> hand
> > > > filling necessary composites for situations where class level
> > > > annotations are not provided.
> > > >
> > > > After some debugging sessions understand this is due to the
> missing JAXB
> > > > objects in my application archive. It would be ideal if you can
> explain
> > > > me how the JAXB bindings work for the JAXWS in the Axis2 side. :-)
> > > >
> > > > Also is there any publicly available articles to refer JAXWS stuff
> on
> > > > the Axis2?
> > > >
> > > > Thanks Again,
> > > > Lasantha
> > > >
> > > > Nicholas L Gallardo wrote:
> > > >>
> > > >> Hi Lasantha,
> > > >>
> > > >> Sorry for the delayed response here.
> > > >>
> > > >> I think I need to understand how you're deploying/configuring the
> > > >> endpoint before I can provide guidance on what's going on here. I
> > > >> know we've already started the Geronimo integration, but I think
> some
> > > >> of that is going to (or should probably) rely on similar work
> that
> > > >> needs to be done in Axis2. Do you have some information or
> > > >> architecture that you can share for how this is being done?
> > > >>
> > > >> As far as this situation, the unmarshalling is going to be
> predicated
> > > >> on what style of WSDL you have. If you've just annotated a POJO
> and
> > > >> then deployed that, the default WSDL mapping is to a
> Document/Literal
> > > >> Wrapped style WSDL. You can use the SOAPBinding annotation as
> you've
> > > >> already seen to toggle between a Document and RPC style. Only
> > > >> "literal" use is supported. JAX-WS does not support RPC/Encoded
> style
> > > >> WSDLs.
> > > >>
> > > >> At a high level what will happen is, after the request comes in
> to the
> > > >> JAXWSMessageReceiver, a decision will be made as to what
> > > >> MethodMarshaller needs to be loaded. This decision is based on
> the
> > > >> information in the EndpointDescription/OperationDescription. Each
> of
> > > >> those objects is a view of the WSDL and annotation information
> > > >> available for an endpoint/operation. If those are not configured
> > > >> correctly, then you won't have the right MethodMarshaller.
> > > >>
> > > >> Is the scenario that you have intended to truly be based on an
> "RPC"
> > > >> style WSDL (as opposed to a "Document" style)? I'm assuming that
> the
> > > >> RPC in the RPCMessageReceiver is referring more to the fact that
> it's
> > > >> for services that are based on an interaction that people would
> > > >> consider RPC over a messaging style interaction. Is that
> correct?
> > > >>
> > > >> Regards,
> > > >>
> > > >> Nicholas Gallardo
> > > >> WebSphere - WebServices Development
> > > >> nlgallar@us.ibm.com
> > > >> Phone: 512-838-1182
> > > >> Building: 901 / 5G-016
> > > >>
> > > >>
> > > >> *"Lasantha Ranaweera" <la...@opensource.lk>*
> > > >>
> > > >> 01/26/2007 11:09 PM
> > > >> Please respond to
> > > >> axis-dev@ws.apache.org
> > > >>
> > > >>
> > > >>
> > > >> To
> > > >> axis-dev@ws.apache.org
> > > >> cc
> > > >> dims@wso2.com
> > > >> Subject
> > > >> JAXWSMessageReciever Marshaller Problem
> > > >>
> > > >>
> > > >>
> > > >>
> > > >>
> > > >>
> > > >>
> > > >>
> > > >>
> > > >> Hi,
> > > >>
> > > >> This is a problem arised in the Geronimo Axis2 integration with
> > > >> JAXWSMessageReciever.
> > > >>
> > > >> I created an AxisService with a JAXWSMessageReciever as it's
> message
> > > >> reciever and trying to invoke the service using
> > > >> HTTPTransportUtils.processHTTPPostRequest() method. We are
> sending a RPC
> > > >> based SOAPRequest to the service invocation.
> > > >>
> > > >> The JAXWSMessageReciever then creates Marshaller for the
> unmarshall
> > > >> requests. This marshaller creation is entirely depends on the
> > > >> EndpointInterfaceDescriptionImpl SOAPBinding style. By default it
> > > > creates
> > > >> a DocLiteralMarashaller and tries to unmarshall my RPC based
> request and
> > > >> get failed with UnmarshallException :(. When I change the default
> > > >> SOAPBinding style in EndpointInterfaceDescriptionImpl to RPC it
> works
> > > > fine
> > > >> (sure it's not the way to do it). Is this is the correct
> behaviour of
> > > >> Marshal creation of JAXWSMessageReciever? Shouldn't it be depends
> on
> > > >> SOAPMessage messaging mode too?
> > > >>
> > > >> BTW I have created a JIRA (AXIS2-2044) patch to remove some of
> the
> > > >> misleading information gives in the Axis2 integrating it with
> Geronimo.
> > > >>
> > > >> Thanks,
> > > >> Lasantha Ranaweera
> > > >>
> > > >>
> ---------------------------------------------------------------------
> > > >> 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
> > > >
> > > >
> > > >
> ---------------------------------------------------------------------
> > > > 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
> > > --=_alternative 005A88328625727D_=--
> > > ---------------------------------------------------------------------
> > > 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
>
>
>
>
> ---------------------------------------------------------------------
> 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] AXIS2-2155 - Re: JAXWSMessageReciever Marshaller Problem
Posted by Nicholas L Gallardo <nl...@us.ibm.com>.
Hi Dims,
I'd actually started on it last week, but didn't make as much progress as
I'd hoped.
When is the freeze date for the 1.2 release?
Thanks,
Nicholas Gallardo
WebSphere - WebServices Development
nlgallar@us.ibm.com
Phone: 512-838-1182
Building: 901 / 5G-016
"Davanum Srinivas" <da...@gmail.com>
02/17/2007 03:39 PM
Please respond to
axis-dev@ws.apache.org
To
axis-dev@ws.apache.org
cc
Subject
[Axis2] AXIS2-2155 - Re: JAXWSMessageReciever Marshaller Problem
Rich, Nick,
Any idea if we can fix this for 1.2 release?
thanks,
dims
On 2/9/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
>
> Dims,
>
> By "the other SOAP engine", I'm assuming that's CXF?
>
> Our usage of JAXB right now is dependent upon root elements. By that, I
mean that the wrapper bean that's defined as the root element in the
schema. These generated classes carry some additional annotations that
allow us to unmarshall them easily with JAXB.
>
> I discussed this with Rich and he had some ideas about ways we could
possibly get around this. It will have to be a lower severity item though
as we're working through some functional scenarios. I've opened a JIRA
issue to track this.
>
> https://issues.apache.org/jira/browse/AXIS2-2155
>
> Regards,
>
> Nicholas Gallardo
> WebSphere - WebServices Development
> nlgallar@us.ibm.com
> Phone: 512-838-1182
> Building: 901 / 5G-016
>
>
>
> "Davanum Srinivas" <da...@gmail.com>
>
> 02/09/2007 10:54 AM
>
> Please respond to
> axis-dev@ws.apache.org
>
>
> To axis-dev@ws.apache.org
>
> cc
>
>
> Subject Re: JAXWSMessageReciever Marshaller Problem
>
>
>
>
>
>
>
>
> Nick,
>
> The other soap engine inside Geronimo seems to work w/o needing the
> wrapper classes. Anything we can do to get ours working too? w/o
> having to run the xjc command with "-wsdl"? Is this planned, or out of
> scope?
>
> thanks,
> dims
>
> On 2/9/07, Nicholas L Gallardo <nl...@us.ibm.com> wrote:
> >
> > Hi Lasantha,
> >
> > Sorry for the late response here. You have correctly identified the
missing piece though. For services that are considered doc/lit wrapped
(the default for JAX-WS), it is required that the wrapper beans be
generated. You can get these by running the JAXB generation tool with the
"-wsdl" flag I believe. The JAX-WS runtime in Axis2 will not generate
these on the fly, but needs these classes to be able to
marshall/unmarshall the messages.
> >
> > Beyond that though, you don't need to include the @RequestWrapper or
@ResponseWrapper annotations if the generated class names follow the
defaults:
> >
> > - package name is the same as the SEI
> > - class names are OperationName and OperationNameResponse with
the appropriate camel casing.
> >
> > Hope that helps...
> >
> > Regards,
> >
> > Nicholas Gallardo
> > WebSphere - WebServices Development
> > nlgallar@us.ibm.com
> > Phone: 512-838-1182
> > Building: 901 / 5G-016
> >
> >
> >
> > "Lasantha Ranaweera" <la...@opensource.lk>
> >
> > 02/05/2007 09:54 AM
> >
> >
> > Please respond to
> > axis-dev@ws.apache.org
> >
> >
> > To axis-dev@ws.apache.org
> >
> > cc
> >
> >
> > Subject RE: JAXWSMessageReciever Marshaller Problem
> >
> >
> >
> >
> >
> >
> >
> >
> > Hi Nick,
> >
> > Thank you very much for the giving some insight.
> >
> > Say for example if are having Doc/Lit service with @ResponsWrapper &
> > @RequestWrapper annotations, will the Axis2 generate intermediate
classes
> > for the JAXB binding automatically? Otherwise do we need to some how
> > generate it & add it in to the archive?
> >
> > First we are working on an example which has a WSDL and creating
> > annotations by hand using it's relevant composites.
> >
> > Please find the attached WSDL, endpoint & endpoint impl class.
> >
> > Any help would be greately appriciated.
> >
> > Thanks,
> > Lasantha Ranaweera
> > > Lin,
> > >
> > > JAXB objects are not always required. You could be using simple
types
> > > that map base Java types like String, int, boolean, etc. But, in
all
> > > cases, we will use JAX-WS as a means to marshall/unmarshall data
types.
> > >
> > > The exception you're seeing usually happens when the JAXBContext
that is
> > > used to unmarshall the message is not configured correctly. The
two
> > > messages that you see from JAXBUtils could be an indication of the
problem
> > > depending on what pattern your service is following (wrapped vs.
bare).
> > > I'm guessing wrapped since it went down into the
> > > DocLitWrappedMethodMarshaller.
> > >
> > > Overall, we need one of two things to be able to configure the
JAXBContext
> > > correctly and unmarshall the incoming request.
> > >
> > > a) If it's wrapped, then you need to have an @RequestWrapper and
> > > @ResponseWrapper annotation on your operation. That can be used
by JAXB
> > > to pick-up the wrapper classes that are defined for that
operation.
> > >
> > > b) If it's not wrapped, then you will need to have an
ObjectFactory. The
> > > ObjectFactory can be used by the JAXBContext under the covers to
figure
> > > out how to unmarshall elements that don't have custom types
defined.
> > > Without this though, the unmarhaller wont' work.
> > >
> > > Can you post an example of the endpoint that you're trying to
deploy and
> > > what annotations it has on it? Is this endpoint being deployed
with or
> > > without a WSDL?
> > >
> > > Regards,
> > >
> > > Nicholas Gallardo
> > > WebSphere - WebServices Development
> > > nlgallar@us.ibm.com
> > > Phone: 512-838-1182
> > > Building: 901 / 5G-016
> > >
> > >
> > >
> > > "Lin Sun" <li...@gmail.com>
> > > 02/04/2007 09:50 PM
> > > Please respond to
> > > axis-dev@ws.apache.org
> > >
> > >
> > > To
> > > <ax...@ws.apache.org>
> > > cc
> > >
> > > Subject
> > > RE: JAXWSMessageReciever Marshaller Problem
> > >
> > >
> > >
> > >
> > >
> > >
> > > Hi there,
> > >
> > > A basic question, are jaxb objects required in a simple hello
jax-ws
> > > application? I think I am running the same test as Lasantha and
this
> > > test
> > > doesn't have any jaxb generated classes in the war file. Axis2
did choose
> > > to use DocLitWrappedMethodMarshaller to do the marshaller work and
the
> > > following exception was thrown when message.getBodyBlock(0,
blockContext,
> > > factory) is called.
> > >
> > > javax.xml.bind.UnmarshalException
> > > - with linked exception:
> > > [javax.xml.bind.UnmarshalException: unexpected element
> > > (uri:"http://apache.org/hello_world_soap_http", local:"greetMe").
Expected
> > > elements are (none)]
> > >
> > > I also saw
> > >
> > > 21:50:34,781 INFO [JAXBUtils] ObjectFactory Class Not Found
> > > 21:50:34,828 INFO [JAXBUtils] package-info Class Not Found
> > >
> > > in my console log, which seems to indicate that axis2 requires the
> > > existence
> > > of the ObjectFactory Class and package-info Class (part of jaxb
generated
> > > classes) in the test application?
> > >
> > > This same jax-ws test works with CXF integration into Geronimo so
I
> > > thought
> > > it would be okay to not have jaxb objects in the application
archive.
> > > However, missing it seems to cause the UnmarshalException.
> > >
> > > Any help is appreciated.
> > >
> > > Lin
> > >
> > > -----Original Message-----
> > > From: Lasantha Ranaweera [mailto:lasantha@opensource.lk]
> > > Sent: Wednesday, January 31, 2007 1:33 AM
> > > To: axis-dev@ws.apache.org
> > > Subject: Re: JAXWSMessageReciever Marshaller Problem
> > >
> > > Hi Nich,
> > >
> > > Thank you very much for the information. I have uploaded latest
patch
> > > (number 2) to the Geronimo list under GERONIMO-2776.
> > >
> > > I am basically trying to read a WSDL and create JAXWS service by
hand
> > > filling necessary composites for situations where class level
> > > annotations are not provided.
> > >
> > > After some debugging sessions understand this is due to the
missing JAXB
> > > objects in my application archive. It would be ideal if you can
explain
> > > me how the JAXB bindings work for the JAXWS in the Axis2 side. :-)
> > >
> > > Also is there any publicly available articles to refer JAXWS stuff
on
> > > the Axis2?
> > >
> > > Thanks Again,
> > > Lasantha
> > >
> > > Nicholas L Gallardo wrote:
> > >>
> > >> Hi Lasantha,
> > >>
> > >> Sorry for the delayed response here.
> > >>
> > >> I think I need to understand how you're deploying/configuring the
> > >> endpoint before I can provide guidance on what's going on here. I
> > >> know we've already started the Geronimo integration, but I think
some
> > >> of that is going to (or should probably) rely on similar work
that
> > >> needs to be done in Axis2. Do you have some information or
> > >> architecture that you can share for how this is being done?
> > >>
> > >> As far as this situation, the unmarshalling is going to be
predicated
> > >> on what style of WSDL you have. If you've just annotated a POJO
and
> > >> then deployed that, the default WSDL mapping is to a
Document/Literal
> > >> Wrapped style WSDL. You can use the SOAPBinding annotation as
you've
> > >> already seen to toggle between a Document and RPC style. Only
> > >> "literal" use is supported. JAX-WS does not support RPC/Encoded
style
> > >> WSDLs.
> > >>
> > >> At a high level what will happen is, after the request comes in
to the
> > >> JAXWSMessageReceiver, a decision will be made as to what
> > >> MethodMarshaller needs to be loaded. This decision is based on
the
> > >> information in the EndpointDescription/OperationDescription. Each
of
> > >> those objects is a view of the WSDL and annotation information
> > >> available for an endpoint/operation. If those are not configured
> > >> correctly, then you won't have the right MethodMarshaller.
> > >>
> > >> Is the scenario that you have intended to truly be based on an
"RPC"
> > >> style WSDL (as opposed to a "Document" style)? I'm assuming that
the
> > >> RPC in the RPCMessageReceiver is referring more to the fact that
it's
> > >> for services that are based on an interaction that people would
> > >> consider RPC over a messaging style interaction. Is that
correct?
> > >>
> > >> Regards,
> > >>
> > >> Nicholas Gallardo
> > >> WebSphere - WebServices Development
> > >> nlgallar@us.ibm.com
> > >> Phone: 512-838-1182
> > >> Building: 901 / 5G-016
> > >>
> > >>
> > >> *"Lasantha Ranaweera" <la...@opensource.lk>*
> > >>
> > >> 01/26/2007 11:09 PM
> > >> Please respond to
> > >> axis-dev@ws.apache.org
> > >>
> > >>
> > >>
> > >> To
> > >> axis-dev@ws.apache.org
> > >> cc
> > >> dims@wso2.com
> > >> Subject
> > >> JAXWSMessageReciever Marshaller Problem
> > >>
> > >>
> > >>
> > >>
> > >>
> > >>
> > >>
> > >>
> > >>
> > >> Hi,
> > >>
> > >> This is a problem arised in the Geronimo Axis2 integration with
> > >> JAXWSMessageReciever.
> > >>
> > >> I created an AxisService with a JAXWSMessageReciever as it's
message
> > >> reciever and trying to invoke the service using
> > >> HTTPTransportUtils.processHTTPPostRequest() method. We are
sending a RPC
> > >> based SOAPRequest to the service invocation.
> > >>
> > >> The JAXWSMessageReciever then creates Marshaller for the
unmarshall
> > >> requests. This marshaller creation is entirely depends on the
> > >> EndpointInterfaceDescriptionImpl SOAPBinding style. By default it
> > > creates
> > >> a DocLiteralMarashaller and tries to unmarshall my RPC based
request and
> > >> get failed with UnmarshallException :(. When I change the default
> > >> SOAPBinding style in EndpointInterfaceDescriptionImpl to RPC it
works
> > > fine
> > >> (sure it's not the way to do it). Is this is the correct
behaviour of
> > >> Marshal creation of JAXWSMessageReciever? Shouldn't it be depends
on
> > >> SOAPMessage messaging mode too?
> > >>
> > >> BTW I have created a JIRA (AXIS2-2044) patch to remove some of
the
> > >> misleading information gives in the Axis2 integrating it with
Geronimo.
> > >>
> > >> Thanks,
> > >> Lasantha Ranaweera
> > >>
> > >>
---------------------------------------------------------------------
> > >> 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
> > >
> > >
> > >
---------------------------------------------------------------------
> > > 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
> > --=_alternative 005A88328625727D_=--
> > ---------------------------------------------------------------------
> > 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
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org