CXF调用SAP系统webService报错 XXX is not known in this context 5
本地是CXF+spring调用SAP系统的部署服务,使用cxf2.6.1代码如下:JaxWsDynamicClientFactorydcf=JaxWsDynamicCli...
本地是CXF+spring调用SAP系统的部署服务,使用cxf2.6.1
代码如下:
JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
client = dcf.createClient(“此处为正确的SAP服务地址”);
result = client.invoke("ZgetMmMerge", paraXmlString);
其中参数ZgetMmMerge为SAP系统服务的方法名称,paraXmlString为已经按照固定格式封装好的XML字符串
调用此代码时报错为:
Caused by: javax.xml.bind.JAXBException: com.sap.document.sap.soap.functions.mc_style.ZgetMmMerge is not known to this context
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getBeanInfo(JAXBContextImpl.java:619)
at com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl$1.serializeBody(ElementBeanInfoImpl.java:145)
我的疑问:1、目前在此调用的SAP服务地址下有很多调用的方法,其余的方法均采用这种方式调用且均没有任何问题,为什么单独ZgetMmMerge这个会有问题?2、此问题在重启tomcat服务后有时候会变好,有时候反复重启tocat都不行3、查看过很多网上的材料,都说是因为参数传入时为特殊类型,不是JAVA基本护具类型,但是这个的参数是XML字符串,应该不会存在这样的问题!
请高手解答,跪谢! 展开
代码如下:
JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
client = dcf.createClient(“此处为正确的SAP服务地址”);
result = client.invoke("ZgetMmMerge", paraXmlString);
其中参数ZgetMmMerge为SAP系统服务的方法名称,paraXmlString为已经按照固定格式封装好的XML字符串
调用此代码时报错为:
Caused by: javax.xml.bind.JAXBException: com.sap.document.sap.soap.functions.mc_style.ZgetMmMerge is not known to this context
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getBeanInfo(JAXBContextImpl.java:619)
at com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl$1.serializeBody(ElementBeanInfoImpl.java:145)
我的疑问:1、目前在此调用的SAP服务地址下有很多调用的方法,其余的方法均采用这种方式调用且均没有任何问题,为什么单独ZgetMmMerge这个会有问题?2、此问题在重启tomcat服务后有时候会变好,有时候反复重启tocat都不行3、查看过很多网上的材料,都说是因为参数传入时为特殊类型,不是JAVA基本护具类型,但是这个的参数是XML字符串,应该不会存在这样的问题!
请高手解答,跪谢! 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询