请高手指教!一个关于webservice的调用问题!

xxycumt 2007-06-29 11:51:06
我写了一个调用webservice程序,名称为XmlInterface.java,功能是把数据库里面的某段日期内的数据库记录打包到xml文件里面返回,如果在这个程序里面写一个main函数执行的话是没有问题的可以获得返回的xml字符串,但是我把这个应用放到jsp去调用的的话总是出错误!

调用服务源程序为:
public String getXMLStr(String opName, String stamp_s, String stamp_e) throws ServiceException, MalformedURLException, RemoteException
{
String res = null;
try
{
String endpoint="http://10.1.93.24/CigaTransService/CigaData.asmx";
String TokenRing = "D998241C38EB9DCDB4C5B8C826630FF2C6A637F3";
Service service = new Service();
Call call = (Call)service.createCall();
call.setTargetEndpointAddress(new java.net.URL(endpoint));
call.setOperationName(new QName("http://localhost/CigaTransService/"+opName+"/SU",opName));
call.addParameter("TokenRing",org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);
call.addParameter("stamp_s",org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);
call.addParameter("stamp_e",org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
call.setUseSOAPAction(true);
call.setSOAPActionURI("http://localhost/CigaTransService/"+opName+"/Rpc");

res = (String)call.invoke(new Object[]{TokenRing,stamp_s,stamp_e});
li_temp=res.length();
return res;
}
catch(Exception e){
System.out.println("错误:"+e.toString());
return res;
}
}
jsp 页面调用为:
String ls_xml;
ls_xml="";
XmlInterface xmltest=new XmlInterface();
ls_xml=xmltest.getXMLStr("GetCigaXYDataForJAVA","2007-01-01 00:00:00","2007-01-25 00:00:00");

out.println(xmltest.getLength());
错误代码为:
java.lang.IncompatibleClassChangeError
at org.apache.axis.message.MessageElement.addTextNode(MessageElement.java:1387)
at org.apache.axis.message.SOAPHandler.endElement(SOAPHandler.java:118)
at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1083)
at com.caucho.xml.XmlParser.popNode(XmlParser.java:924)
at com.caucho.xml.XmlParser.closeTag(XmlParser.java:811)
at com.caucho.xml.XmlParser.parseNode(XmlParser.java:358)
at com.caucho.xml.XmlParser.parseInt(XmlParser.java:240)
at com.caucho.xml.AbstractParser.parse(AbstractParser.java:633)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:226)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:645)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:173)
at org.apache.axis.client.Call.invokeEngine(Call.java:2719)
at org.apache.axis.client.Call.invoke(Call.java:2702)
at org.apache.axis.client.Call.invoke(Call.java:2378)
at org.apache.axis.client.Call.invoke(Call.java:2301)
at org.apache.axis.client.Call.invoke(Call.java:1758)
at com.njmz.crm.XmlInterface.getXMLStr(XmlInterface.java:36)
at _jsp._test__jsp._jspService(_test__jsp.java:34)
at com.caucho.jsp.JavaPage.service(JavaPage.java:60)
at com.caucho.jsp.Page.pageservice(Page.java:570)
at com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:159)
at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:163)
at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:208)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:259)
at com.caucho.server.port.TcpConnection.run(TcpConnection.java:363)
at com.caucho.util.ThreadPool.runTasks(ThreadPool.java:490)
at com.caucho.util.ThreadPool.run(ThreadPool.java:423)
at java.lang.Thread.run(Thread.java:534)

...全文
288 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
songfuqiang 2007-08-24
  • 打赏
  • 举报
回复
帮顶,没碰到过!..
xxycumt 2007-06-29
  • 打赏
  • 举报
回复
恳求指教!
xxycumt 2007-06-29
  • 打赏
  • 举报
回复
服务器为:resin

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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