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]

Reply via email to