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 <[EMAIL PROTECTED]> 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:[EMAIL PROTECTED]
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 <[EMAIL PROTECTED]> 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:[EMAIL PROTECTED]
> 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" <[EMAIL PROTECTED]>
> To: <axis-user@ws.apache.org>; <[EMAIL PROTECTED]>
> 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:[EMAIL PROTECTED]
> 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 <[EMAIL PROTECTED]> 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:[EMAIL PROTECTED]
> > 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:[EMAIL PROTECTED]
> > 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 <[EMAIL PROTECTED]> 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: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> > --------------------------------------------------------------------
> > - To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> > --------------------------------------------------------------------
> > - To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
> --
> Davanum Srinivas : http://www.wso2.net (Oxygen for Web Service
> Developers)
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


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

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




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

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to