To follow up, in case someone else bumps into this. PayloadType PT = ...; Foo foo = ...; // This is the thing I want to attach to PT
OMElement [] A = new OMElement [1]; A [0] = foo.getOMElement (Foo.MY_QNAME, OMAbstractFactory.getOMFactory ()); PT.setExtraElement (A); OMElement, Foo.MY_QNAME, and the factory stuff are all automatically generated by wsdl2java; only Foo and PayloadType are application-specific. Hope this helps someone who runs into a similar problem. Robert Dodier On Fri, Dec 20, 2013 at 5:27 PM, Robert Dodier <robert.dod...@gmail.com> wrote: > Hello, > > I am working with Axis2 1.6.1. I have used wsdl2java to generate > Java code from a WSDL. The WSDL for a certain type, named > Payload, includes an "any" element, which in practice might be any > of several types. (A third party constructed the WSDL and dictates > conventional usage; I cannot change anything.) I want to construct > a Payload object which contains a particular type of object, let's > say Foo. I can construct a Foo object without any trouble. But the > generated code for Payload doesn't have a setFoo method (not > surprising, since Foo isn't specified in the description of Payload), > and the only method for specifying a contained object takes an > instance of a different interface (not any superinterface of Foo), so > it seems I cannot specify Foo as an argument for it. How can I > specify Foo as the contained object? > > For the record, here is the relevant snippet of WSDL and the > corresponding declaration in the code generated by wsdl2java. > Foo is not a subinterface of the declared type OMElement. > > Thanks in advance for any advice. > > Robert Dodier > > PS. > WSDL snippet: > > <xs:complexType name="PayloadType"> > <xs:sequence> > <xs:any maxOccurs="unbounded" minOccurs="0" > processContents="skip"/> > </xs:sequence> > </xs:complexType> > > Generated code: > > protected org.apache.axiom.om.OMElement[] localExtraElement ; --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscr...@axis.apache.org For additional commands, e-mail: java-user-h...@axis.apache.org