SOAP WebServices Type Mapping issue

Description

WSDL which requires mapping to an element syntax, i.e:
<part name="EchoHeader" element="tns:requestBean"/>

Does not properly serialize. It appears Lucee follows some sort of default serializer instead. Structs get sent as structs (nsi:map type, with item/key/value wrappers), and Beans get sent as beans.

ACF properly sends the data - based on ACF's implementation it looks like it runs WSDL2JAVA which creates all the beans, with appropriate serializers, and then it uses those to send the data. Lucee appears to map its own types. (in this case, improperly) So it's not an issue with Axis 1 per se, so much as Lucee's use of the library.

Test case, with a minimalist WSDL, and XMLValidate calls available at:
https://github.com/goochjj/Lucee/tree/LDEV0933

See index.cfm in tests/tickets/LDEV0933/ for a graphical representation:
Bean:

Map:

No PR generated - because it would entail merging a failing testcase into Lucee proper

Environment

Reproducible in commandbox, express, tomcat editions, by both Brad Wood and myself in 4.5 and 5.0

Activity

Show:
Gurpreet Randhawa
September 15, 2017, 9:56 PM

any update when this can be fixed, This is basically an amazing SOAP SmarterStats API which is best provided the information about website, It works in ACF but it is breaking in lucee

Gurpreet Randhawa
September 16, 2017, 3:48 PM

This BUG should have the Major Priority, Its breaking on all Implementations

Assignee

Unassigned

Reporter

Joseph Gooch

Priority

Minor

Labels

Fix versions

None

Affects versions

Configure