Hi there,

Any help appreciated for the following problem :-)

Each time I regenerate classes from an rpc-based wsdl any arrays defined are wrongly created.

i.e., they have the private field and usual bean-style getter and setter but they're missing the following two additional steps:
1) elemField.setMaxOccursUnbounded(true);

2) array access helpers:
get<Key>(int i) {..}
set<Key>(int i, Type value) {...}

Without these two things - I find that at runtime it only deserialises a single element of the array even though the array was passed with multiple elments (e.g., multiple invoice lines, only a single one received!). That same problem is described here and info is given on manually fixing it - but it's a maintenance nightmare!
http://publib.boulder.ibm.com/infocenter/wpc/v5r3m2/index.jsp?topic=/com.ibm.wpc.doc/javaapi/japi6.html

Is anyone aware of a WSDL2JavaFactory class helper (or have instructions on how to go about creating one) that will fix these things whenever the java is generated from the wsdl?

It's really annoying having to (a) create them by hand and (b) revert part of the changes on each file that was updated every time there's an update.

with regards,
--

Lachlan Deck



Reply via email to