我非常感谢任何帮助,我仍然是Java和Web服务的新手。
问题是:我将WSDL导入到我的项目中,当我有时使用它时它工作正常,而在另一种情况下,我在使用wsdl时遇到错误:
ERROR [org.apache.axis.encoding.ser.BeanPropertyTarget] - Could not convert [B to bean field 'texto', type java.lang.String
ERROR [org.apache.axis.client.Call] - Exception: org.xml.sax.SAXException: java.lang.ClassCastException@a39be8
. (stuff)
. (more stuff)
. (more stuff)
Caused by: java.lang.IllegalArgumentException: java.lang.ClassCastException@a39be8
at sun.reflect.GeneratedMethodAccessor33.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org. apache.axis.utils.BeanPropertyDescriptor.set(BeanPropertyDescriptor.java:142)
at org.apache.axis.encoding.ser.BeanPropertyTarget.set(BeanPropertyTarget.java:75)
... 73 more
有关如何解决这个问题的想法吗?
我读到了here
使用-w参数创建客户端存根时可以解决此问题。
java org.apache.axis.wsdl.WSDL2Java -w name.wsdl
将不再出现错误。
这适用于我的情况吗?如果是,我该怎么办?我正在使用apache-ant进行部署。
答案 0 :(得分:1)
curl -H“Content-Type:text / xml; charset = utf-8”-H“SOAPAction :(您的操作网址)” - d @(请求输入文件路径)(webservices url)> (响应输出文件路径)
将此命令与适当的输入一起使用。如果得到正确的输出,那么在解析响应时就会出错。