dubbo 调用webservice ,本地可以调用。部署到服务器上报错

菜鸟江江 2017-12-19 09:15:47
使用这个webservice

public class WebServiceUtils {
public static Object callService(String wsdl, String method, Object... args) {
JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
Client client = dcf.createClient(wsdl);
Object[] res = null;
try {
res = client.invoke(method, args);
if (res != null) {
return res[0];
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}

使用 dubbo 方法 上调用
	public Dto ygzwInfo3933(RequestBodyContent requestBodyContent){
Dto dto = getDefaultDto();
HeaderResponse response = new HeaderResponse();
ArrayList<JSONObject> ls = new ArrayList<JSONObject>();
List<JSONObject> data = requestBodyContent.getData();
JSONObject js = new JSONObject(); //json 串
boolean flag = false;
StringBuffer sb = new StringBuffer();
String sb1 = null;
for (JSONObject json : data) {
sb.append("<?xml version='1.0' encoding='UTF-8'?>");
sb.append("<SbkPlatRequestParameter>");
sb.append("<CTRL-INFO WEBSVRNAME='GETYHKH' WEBSVRCODE='GETYHKH' APPFROM='111111' KEEP='1232131' CLIENTID='12' CLIENTHASH='111'/>");
sb.append("<PARAMETERS>");

sb.append("<ZJLX>1</ZJLX>");
sb.append("<ZJHM>");
sb.append(json.getString("sfzh"));
sb.append("</ZJHM>");
sb.append("<XM>");
sb.append(json.getString("xm"));
sb.append("</XM>");
sb.append("</PARAMETERS>");
sb.append("</SbkPlatRequestParameter>");
}
try {
System.out.println(sb);
String xml = (String)WebServiceUtils.callService("http://1x.xx.xx.xx:xx/wzsbk_webservice/services/gsService?wsdl", "callSbkGateway", sb.toString());
Document doc;

doc = (Document)DocumentHelper.parseText(xml);
Element books = doc.getRootElement();
sb1 = books.element("RESULTDATESET").element("DATAS").element("YHKH").getText();
System.out.println(sb1);

} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(sb1 == null || "".equals(sb1)){
HeaderResponse hrs = new HeaderResponse();
hrs.setCode("11");
hrs.setMessage("插入失败,请检查字段是否正确 或者接口是否接通");
hrs.setStatus("fail");
// dto.setData(res);
dto.setHeader(hrs);
js.put("code", "11");
js.put("message", "fail");

ls.add(js);
dto.setData(ls);
return dto;
}
response.setCode("00");
response.setMessage("成功");
response.setStatus("success");
dto.setHeader(response);
js.put("code", "00");
js.put("message", "成功");
js.put("yhkh", sb1);
ls.add(js);
dto.setData(ls);
return dto;


然后本地调用都可以的。部署到服务器上 就报错了
<?xml version='1.0' encoding='UTF-8'?><SbkPlatRequestParameter><CTRL-INFO WEBSVRNAME='GETYHKH' WEBSVRCODE='GETYHKH' APPFROM='111111'  KEEP='1232131' CLIENTID='12' CLIENTHASH='111'/><PARAMETERS><ZJLX>1</ZJLX><ZJHM>33032719730630</ZJHM><XM>闄堜腹涓?/XM></PARAMETERS></SbkPlatRequestParameter>

[Ljava.lang.Object;@299f00cc
ERROR: com.alibaba.dubbo.rpc.filter.ExceptionFilter - [DUBBO] Got unchecked and undeclared exception which called by 17.178.201.140. service: com.tzsw.dubbox.business.service.YgzwInfoService, method: ygzwInfo3933, exception: java.lang.IllegalStateException: Unable to create schema compiler, dubbo version: 2.8.4, current host: 127.0.0.1
java.lang.IllegalStateException: Unable to create schema compiler
at org.apache.cxf.common.jaxb.JAXBUtils.createSchemaCompilerWithDefaultAllocator(JAXBUtils.java:663)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createSchemaCompiler(DynamicClientFactory.java:422)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:306)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:240)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:233)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:188)
at com.tzsw.utilss.WebServiceUtils.callService(WebServiceUtils.java:15)
at com.tzsw.dubbox.business.service.impl.YgzwInfoServiceImpl.ygzwInfo3933(YgzwInfoServiceImpl.java:1966)
at com.alibaba.dubbo.common.bytecode.Wrapper3.invokeMethod(Wrapper3.java)
at com.alibaba.dubbo.rpc.proxy.javassist.JavassistProxyFactory$1.doInvoke(JavassistProxyFactory.java:46)
at com.alibaba.dubbo.rpc.proxy.AbstractProxyInvoker.invoke(AbstractProxyInvoker.java:72)
at com.alibaba.dubbo.rpc.protocol.InvokerWrapper.invoke(InvokerWrapper.java:53)
at com.alibaba.dubbo.rpc.filter.TokenFilter.invoke(TokenFilter.java:49)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.ExceptionFilter.invoke(ExceptionFilter.java:64)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.TimeoutFilter.invoke(TimeoutFilter.java:42)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.monitor.support.MonitorFilter.invoke(MonitorFilter.java:75)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.protocol.dubbo.filter.TraceFilter.invoke(TraceFilter.java:78)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.ContextFilter.invoke(ContextFilter.java:70)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.GenericFilter.invoke(GenericFilter.java:132)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.ClassLoaderFilter.invoke(ClassLoaderFilter.java:38)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.EchoFilter.invoke(EchoFilter.java:38)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.proxy.InvokerInvocationHandler.invoke(InvokerInvocationHandler.java:52)
at com.alibaba.dubbo.common.bytecode.proxy1.ygzwInfo3933(proxy1.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:137)
at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:288)
at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:242)
at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:229)
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:356)
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:179)
at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:220)
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at com.alibaba.dubbo.rpc.protocol.rest.DubboHttpServer$RestHandler.handle(DubboHttpServer.java:86)
at com.alibaba.dubbo.remoting.http.servlet.DispatcherServlet.service(DispatcherServlet.java:64)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)

...全文
249 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧