Thanks.
Got it to work with Apache Axis.
Worked like a charm the first time.
| "Martin Gainty"
<[EMAIL PROTECTED]>
07/18/2005 11:25 AM
|
|
Jonathan-
In Axis There are 3 namespaces you must specify (WSDL,<SOAP>Schema,<soap>bind)
For implementaqtion characteristics take a look at
http://www.javaworld.com/javaworld/jw-10-2003/images/jw-1003-wsstyles.gif
I think in your case you are looking for wsdl? tns or TargetNameSpace in which case you would use
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl"
targetNamespace="your namespace here"
xmlns:tns="your namespace here"
xmlns:soapbind="http://schemas.xmlsoap.org/wsdl/soap">
Keep in mind you will have to declare your Schema namespaces within the wsdl:definitions
<wsdl:types>
<xs:schema targetNamespace="your namespace here (could be another) "
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
<!-- Define types and possibly elements here -->
</schema>
</wsdl:types>
And of course specify the glue that binds the transport and style
<wsdl:binding name="your binding name" type="tns:port type name above">
<!-- define style and transport in general and use per operation -->
</wsdl:binding>
Take a look at this excellent primer
http://www.javaworld.com/javaworld/jw-10-2003/jw-1003-wsstyles.html
HTH,
Martin-
----- Original Message -----
From: Jonathan Taub
To: [email protected]
Sent: Monday, July 18, 2005 1:05 PM
Subject: Re: Apache SOAP 2.3.1 with Weblogic 8.1
It does use the wrong namespace.
That is my questions. Why and how do I change it?
| Anne Thomas Manes <[EMAIL PROTECTED]>
07/17/2005 06:48 PM
|
|
My guess is that you're using the wrong namespace for the
ebDecodeSubRequest type. Do you have a WSDL for the service? It will
tell you what namespaces you must use.
Unless you have a compelling reason to use Apache SOAP, I suggest you
upgrade to Apache Axis (see http://ws.apache.org/axis).
Anne
On 7/15/05, Jonathan Taub <[EMAIL PROTECTED]> wrote:
>
> I've written a simple client using Apache SOAP.
> My webservice is deplyed on Weblogic.
> Using a proxy, this is what I send:
>
> <?xml version='1.0' encoding='UTF-8'?>
> <SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <SOAP-ENV:Body>
> <ns1:decodeSubscriptions
> xmlns:ns1="http://localhost:7001/Entitlement/EBERenewalService"
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> <ebDecodeSubRequest xmlns:ns2="java:com.symantec.eb.renewal.ws"
> xsi:type="ns2:ebDecodeSubRequest">
> <NOS xsi:type="xsd:string">------------</NOS>
> <requestVendor xsi:type="ns2:EbVendorInfo">
> <vendorID xsi:type="xsd:int">----------</vendorID>
> <vendorPW xsi:type="xsd:string">----------</vendorPW>
> <vendorSiteID xsi:type="xsd:int">----------</vendorSiteID>
> </requestVendor>
> </ebDecodeSubRequest>
> </ns1:decodeSubscriptions>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> I get back from Weblogic:
>
> SOAP Fault: [Attributes={}] [faultCode=env:Server] [faultString=Exception
> during processing:
> weblogic.xml.schema.binding.DeserializationException: type
> mapping lookup failure on
> type=['java:com.symantec.eb.renewal.ws']:ns2:ebDecodeSubRequest
> TypeMapping=TYPEMAPPING SIZE=36
> ENTRY 1:
> ... (I'm saving you the clutter)
> ENTRY 2:
> ... (I'm saving you the clutter)
> ENTRY 3:
> class: com.symantec.eb.renewal.ws.EbDecodeSubRequest
> xsd_type: ['java:com.symantec.eb.renewal.ws']:p4:EbDecodeSubRequest
> ser:
> [EMAIL PROTECTED]
> deser:
> [EMAIL PROTECTED]
>
>
> If you're familiar with Weblogic's webservice web application console, this
> is the request I'm sending through it:
>
> <env:Envelope
> xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <env:Body
> env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> <m:decodeSubscriptions
> xmlns:m="http://www.symantec.com/webservices/ebe">
> <ebDecodeSubRequest xmlns:n1="java:com.symantec.eb.renewal.ws"
> xsi:type="n1:EbDecodeSubRequest">
> <NOS xsi:type="xsd:string">----------------</NOS>
> <requestVendor xsi:type="n1:EbVendorInfo">
> <vendorID xsi:type="xsd:int">-----</vendorID>
> <vendorPW xsi:type="xsd:string">-----</vendorPW>
> <vendorSiteID
> xsi:type="xsd:int">-----</vendorSiteID>
> </requestVendor>
> </ebDecodeSubRequest>
> </m:decodeSubscriptions>
> </env:Body>
> </env:Envelope>
>
>
> There are some differences. Namespaces and <env:Envelope> versus
> <SOAP-ENV:Envelope>
>
> Has someone experienced a similiar problem?
>
> Does it has something to do with Xerces parser?
>
> I would very much like *not* to touch the server side.
> Thanks.
