我使用grails wslite插件来使用soap web服务,如果未指定参数,我可以从body部分调用service方法,即可从该服务方法获取结果。但我试图传递参数即时收到错误
soap:Client - Unmarshalling Error:意外元素(uri:“htp:// soapauth /”,local:“parameters”)。预期元素为< {} count>,< {} status>
我这样的肥皂服务方法,我使用grails cxf插件将其作为服务公开 @WebMethod(operationName =“getReqMethod”,action =“getReqMethod”)
String getReqMethod(
@WebParam( name="count") Integer count, @WebParam(name="status") String status ){
print " in service "+count+" -- "+status
}
我控制器中的wslite客户端代码如下。
def index(){
withSoap(serviceURL: 'http://mysite.com/SoapAuth/services/sampleReq') {
def response = send(SOAPAction: "getReqMethod") {
header() {
auth {
username("wsuser")
password("secret")
}
}
body{
getReqMethod("xmlns": 'htp://soapauth/')
{
parameters{
count(2)
status("active")
}
}
}
}
println "res "+response.getReqMethodResponse.text()
}
答案 0 :(得分:0)
不应该只是这而不是parameters
关闭吗?
getReqMethod("xmlns": 'http://soapauth/') {
count(2)
status("active")
}