调用远程接口报错

狼王_ 2016-06-14 11:39:42
编写的java项目访问远程接口获取数据,发布到服务器后调用程序报错:
(Exception :Couldn't find a binding provider!. Nested exception is java.lang.ClassNotFoundException: org.codehaus.xfire.aegis.AegisBindingProvider (in EnvironmentClassLoader[web-app:production/webapp/default/ROOT])

通过浏览器地址: http://api.yimeijian.cn:7080/user/getLRSByA?name=田甜&documentNo=130825199303262720&startTime=2012°ree=本科&college=北京化工大学


@RequestMapping("/getLRSByA")
public String getLRSBy(String name,String documentNo,String startTime,String degree,String college,Model model)
{
strResult=new StringBuilder("{");
try {
String queryInfo = "<?xml version=\"1.0\" encoding=\"GBK\"?><conditions><condition queryType=\"25184\"><item> <name>name</name> <value>"
+ name + "</value> </item> <item> <name>documentNo</name> <value>"
+ documentNo
+ "</value> </item> <item> <name>applyMoney</name> <value>10000</value> </item> <item> <name>applyPeriod</name> <value>12</value> </item> <item> <name>returnAmountBank</name> <value></value> </item> <item> <name>returnAmountLoan</name> <value></value> </item> <item> <name>contact</name> <value></value> </item> <item> <name>emersencyContact</name> <value></value> </item> <item> <name>startTime</name> <value>"
+ startTime + "</value> </item> <item> <name>degree</name> <value>"
+ degree + "</value> </item> <item> <name>college</name> <value>"
+ college
+ "</value> </item> <item> <name>scholarship</name> <value></value> </item> <item> <name>fullTime</name> <value></value> </item> <item> <name>companyParttime</name> <value></value> </item> <item> <name>subreportIDs</name><value>91103</value> </item> <item> <name>refID</name> <value></value> </item> </condition></conditions>";
//调用 webservice
Client client = new Client(
new URL("http://www.pycredit.com:8001/services/WebServiceSingleQueryOfUnzip?wsdl"));
// 得到子报告结果
Object[] results = client.invoke("queryReport",
new Object[] { "jylhwsquery", "rx7318sLpkpY3tB4NQH8fw==", queryInfo, "xml" });
if (results[0] instanceof String) {
//返回字符串,解析处理字符串内容
String strS=results[0].toString().replaceAll("\t", "");
//strResult.append(strS.substring(52, strS.length()-28));
changeResult(strS.substring(52, strS.length()-28));
} else if (results[0] instanceof org.w3c.dom.Document) {
// 返回字符串Document,解析处理Document内容
// 解析dom树
org.w3c.dom.Document doc = (org.w3c.dom.Document) results[0];
org.w3c.dom.Element element = doc.getDocumentElement();
org.w3c.dom.NodeList children = element.getChildNodes();
org.w3c.dom.Node node = children.item(0);
String strS=node.getNodeValue().replaceAll("\t", "");
//strResult.append(strS.substring(52, strS.length()-28));
changeResult(strS.substring(52, strS.length()-28));
}
strResult.deleteCharAt(strResult.length()-1).append("}");
//strResult.append("myresult}");
} catch (Exception e) {
strResult =new StringBuilder("(Exception :" + e.getMessage());
}
model.addAttribute("result",strResult);
return "success";
}
...全文
436 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
狼王_ 2016-06-14
  • 打赏
  • 举报
回复
是因为程序缺少 xfire-aegis-1.2.6.jar 的引用,通过百度 org.codehaus.xfire.aegis.AegisBindingProvider 可以发现org.codehaus.xfire.aegis.AegisBindingProvider 类是属于 xfire-aegis-1.2.6.jar 包,将该包引入程序即可。
狼王_ 2016-06-14
  • 打赏
  • 举报
回复
引用 1 楼 qnmdcsdn 的回复:
. Nested exception is java.lang.ClassNotFoundException: org.codehaus.xfire.aegis.AegisBindingProvider 说的是没xfire的jar吧
但是我看发布的项目的lib目录中有 xfire.jar这个包啊
  • 打赏
  • 举报
回复
. Nested exception is java.lang.ClassNotFoundException: org.codehaus.xfire.aegis.AegisBindingProvider 说的是没xfire的jar吧

81,092

社区成员

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

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