You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by "Hoying, Ken" <KH...@tiaa-cref.org> on 2005/08/09 19:17:39 UTC

Axis 1.0 Bug with Wrapped Documents??

I have created a wrapped document literal web service in Axis.  The service seems to make the call correctly from the client.  The server is invoked and does return data to the client (I know this from the TCPMonitor utility).  However, the call is suppose to return a string but it always returns null.

Here is the WSDL:

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://dsv.tiaacref.org" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://dsv.tiaacref.org-impl" xmlns:intf="http://dsv.tiaacref.org" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	<wsdl:types>
		<schema targetNamespace="http://dsv.tiaacref.org" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
			<import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
			<element name="getNetDocument">
				<complexType>
					<sequence>
						<element name="document" type="xsd:string" />
						<element name="paramKeys" type="intf:ArrayOfString" />
						<element name="paramVals" type="intf:ArrayOfString" />
					</sequence>
				</complexType>
			</element>
			
			<element name="getNetDocumentResponse">
				<complexType>
					<sequence>
						<element name="xmlVal" type="xsd:string" />
					</sequence>
				</complexType>
			</element>

			<complexType name="ArrayOfString">
				<complexContent>
					<restriction base="soapenc:Array">
						<attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]" />
					</restriction>
				</complexContent>
			</complexType>
		</schema>
	</wsdl:types>

	<wsdl:message name="getNetDocumentRequest">
		<wsdl:part name="parameters" element="intf:getNetDocument"/>
	</wsdl:message>

	<wsdl:message name="getNetDocumentResponse">
		<wsdl:part name="parameters" element="intf:getNetDocumentResponse"/>
	</wsdl:message>

	<wsdl:portType name="DSVNetWebService">
		<wsdl:operation name="getNetDocument">
			<wsdl:input message="intf:getNetDocumentRequest" name="getNetDocumentRequest"/>
			<wsdl:output message="intf:getNetDocumentResponse" name="getNetDocumentResponse"/>
		</wsdl:operation>
	</wsdl:portType>

	<wsdl:binding name="DSVNetWebServiceImplSoapBinding" type="intf:DSVNetWebService">
		<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="getNetDocument">
			<wsdlsoap:operation soapAction=""/>
			<wsdl:input name="getNetDocumentRequest">
				<wsdlsoap:body use="literal"/>
			</wsdl:input>
			<wsdl:output name="getNetDocumentResponse">
				<wsdlsoap:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>

	<wsdl:service name="DSVNetWebServiceService">
		<wsdl:port binding="intf:DSVNetWebServiceImplSoapBinding" name="DSVNetWebServiceImpl">
			<wsdlsoap:address location="http://10.17.9.67:8011/axis/DSVNetWebServiceImpl.jws"/>
		</wsdl:port>
	</wsdl:service>

</wsdl:definitions>

The one thing that is noticed in the response message from the server is that it is not wrapped in an <xmlVal> tag which I had expected.  Shouldnt' it be?  Here is the response from the server:

HTTP/1.1 200 OK Date: Tue, 09 Aug 2005 17:06:48 GMT Server: WebLogic Server 8.1 SP2 Fri Dec 5 15:01:51 PST 2003 316284  Content-Type: text/xml; charset=utf-8 Connection: Close  <?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <soapenv:Body>
  <getNetDocumentResponse xmlns="http://dsv.tiaacref.org">
   <getNetDocumentReturn xmlns="">THE RESPONSE DATA</getNetDocumentReturn>
  </getNetDocumentResponse>
 </soapenv:Body>
</soapenv:Envelope>

Is this a bug or have I missed something?

Thank you,
Ken Hoying



**************************************************************
This message, including any attachments, contains confidential information intended for a specific individual and purpose, and is protected by law.  If you are not the intended recipient, please contact sender immediately by reply e-mail and destroy all copies.  You are hereby notified that any disclosure, copying, or distribution of this message, or the taking of any action based on it, is strictly prohibited.
TIAA-CREF
**************************************************************


Re: Axis 1.0 Bug with Wrapped Documents??

Posted by Anne Thomas Manes <at...@gmail.com>.
It's a bug in Axis 1.0. It always names the return value <method>Return.
You should upgrade to Axis 1.2 if you want to use doc/literal.

Anne

On 8/9/05, Hoying, Ken <KH...@tiaa-cref.org> wrote:
>  
>  
> 
> I have created a wrapped document literal web service in Axis.  The service
> seems to make the call correctly from the client.  The server is invoked and
> does return data to the client (I know this from the TCPMonitor utility). 
> However, the call is suppose to return a string but it always returns null. 
> 
> Here is the WSDL: 
> 
> <?xml version="1.0" encoding="UTF-8"?> 
> <wsdl:definitions targetNamespace="http://dsv.tiaacref.org"
> xmlns="http://schemas.xmlsoap.org/wsdl/"
> xmlns:apachesoap="http://xml.apache.org/xml-soap"
> xmlns:impl="http://dsv.tiaacref.org-impl"
> xmlns:intf="http://dsv.tiaacref.org"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
> 
>         <wsdl:types> 
>                 <schema targetNamespace="http://dsv.tiaacref.org"
> xmlns="http://www.w3.org/2001/XMLSchema"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> 
> 
>                         <import
> namespace="http://schemas.xmlsoap.org/soap/encoding/"/> 
>                         <element name="getNetDocument"> 
>                                 <complexType> 
>                                         <sequence> 
>                                                 <element name="document"
> type="xsd:string" /> 
>                                                 <element name="paramKeys"
> type="intf:ArrayOfString" /> 
>                                                 <element name="paramVals"
> type="intf:ArrayOfString" /> 
>                                         </sequence> 
>                                 </complexType> 
>                         </element> 
>                         
>                         <element name="getNetDocumentResponse"> 
>                                 <complexType> 
>                                         <sequence> 
>                                                 <element name="xmlVal"
> type="xsd:string" /> 
>                                         </sequence> 
>                                 </complexType> 
>                         </element> 
> 
>                         <complexType name="ArrayOfString"> 
>                                 <complexContent> 
>                                         <restriction base="soapenc:Array"> 
>                                                 <attribute
> ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]" /> 
>                                         </restriction> 
>                                 </complexContent> 
>                         </complexType> 
>                 </schema> 
>         </wsdl:types> 
> 
>         <wsdl:message name="getNetDocumentRequest"> 
>                 <wsdl:part name="parameters" element="intf:getNetDocument"/>
>         </wsdl:message> 
> 
>         <wsdl:message name="getNetDocumentResponse"> 
>                 <wsdl:part name="parameters"
> element="intf:getNetDocumentResponse"/> 
>         </wsdl:message> 
> 
>         <wsdl:portType name="DSVNetWebService"> 
>                 <wsdl:operation name="getNetDocument"> 
>                         <wsdl:input message="intf:getNetDocumentRequest"
> name="getNetDocumentRequest"/> 
>                         <wsdl:output message="intf:getNetDocumentResponse"
> name="getNetDocumentResponse"/> 
>                 </wsdl:operation> 
>         </wsdl:portType> 
> 
>         <wsdl:binding
> name="DSVNetWebServiceImplSoapBinding"
> type="intf:DSVNetWebService"> 
>                 <wsdlsoap:binding style="document"
> transport="http://schemas.xmlsoap.org/soap/http"/> 
>                 <wsdl:operation name="getNetDocument"> 
>                         <wsdlsoap:operation soapAction=""/> 
>                         <wsdl:input name="getNetDocumentRequest"> 
>                                 <wsdlsoap:body use="literal"/> 
>                         </wsdl:input> 
>                         <wsdl:output name="getNetDocumentResponse"> 
>                                 <wsdlsoap:body use="literal"/> 
>                         </wsdl:output> 
>                 </wsdl:operation> 
>         </wsdl:binding> 
> 
>         <wsdl:service name="DSVNetWebServiceService"> 
>                 <wsdl:port
> binding="intf:DSVNetWebServiceImplSoapBinding"
> name="DSVNetWebServiceImpl"> 
>                         <wsdlsoap:address
> location="http://10.17.9.67:8011/axis/DSVNetWebServiceImpl.jws"/>
>                 </wsdl:port> 
>         </wsdl:service> 
> 
> </wsdl:definitions> 
> 
> The one thing that is noticed in the response message from the server is
> that it is not wrapped in an <xmlVal> tag which I had expected.  Shouldnt'
> it be?  Here is the response from the server: 
> 
> HTTP/1.1 200 OK Date: Tue, 09 Aug 2005 17:06:48 GMT Server: WebLogic Server
> 8.1 SP2 Fri Dec 5 15:01:51 PST 2003 316284  Content-Type: text/xml;
> charset=utf-8 Connection: Close  <?xml version="1.0" encoding="UTF-8"?> 
> 
> <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
> 
>  <soapenv:Body> 
>   <getNetDocumentResponse xmlns="http://dsv.tiaacref.org"> 
>    <getNetDocumentReturn xmlns="">THE RESPONSE DATA</getNetDocumentReturn> 
>   </getNetDocumentResponse> 
>  </soapenv:Body> 
> </soapenv:Envelope> 
> 
> Is this a bug or have I missed something? 
> 
> Thank you, 
> Ken Hoying 
>  
> **************************************************************
>  This message, including any attachments, contains confidential information
> intended for a specific individual and purpose, and is protected by law. If
> you are not the intended recipient, please contact sender immediately by
> reply e-mail and destroy all copies. You are hereby notified that any
> disclosure, copying, or distribution of this message, or the taking of any
> action based on it, is strictly prohibited.
>  TIAA-CREF
> **************************************************************
>