axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Davanum Srinivas" <dava...@gmail.com>
Subject Re: Axis 1.* to Axis2 Migration Question
Date Thu, 14 Dec 2006 21:05:08 GMT
ah. i forgot about that. then set the soap action to the name of the
method (also read up the article i sent in my prev email)

thanks,
dims

On 12/14/06, Ted Jones <Tjones@metamatrix.com> wrote:
> Hmmm... I get this when trying to get to the Axis2 generated WSDL:
>
> <error>
> <description>Unable to generate WSDL for this service</description>
> <reason>
> If you wish Axis2 to automatically generate the WSDL, then please use
> one of the RPC message receivers for the service(s)/operation(s) in
> services.xml. If you have added a custom WSDL in the META-INF directory,
> then please make sure that the name of the service in services.xml
> (/serviceGroup/service/@name) is the same as in the custom wsdl's
> service name (/wsdl:definitions/wsdl:service/@name).
> </reason>
> </error>
>
> Here is my service.xml for the deployed service:
> <service name="service">
>     <description>
>         Test Web Service
>     </description>
>     <parameter name="ServiceClass"
> locked="false">com.test.soap.lds.service.DataServiceWebService</paramete
> r>
>     <parameter name="allowedMethods"
> locked="false">executeDataservice</parameter>
>     <operation name="executeDataservice">
>         <messageReceiver
> class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
>     </operation>
> </service>
>
> FYI - The WSDL is generated dynamically from a servlet, it is not in the
> META-INF directory.
>
> Thanks,
> Ted
>
> -----Original Message-----
> From: Davanum Srinivas [mailto:davanum@gmail.com]
> Sent: Thursday, December 14, 2006 2:41 PM
> To: axis-user@ws.apache.org
> Cc: Martin Gainty
> Subject: Re: Axis 1.* to Axis2 Migration Question
>
> can you paste the autogenerated wsdl when you point your browse to
> "?wsdl"
>
> thanks,
> dims
>
> On 12/14/06, Ted Jones <Tjones@metamatrix.com> wrote:
> > My WSDL is pasted in below. This same WSDL works in Axis 1.3. When I
> > execute the "getBookCollection" operation, it really accesses a method
>
> > in the service that grabs the SOAP Action value and uses that to query
>
> > against the database, gets a value and updates the SOAP response. This
>
> > allows a dynamic behavior that does not require us to recreate the web
>
> > service to accommodate a specific operation name. Here is a snippet
> > from the userguide for Axis 1.2 that lead us down this path:
> >
> > <snippet>
> > __________________________________________
> > Message services
> >
> > Finally, we arrive at "Message" style services, which should be used
> > when you want Axis to step back and let your code at the actual XML
> > instead of turning it into Java objects. There are four valid
> > signatures for your message-style service methods:
> >
> > public Element [] method(Element [] bodies); public SOAPBodyElement []
>
> > method (SOAPBodyElement [] bodies); public Document method(Document
> > body); public void method(SOAPEnvelope req, SOAPEnvelope resp);
> >
> > The first two will pass your method arrays of either DOM Elements or
> > SOAPBodyElements - the arrays will contain one element for each XML
> > element inside the <soap:body> in the envelope.
> >
> > The third signature will pass you a DOM Document representing the
> > <soap:body>, and expects the same in return.
> >
> > The fourth signature passes you two SOAPEnvelope objects representing
> > the request and response messages. This is the signature to use if you
>
> > need to look at or modify headers in your service method. Whatever you
>
> > put into the response envelope will automatically be sent back to the
> > caller when you return. Note that the response envelope may already
> > contain headers which have been inserted by other Handlers.
> > ___________________________________________
> > </snippet>
> >
> > It is the fourth signature that we were able to utilize. The method
> > name was not the operation name, but an arbitrary value we defined.
> >
> > Here is my WSDL:
> >
> > <definitions name="Books"
> > targetNamespace="http://com.test/BooksWebService"
> >     xmlns="http://schemas.xmlsoap.org/wsdl/"
> >     xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> >     xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> >     xmlns:tns="http://com.test/BooksWebService"
> >     xmlns:schema1="http://test.com/books/input"
> >     xmlns:schema2="http://www.test.com/XMLSchema/DataSets/Books">
> >    <types>
> >       <xsd:schema targetNamespace="http://com.test/BooksWebService"
> > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
> >          <xsd:import namespace="http://test.com/books/input"
> > schemaLocation="http://testServer:8085/BooksWebService/servlet/Service
> > /B
> > ooksWebService/BooksInput.xsd" />
> >          <xsd:import
> > namespace="http://www.test.com/XMLSchema/DataSets/Books"
> > schemaLocation="http://testServer:8085/BooksWebService/servlet/Service
> > /B
> > ooksWebService/Books.xsd" />
> >       </xsd:schema>
> >    </types>
> >    <message name="Books_getBookCollection_getBookCollectionInput">
> >       <documentation>Input message for operation
> > Books/getBookCollection.</documentation>
> >       <part name="Books_getBookCollection_getBookCollectionInput"
> > element="schema1:getBookCollectionByTitleRequest" />
> >    </message>
> >    <message name="Books_getBookCollection_getBookCollectionOutput">
> >       <documentation>Output message for operation
> > Books/getBookCollection.</documentation>
> >       <part name="Books_getBookCollection_getBookCollectionOutput"
> > element="schema2:bookCollection" />
> >    </message>
> >    <portType name="Books">
> >       <operation name="getBookCollection">
> >          <input
> > message="tns:Books_getBookCollection_getBookCollectionInput" />
> >          <output
> > message="tns:Books_getBookCollection_getBookCollectionOutput" />
> >       </operation>
> >    </portType>
> >    <binding name="Books" type="tns:Books">
> >       <soap:binding style="document"
> > transport="http://schemas.xmlsoap.org/soap/http" />
> >       <operation name="getBookCollection">
> >          <soap:operation style="document"
> > soapAction="BooksWebService.Books.getBookCollection" />
> >          <input>
> >             <soap:body use="literal" />
> >          </input>
> >          <output>
> >             <soap:body use="literal" />
> >          </output>
> >       </operation>
> >    </binding>
> >    <service name="Books">
> >       <port name="Books" binding="tns:Books">
> >          <soap:address
> > location="http://testServer:8085/BooksWebService/services/service" />
> >       </port>
> >    </service>
> > </definitions>
> >
> > Thanks very much,
> > Ted
> >
> > -----Original Message-----
> > From: Martin Gainty [mailto:mgainty@hotmail.com]
> > Sent: Thursday, December 14, 2006 1:38 PM
> > To: axis-user@ws.apache.org
> > Subject: Re: Axis 1.* to Axis2 Migration Question
> >
> > Hi Ted
> >
> > Can you show us the operation <wsdl:operation name="getXXXX"> from
> > your wsdl?
> > better yet could you display the entire wsdl for your service?
> >
> > Thanks,
> >
> > ----------------------------------------------------------------------
> > --
> > ---
> > This e-mail message (including attachments, if any) is intended for
> > the use of the individual or entity to which it is addressed and may
> > contain information that is privileged, proprietary , confidential and
>
> > exempt from disclosure. If you are not the intended recipient, you are
>
> > notified that any dissemination, distribution or copying of this
> > communication is strictly prohibited.
> > ----- Original Message -----
> > From: "Ted Jones" <Tjones@metamatrix.com>
> > To: <axis-user@ws.apache.org>; <dims@apache.org>
> > Sent: Thursday, December 14, 2006 2:10 PM
> > Subject: RE: Axis 1.* to Axis2 Migration Question
> >
> >
> > Thanks for the response dims. The Axis 1.* implementation is such that
>
> > it does not matter what the method name is, as long as the signature
> > matches one if the expected method signatures. If the method name was
> > specified in the allowableMethods property, it would be executed. So
> > the operation name did not have to match the method name. Is this
> > still the case? The reason I ask is because I am getting an Operation
> > not found exception.
> >
> > Thanks for your help,
> > Ted
> >
> > -----Original Message-----
> > From: Davanum Srinivas [mailto:davanum@gmail.com]
> > Sent: Thursday, December 14, 2006 11:00 AM
> > To: axis-user@ws.apache.org
> > Subject: Re: Axis 1.* to Axis2 Migration Question
> >
> > Please see http://ws.apache.org/axis2/1_1/quickstartguide.html#axiom
> >
> > public OMElement nameOfMethod(OMElement element)
> >
> > thanks,
> > dims
> >
> > On 12/14/06, Ted Jones <Tjones@metamatrix.com> wrote:
> > > To be more specific as to what Axis 1.3 logic I am trying to
> > > convert, the java:msg provider in Axis 1.3 specifies that the
> > > service class contains the following method signature (among
> others):
> > >
> > > public void nameOfMethod(org.apache.axis.message.SOAPEnvelope req,
> > >                          org.apache.axis.message.SOAPEnvelope resp)
> > > throws Exception { ... }
> > >
> > > This has worked well for us by allowing us to interrogate the
> > > request,
> >
> > > execute our business logic, and return the results in the SOAP
> > response.
> > >
> > >
> > > Is there an equivalent solution in Axis2?
> > >
> > > TIA,
> > > Ted
> > > -----Original Message-----
> > > From: Ted Jones [mailto:Tjones@metamatrix.com]
> > > Sent: Wednesday, December 13, 2006 3:09 PM
> > > To: axis-user@ws.apache.org
> > > Subject: RE: Axis 1.* to Axis2 Migration Question
> > >
> > > So, after looking through the documentation, is it accurate to say
> > > that there is no parallel Axis2 form of a service that uses a
> > > message provider and will default to an method based on it's
> > > signature? Does the operation need to be specified now?
> > >
> > > Thanks
> > >
> > > -----Original Message-----
> > > From: robert lazarski [mailto:robertlazarski@gmail.com]
> > > Sent: Wednesday, December 13, 2006 2:42 PM
> > > To: axis-user@ws.apache.org
> > > Subject: Re: Axis 1.* to Axis2 Migration Question
> > >
> > > This is a good place to start:
> > >
> > > http://ws.apache.org/axis2/1_1/migration.html
> > >
> > > HTH,
> > > Robert
> > >
> > > On 12/13/06, Ted Jones <Tjones@metamatrix.com> wrote:
> > > >
> > > >
> > > > I have a web service in Axis 1.3 that is defined using the
> > > > following
> >
> > > > deployment descriptor:
> > > >
> > > > <service name="myservice" provider="java:MSG">
> > > >
> > > >
> > > > <parameter name="allowedMethods" value="executeMyService"/>
> > > >
> > > > <parameter name="className"
> > > > value="com.soap.service.MyWebService"/>
> > > >
> > > > </service>
> > > >
> > > > The method (executeMyService) accepts the soap request and
> > > > response envelopes as arguments. What is the parallel
> > > > implementation for
> > Axis2?
> > > >
> > > >
> > > >
> > > > TIA,
> > > >
> > > > Ted Jones
> > > >
> > > >
> > >
> > > --------------------------------------------------------------------
> > > - To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> > > For additional commands, e-mail: axis-user-help@ws.apache.org
> > >
> > >
> > > --------------------------------------------------------------------
> > > - To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> > > For additional commands, e-mail: axis-user-help@ws.apache.org
> > >
> > >
> > > --------------------------------------------------------------------
> > > - To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> > > For additional commands, e-mail: axis-user-help@ws.apache.org
> > >
> > >
> >
> >
> > --
> > Davanum Srinivas : http://www.wso2.net (Oxygen for Web Service
> > Developers)
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-user-help@ws.apache.org
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-user-help@ws.apache.org
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-user-help@ws.apache.org
> >
> >
>
>
> --
> Davanum Srinivas : http://www.wso2.net (Oxygen for Web Service
> Developers)
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-user-help@ws.apache.org
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-user-help@ws.apache.org
>
>


-- 
Davanum Srinivas : http://www.wso2.net (Oxygen for Web Service Developers)

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org


Mime
View raw message