搞了几天SOAP,总是没有输出WSDL文件,用客户端詷用,要等半天服务器端才出现,并且客户端立刻死掉(100分)

  • 主题发起人 主题发起人 testnet
  • 开始时间 开始时间
T

testnet

Unregistered / Unconfirmed
GUEST, unregistred user!
哪有这方面的例子,怎样输出WSDL文件。
 
网络连接问题?!
 
delphi6的Web Service实现的源代码有BUG:SOAPAction为空的时候,一般应该是有
SOAPAction: ""
但DELPHI6将它去掉了后面的引号。结果是会导致客户端出AV错误。
解决办法:修改delphi6 SoapHTTPTrans.pas,注释掉273行开始的三行代码:
// if FSoapAction = '' then
// ActionHeader := SHTTPSoapAction + ':'
// else

另外,如果使用UseUTF8InHeader=true,delphi 6 产生的Content_Type是:
Content-Type: text/xml charset="utf-8"
在一些需要解析Content_type的WebService上会产生错误。应将251行改成:
ContentHeaderUTF8 = 'Content-Type: text/xml; charset="utf-8"';

 
zc,您好,您确定据说的吗?
正想弄这方面的东西,多多指点啊!
 
我当然确定啊,是我实践出来的哦。
如果客户端、服务器端都是delphi开发的,不会有什么问题。
但如果服务器端是其他的,比如java,则可能会出错。
我的环境配置是这样的:
服务器端:tomcat 4.0, apache soap 2.2, 运行平台:Win2000或rh linux 7.1
 
多人接受答案了。
 

Similar threads

后退
顶部