javax.xml.bind.JAXBException: xx.xxx.xxx.BATCHRESULTINPUT is not known to this
context
--------------------------------------------------------------------------------------
Key: CXF-3671
URL: https://issues.apache.org/jira/browse/CXF-3671
Project: CXF
Issue Type: Bug
Components: Core
Affects Versions: 2.3
Environment: JavaSE6.0, Eclipse, Weblogic10.3.3
Reporter: z12345678me
Priority: Blocker
I tried to invoke webservice by following method:
DynamicClientFactory dcf = DynamicClientFactory.newInstance();
Client client =
dcf.createClient("http://localhost:7001/bsdm/ws/BatOrdSer?wsdl");
xx.xxx.xxx.BATCH_RESULT_INPUT input=new xx.xxx.xxx.BATCH_RESULT_INPUT();
try {
Object[] ret = client.invoke("batchResult",input);
} catch (Exception e) {
e.printStackTrace();
}
And I catched following exception:
Caused by: javax.xml.bind.JAXBException: xx.xxx.xxx.BATCHRESULTINPUT is not
known to this context
at
com.sun.xml.bind.v2.runtime.JAXBContextImpl.getBeanInfo(JAXBContextImpl.java:625)
at
com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl$1.serializeBody(ElementBeanInfoImpl.java:141)
When I tried to debug the programe, I found that cxf will create webservice
request and response classes at runtime in method createClient, for example:
2011-7-20 15:06:59 org.apache.cxf.jaxb.JAXBUtils logGeneratedClassNames
info : Created classes: xx.xxx.xxx.BATCHRESULTINPUT
And an instance of JAXBContextImpl was created also. But in the JAXBContextImpl
context instance class name "xx.xxx.xxx.BATCH_RESULT_INPUT" was used, which is
different with "xx.xxx.xxx.BATCHRESULTINPUT".
Then when method Client.invoke is invoked, JAXBException will be thrown. I find
in class JAXBEncoderDecoder's
marshall(Marshaller marshaller,
Object elValue,
MessagePartInfo part,
Object source)
method, part's typeClass will be used. But part's typeClass is
"xx.xxx.xxx.BATCHRESULTINPUT" which class is not in context.
Following is one piece of WSDL file:
<wsdl:message name="batchResultRequest">
<wsdl:part name="parameters"
element="unibssBody:BATCH_RESULT_INPUT"/>
</wsdl:message>
This problem has blocked us, could you tell me the solution. Thanks.
Best regards!
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira