当前位置: 技术问答>java相关
关于用delphi调用Tomcat Soap的问题
来源: 互联网 发布时间:2015-02-20
本文导语: 在Delphi下使用WSDL生成SOAP客户端存根,再对SOAP方法进行调用,如果在调用中存在对象(指方法的参数含有对象),则TOMCAT对该调用无法进行解释(请参看SOAP包的具体内容),如果方法的参数中没有对象,则TOMCAT可以...
在Delphi下使用WSDL生成SOAP客户端存根,再对SOAP方法进行调用,如果在调用中存在对象(指方法的参数含有对象),则TOMCAT对该调用无法进行解释(请参看SOAP包的具体内容),如果方法的参数中没有对象,则TOMCAT可以返回正确结果,但在Delphi下却对结果进行了错误的解释,而且会产生非法存取的错误。请问如何解决,谢谢。
下面是soap包的内容:
调用方:
POST /soap/servlet/rpcrouter HTTP/1.1
Accept: application/octet-stream, text/xml
Content-Type: text/xml
User-Agent: Borland SOAP 1.1
Host: localhost:8080
Content-Length: 908
Connection: Keep-Alive
Cache-Control: no-cache
This string will be added.00
服务器方:
HTTP/1.1 500 Internal Server Error
Content-Type: text/xml; charset=utf-8
Content-Length: 546
Date: Mon, 05 Nov 2001 06:03:08 GMT
Server: Apache Tomcat/4.0.1 (HTTP/1.1 Connector)
Set-Cookie: JSESSIONID=911581F0000825A542823899C238F1E0;Path=/soap
SOAP-ENV:Client
Unable to retrieve PropertyDescriptor for
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
property 'NS2:streetNum' of class 'class
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
samples.addressbook.Address'.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/soap/servlet/rpcrouter
下面是soap包的内容:
调用方:
POST /soap/servlet/rpcrouter HTTP/1.1
Accept: application/octet-stream, text/xml
Content-Type: text/xml
User-Agent: Borland SOAP 1.1
Host: localhost:8080
Content-Length: 908
Connection: Keep-Alive
Cache-Control: no-cache
This string will be added.00
服务器方:
HTTP/1.1 500 Internal Server Error
Content-Type: text/xml; charset=utf-8
Content-Length: 546
Date: Mon, 05 Nov 2001 06:03:08 GMT
Server: Apache Tomcat/4.0.1 (HTTP/1.1 Connector)
Set-Cookie: JSESSIONID=911581F0000825A542823899C238F1E0;Path=/soap
SOAP-ENV:Client
Unable to retrieve PropertyDescriptor for
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
property 'NS2:streetNum' of class 'class
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
samples.addressbook.Address'.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/soap/servlet/rpcrouter
|
这是delphi实现soap的一点问题,
我可以给你修改了的delphi(soap)源码,就OK了。
我可以给你修改了的delphi(soap)源码,就OK了。