PQ73970: Array of complex type in WSGW no deserializer

 A fix is available

5.0.2: WebSphere Application Server Version 5.0 Fix Pack 2 (Version 5.0.2)



APAR status
Closed as program error.

Error description
Abstract:Array of complex type in WSGW no deserializer
Environment:
WAS v5.0.0 (GA)
WSAD v5.0.0 (GA)
WSADIE v5.0.0 Build 20030122_1554)
Problem Description:
A web service containing arrays of complex types deployed to the
WSGW using 'Generic Classes' won't generate a working
web-service in WSAD (or WSADIE).

I have a web service which returns a complex type which, within
the complex type, returns an array of complex types. ie. The
web service returns a type MVRDetails, which has a field
Violationワ], where Violation is a different complex type.

If I select 'Generic Classes' when deploying to the Gateway, it
deploys ok. But when I import the generated WSDL into WSAD, I
get the following

error at runtime:
********************************************************
ワSOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer
found to deserialize a
'http://javabean.mvr.lgdirect.hursley.wpst/:CustDetails&apo
s; using encoding style
'http://schemas.xmlsoap.org/soap/encoding/'.] at
proxy.soap.MVRServiceDefinitionProxy.returnDetails(MVRServiceDef
initionProxy.java:135)
 at proxy.soap.TestProxy.run(TestProxy.java:38)
 at proxy.soap.TestProxy.main(TestProxy.java:21)
********************************************************
(using SOAP web-services in WSAD)
********************************************************
org.apache.wsif.WSIFException: ワAttributes={}]
ワfaultCode=SOAP-ENV:Client] ワfaultString=No Deserializer found
to deserialize a
'http://javabean.mvr.lgdirect.hursley.wpst/:CustDetails' using
encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.]
ワfaultActorURI=/wsgwsoap1/soaprpcrouter] ワDetailEntries=]
ワFaultEntries=] at
kie.test.InitiateMVRServiceBeanProxy.execute(InitiateMVRServiceB
eanProxy .java:504) at
Local fix
kie.test.I itiateMVRServiceBeanProxy.returnDetails(InitiateMVRSe
rviceBea nProxy.java:235) at
kie.test.TestProxy.run(TestProxy.java:38) at
kie.test.TestProxy.main(TestProxy.java:21)
********************************************************
(using Enterprise Services WSIF-based web service in WSADIE) So
WSAD and WSADIE can't find a deserializer. Shouldn't WSAD be
able to create a deserializer for the complex types from the
WSDL? Is there a problem with the interoperability between the
WSDL generated by the WSGW and the WSDL understood by WSAD?
LOCAL FIX:ン
This problem will be fixed in WAS V5.0.2. The fix for this has
already been delivered in beta code which was available in WAS
build ASV50X PTF2M0314.14.

This fix also prereqs new feature code for SOAP HTTP Channel
support which will also be made newly available in WAS V5.0.2.
This new code has been developed at Hursley under the CMVC wsgw
family as features 743, 743.1, 743.2, and 743.3, and is also
available in beta form in the above build or later. Note that
this code is dropped into the Austin botp library system as a
binary batched up with many new features and new defect fixes.
I was not planning to create an APAR for this specific problem.
As with Chimaera 1, there will be a list in the README of the
problems fixed within Chimaera 2.

To explain any confusion you may have had, the Web Services code
is being developed at Hursley for inclusion into several
different target products (you will have seen reference to PMR
01226,B999,C000 for the WBC product, of which this problem is a
duplicate). APAR JR18217, was opened for this PMR.
Problem summary
****************************************************************
* USERS AFFECTED: WebSphere Application Server Developers      *
*                 writing SOAP web service clients             *
****************************************************************
* PROBLEM DESCRIPTION: Arrays are incorrectly deserialized     *
*                      when running through the Web Services   *
*                      Gateway using generic classes           *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
SOAP messages from target server contain arrays without type
information on each array element (that is, type information
only at the top level) cause incorrect results when used with
'generic classes' deployment option.
Problem conclusion
This problem will be fixed in WebSphere Application Server
V5.0.2
Temporary fix Comments
APAR information
APAR number PQ73970
Reported component name WAS BASE 5.0
Reported component ID 5630A3600
Reported release 00W
Status CLOSED PER
PE NoPE
HIPER NoHIPER
Special Attention NoSpecatt
Submitted date 2003-05-08
Closed date 2003-06-05
Last modified date 2003-06-05

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:

Modules/Macros
WSIF          

Publications Referenced

Fix information

Applicable component levels
R003 PSY    UP
R00A PSY    UP
R00H PSY    UP
R00I PSY    UP
R00S PSY    UP
R00W PSY    UP


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server > General
Operating system(s):
Software version: 00W
Software edition:
Reference #: PQ73970
IBM Group: Software Group
Modified date: Jun 5, 2003