因为要去调用别人提供的web service的服务端程序
出现一个错误
在网上查询了好多信息,都没有结果。错误信息的提示是xml解析错误,于是尝试的访问上面的那个网址,发现那个网址对应的页面根本不是xml,而是一个html的说明文档。巧合的是在这个文档中发现了这个链接
"http://*****.*****.*****/soap/*****.php?wsdl"
访问进去一看,正是要查找的xml文件
于是把变量wsdl重新赋值
这个问题解决了
参考文章
[url]http://qa.taobao.com/?p=4605[/url]
------------------------------------------------
[b]wsdl方法的调用[/b]
使用SOAP::WSDLDriverFactory之后,方法的调用极其简单
比如服务端有一个叫做
直接
wsdl = "http://***.****.***/soap/****.php"
# 创建远程调用,取得服务端的服务描述文件WSDL
driver = SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
出现一个错误
WSDL::XMLSchema::Parser::UnknownElementError: unknown element: {}html
在网上查询了好多信息,都没有结果。错误信息的提示是xml解析错误,于是尝试的访问上面的那个网址,发现那个网址对应的页面根本不是xml,而是一个html的说明文档。巧合的是在这个文档中发现了这个链接
"http://*****.*****.*****/soap/*****.php?wsdl"
访问进去一看,正是要查找的xml文件
于是把变量wsdl重新赋值
这个问题解决了
wsdl = "http://*****.*****.*****/soap/*****.php?wsdl"
# 创建远程调用,取得服务端的服务描述文件WSDL
driver = SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
参考文章
[url]http://qa.taobao.com/?p=4605[/url]
------------------------------------------------
[b]wsdl方法的调用[/b]
使用SOAP::WSDLDriverFactory之后,方法的调用极其简单
比如服务端有一个叫做
getSysTime(String key)
的方法
直接
driver.getSysTime("参数值")
这样调用即可