I am using JBoss 4.0.3.
I have a wsdl generated by wscompile from a JSE. A value type returned
as a respone from one of the operations includes an accessor method
inherited from a parent class. Because the accessor has no
complementary mutator, wscompile does not include a corresponding
element in the schema type defined in the wsdl. This is the desired
effect. However, when calling the operation from a client, there is
derserialization error because the soap messge JBoss sends as the
response includes the value returned by the inherited accessor.
The java class definition of the response type looks like this:
Class GenericResponse { public String getStatusMessage() {...} public void setStatusMessage(String statusMessage) {...} public String getRequestType() {return "REQUESTTYPE"} } Class ChildResponse extends GenericResponse { public String getChildAttribute() {...} public void setChildAttribute() {...} }
<complexType name="ChildResponse"> <sequence> <element name="statusMessage" type="string" /> <element name="childAttribute" type="string" /> </sequence> </complexType>
<ChildResponse> <statusMessage>...</statusMessage> <childAttribute>...</childAttribute> <requestType>...</requestType> </ChildResponse>