geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefan Schmidt (JIRA)" <>
Subject [jira] Updated: (GERONIMO-975) Problems with SOAPArrayType
Date Sun, 04 Sep 2005 01:49:30 GMT
     [ ]

Stefan Schmidt updated GERONIMO-975:


Attaching Ant-based project for testing.

Change paths to G and Axis in the build.xml

There is a JAX-RPC server-side to be deployed to G as a war file: ant deploy-war
There is a Axis client-side which requires a BouncyCastle and Xerces in the classpath. ant
tcpmon (start TCP monitor); ant start-J2SEClient (run the Axis client)

> Problems with SOAPArrayType
> ---------------------------
>          Key: GERONIMO-975
>          URL:
>      Project: Geronimo
>         Type: Bug
>   Components: webservices
>     Versions: 1.0-M5
>     Reporter: Stefan Schmidt
>  Attachments:
> I am having a number of problems caused by array handling in SOAP. 
> Using sun's jwsdp I generated a simple JAX-RPC Web service which is supposed to return
an array of Strings. I used the Java2WSDL approach for a JSE - meaning I generated heavyweight
mappings and a wsdl file for my simple WS and deployed it to G. While the WS works in general
it shows the following warning:
> 09:21:29,737 WARN  [HeavyweightTypeInfoBuilder] No soap array info for schematype: T=StringArray@http://arrays/java/lang
> This is due to a non-spec conformant wsdl array mapping generated by the jwsdp:
> 	<types>
> 		<schema targetNamespace="http://arrays/java/lang"
> 			xmlns:tns="http://arrays/java/lang"
> 			xmlns:soap11-enc=""
> 			xmlns:xsi=""
> 			xmlns:wsdl=""
> 			xmlns="">
> 			<complexType name="StringArray">
> 				<sequence>
> 					<element name="value" type="string" nillable="true"
> 						minOccurs="0" maxOccurs="unbounded" />
> 				</sequence>
> 			</complexType>
> 		</schema>
> 	</types>
> This works for this web service which returns the following response (apart from the
> <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
> xmlns:soapenv=""
> xmlns:xsd=""
> xmlns:xsi="">
>  <soapenv:Body>
>   <getStringArrayResponse xmlns="http://stsmedia.wss4j.test">
>    <result xsi:type="xsd:string" xmlns="">String 1</result>
>    <result xsi:type="xsd:string" xmlns="">String 2</result>
>    <result xsi:type="xsd:string" xmlns="">String 3</result>
>    <result xsi:type="xsd:string" xmlns="">String 4</result>
>   </getStringArrayResponse>
>  </soapenv:Body>
> </soapenv:Envelope>
> However, when I switch on  WSS4J security the response looks quite different (SOAP body
>  <soapenv:Body
> xmlns:wsu=""
> wsu:Id="id-1197222">
>   <getStringArrayResponse xmlns="http://stsmedia.wss4j.test">
>    <result xmlns="" xmlns:ns1="http://arrays/java/lang"
> xmlns:soapenc=""
> soapenc:arrayType="ns1:StringArray[4]" xsi:type="soapenc:Array">
>     <result xsi:type="xsd:string">String 1</result>
>     <result xsi:type="xsd:string">String 2</result>
>     <result xsi:type="xsd:string">String 3</result>
>     <result xsi:type="xsd:string">String 4</result>
>    </result>
>   </getStringArrayResponse>
>  </soapenv:Body>
> So it seems that WSS4J has a different Array serialization methods. I have the feeling
that WSS4J actually does it right by adding the correct array encoding. 
> Due to these different array serialization approaches it is currently not possible to
sign the SOAP message with WSS4J since G seems to return arrays which lack the appropriate
array encoding :-( .
> Regards,
> Stefan Schmidt

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message