delhi调用java写的webservice,有的时候报错:
Received content of invalid Content-Type setting:text/html - SOAP expects "text/xml"
这个是时有时无,
查了一下,都是说delphi写的websrvice里面的 ISAPIThreadPool,ISAPIApp,调换一下位置就好了(说是他们有同门函数,有个处理线程有bug),
但我这个是java写的webservice,用weblogic部署的,jdk1.4,数据库是9i,后面升级到10g了,最开始在java后台看到得错误时ava.sql.SQLException: 无效的 SQL 类型
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:208)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:76)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:955)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3316)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3361)
at weblogic.jdbc.wrapper.PreparedStatement.executeQuery(PreparedStatement.java:131)
at wserver.base.bean.BaseGeneralBean.executeSqlToSelect(BaseGeneralBean.java:617)
at wserver.base.bean.BaseGeneral_g3lo5s_EOImpl.executeSqlToSelect(BaseGeneral_g3lo5s_EOImpl.java:254)
at wserver.base.bean.BaseGeneral_g3lo5s_EOImpl_CBV.executeSqlToSelect(Unknown Source)
at sun.reflect.GeneratedMethodAccessor29.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at weblogic.webservice.component.slsb.SLSBInvocationHandler.invoke(SLSBInvocationHandler.java:88)
at weblogic.webservice.core.handler.InvokeHandler.handleRequest(InvokeHandler.java:104)
at weblogic.webservice.core.HandlerChainImpl.handleRequest(HandlerChainImpl.java:143)
at weblogic.webservice.core.DefaultOperation.process(DefaultOperation.java:549)
at weblogic.webservice.server.Dispatcher.process(Dispatcher.java:204)
at weblogic.webservice.server.Dispatcher.doDispatch(Dispatcher.java:176)
at weblogic.webservice.server.Dispatcher.dispatch(Dispatcher.java:96)
at weblogic.webservice.server.WebServiceManager.dispatch(WebServiceManager.java:100)
at weblogic.webservice.server.servlet.WebServiceServlet.serverSideInvoke(WebServiceServlet.java:297)
at weblogic.webservice.server.servlet.ServletBase.doPost(ServletBase.java:498)
at weblogic.webservice.server.servlet.WebServiceServlet.doPost(WebServiceServlet.java:267)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:348)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)是sql类型无效不是语句无效
java后台就换了jdbc driver 由原来的class12.jar升级到了ojdbc.jar,这下前台delphi报错时,后台连错误都不出了,
但delphi前台显示的错误还是一样,也还是时有是无的.
我跟踪delphi的就是在客户端调用java后台方法那里报错了.//webserport=interface(IInvokable)
//rp就是webserport的实例,method是一个客户端注册过了的方法.
rp.method();大家帮我看看,说说思路也好,明天我再加100分.
Received content of invalid Content-Type setting:text/html - SOAP expects "text/xml"
这个是时有时无,
查了一下,都是说delphi写的websrvice里面的 ISAPIThreadPool,ISAPIApp,调换一下位置就好了(说是他们有同门函数,有个处理线程有bug),
但我这个是java写的webservice,用weblogic部署的,jdk1.4,数据库是9i,后面升级到10g了,最开始在java后台看到得错误时ava.sql.SQLException: 无效的 SQL 类型
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:208)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:76)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:955)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3316)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3361)
at weblogic.jdbc.wrapper.PreparedStatement.executeQuery(PreparedStatement.java:131)
at wserver.base.bean.BaseGeneralBean.executeSqlToSelect(BaseGeneralBean.java:617)
at wserver.base.bean.BaseGeneral_g3lo5s_EOImpl.executeSqlToSelect(BaseGeneral_g3lo5s_EOImpl.java:254)
at wserver.base.bean.BaseGeneral_g3lo5s_EOImpl_CBV.executeSqlToSelect(Unknown Source)
at sun.reflect.GeneratedMethodAccessor29.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at weblogic.webservice.component.slsb.SLSBInvocationHandler.invoke(SLSBInvocationHandler.java:88)
at weblogic.webservice.core.handler.InvokeHandler.handleRequest(InvokeHandler.java:104)
at weblogic.webservice.core.HandlerChainImpl.handleRequest(HandlerChainImpl.java:143)
at weblogic.webservice.core.DefaultOperation.process(DefaultOperation.java:549)
at weblogic.webservice.server.Dispatcher.process(Dispatcher.java:204)
at weblogic.webservice.server.Dispatcher.doDispatch(Dispatcher.java:176)
at weblogic.webservice.server.Dispatcher.dispatch(Dispatcher.java:96)
at weblogic.webservice.server.WebServiceManager.dispatch(WebServiceManager.java:100)
at weblogic.webservice.server.servlet.WebServiceServlet.serverSideInvoke(WebServiceServlet.java:297)
at weblogic.webservice.server.servlet.ServletBase.doPost(ServletBase.java:498)
at weblogic.webservice.server.servlet.WebServiceServlet.doPost(WebServiceServlet.java:267)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:348)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)是sql类型无效不是语句无效
java后台就换了jdbc driver 由原来的class12.jar升级到了ojdbc.jar,这下前台delphi报错时,后台连错误都不出了,
但delphi前台显示的错误还是一样,也还是时有是无的.
我跟踪delphi的就是在客户端调用java后台方法那里报错了.//webserport=interface(IInvokable)
//rp就是webserport的实例,method是一个客户端注册过了的方法.
rp.method();大家帮我看看,说说思路也好,明天我再加100分.
解决方案 »
- 求方法或工具
- 很急!!!!
- 一个query,loadfromfile一个txt文件,这个txt文件里存放着一些数据,其中有一个字段是a如果过滤掉a<2的数据?
- 请问delphi6的几个internet控件问题,谢谢!········:)
- 能不能在从两个存储过程返回的数据上使用主从表关系.
- 使用socket传送文件时到accept时程序死掉了,大家帮忙看看哈
- 请问DELPHI中有如VB中的split(),ubound()的函数吗?快答!
- 各位大侠如何做 hlp 文件,请详细一些
- 结构数组???
- 三层结构的更新数据问题
- Currency问题
- SQL语句写入delphi的adoquery.sql.add中
这个错误是说返回的内容的Content-Type设置为text/html,而SOAP期望为text/xml,我觉得可能是webservice那边的问题,想办法指定Content-Type为text/xml一下
咱说话要算数,这是另外100分的链接.大家帮我顶顶吧,顶顶也有份
//webserport=interface(IInvokable)
//rp就是webserport的实例,method是一个客户端注册过了的方法.
rp.method();
这里已经是调用delphi本身的方法了,,错误就是在里面抛出的,而webservice都没抛出错误
2.使用高版本的Delphi进行一下测试,D7调用Webservice的确会出现一些奇怪的问题
高版本的D不知道哪版好点,因为一直用的是D7,而且程序里有用到第三方控件还有一些自己的控件