- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我从客户端调用的 Web 服务工作正常,直到我为身份验证添加了 SOAP header ,现在客户端收到以下错误
<faultcode>S:Client</faultcode><faultstring>Cannot find dispatch method
for {http://com.analysis.num/}doNumAnalysis</faultstring>
以下是 WSDL,其中包括最近为在 SOAP header 中添加身份验证信息所做的更改,我在这里是否遗漏了任何明显的内容?
<?xml version='1.0' encoding='UTF-8'?>
<definitions xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wsp="http://www.w3.org/ns/ws-policy" xmlns:wsp1_2="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://com.analysis.num/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://com.analysis.num/" name="NumericAnalysisService">
<types>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0"
targetNamespace="http://com.analysis.num/">
<xs:element name="doNumAnalysis" type="tns:doNumAnalysis" />
<xs:element name="doNumAnalysisResponse" type="tns:doNumAnalysisResponse" />
<xs:complexType name="doNumAnalysis">
<xs:sequence>
<xs:element name="numRequest" type="tns:numRequest" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="numRequest">
<xs:sequence>
<xs:element name="Analysis_Type" type="xs:string" />
<xs:element name="Analysis_Id" type="xs:string" />
<xs:element name="Customer_Id" type="xs:string" />
<xs:element name="Source_Request_Id" type="xs:string" />
<xs:element name="Destination_Request_Id" type="xs:string" />
<xs:element name="Target_Customer_Id" minOccurs="0" type="xs:string" />
<xs:element name="AnalysisFile" minOccurs="0" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="doNumAnalysisResponse">
<xs:sequence />
</xs:complexType>
<xs:element name="AuthenticationInfo" type="tns:AuthenticationInfo"/>
<xs:complexType name="AuthenticationInfo">
<xs:sequence>
<xs:element name="userName" type="xsd:string"/>
<xs:element name="password" type="xsd:string"/>
<xs:element minOccurs="0" name="authentication" type="xsd:string"/>
<xs:element minOccurs="0" name="locale" type="xsd:string"/>
<xs:element minOccurs="0" name="timeZone" type="xsd:string"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
</types>
<message name="doNumAnalysis">
<part name="parameters" element="tns:doNumAnalysis" />
</message>
<message name="doNumAnalysisResponse">
<part name="parameters" element="tns:doNumAnalysisResponse" />
</message>
<message name="ARAuthenticate">
<part element="tns:AuthenticationInfo" name="parameters">
</part>
</message>
<portType name="NumericAnalysisService">
<operation name="doNumAnalysis">
<input wsam:Action="http://com.analysis.num/NumericAnalysisService/doNumAnalysisRequest" message="tns:doNumAnalysis" />
<output wsam:Action="http://com.analysis.num/NumericAnalysisService/doNumAnalysisResponse" message="tns:doNumAnalysisResponse" />
</operation>
</portType>
<binding name="NumericAnalysisServicePortBinding" type="tns:NumericAnalysisService">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
<operation name="doNumAnalysis">
<soap:operation soapAction="" />
<input>
<soap:header message="tns:ARAuthenticate" part="parameters" use="literal">
</soap:header>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
</binding>
<service name="NumericAnalysisService">
<port name="NumericAnalysisServicePort" binding="tns:NumericAnalysisServicePortBinding">
<soap:address location="https://testserver/bmcems/NumericAnalysisService" />
</port>
</service>
</definitions>
最佳答案
找到上述问题的答案,问题是 SOAP header 的新消息部分使用名称 parameters
已经在使用中,将其重命名为 authParameters
解决了这个问题。
上述 WSDL 中的以下更改修复了此问题:
<message name="ARAuthenticate">
<part element="tns:AuthenticationInfo" name="
参数
authParameters">
...
<soap:header message="tns:ARAuthenticate" part="
参数
authParameters" use="literal">
</soap:header>
<soap:body use="literal" />
关于web-services - Web 服务调用返回 faultString "Cannot find dispatch method for namespace/soapAction",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16996499/
我有一个 asmx 服务和一个抛出 soap 异常的方法。问题是当发生异常时我得到以下错误字符串。 System.Web.Services.Protocols.SoapException: Error
我正在尝试使用 Axis 生成的 stub 进行 Web 服务调用。 当它试图获得响应时,它正在运行并给出以下异常。 当我使用 : 查看我的回复消息时 String responseMsg = stu
我已经使用 IIS 配置的 servletexec 部署了一个 Web 服务,并且我可以使用匿名帐户成功访问 Web 服务。但是当我启用 Windows 集成身份验证时,我收到以下错误。 - nt
你好,我正在开发一个使用 Magento 作为后端的 Android 应用程序,我正在使用 magento 的 SOAP webervice,我已经将所有产品、客户和客户地址信息添加到购物车,但是当我
我从客户端调用的 Web 服务工作正常,直到我为身份验证添加了 SOAP header ,现在客户端收到以下错误 S:ClientCannot find dispatch method for {
我在使用 Soap 时遇到错误。我已经尝试了很多,但我无法解决这个问题。一切都很好,但也不知道出了什么问题。 我得到了 WebsiteURL、NameSpace 和 MethodName 的完美结果。
我有一个用 asp.net 编程的网络服务。我想使用 SOAP(ksoap2) 从 Android 应用程序访问 Web 服务。 这是我的 SOAP fragment , //Namespace of
我正在使用 soap base 网络服务.. 我使用了这个 example n 我能够进行解析并获得响应,但是当我通过对其进行一些更改来尝试不同的响应时。我在我的项目中遇到以下提到的错误我的代码在下面
我正在使用 eclipse 在 android 上进行开发,我正在尝试连接到 .net 网络服务...当我调用网络方法时,在显示的日志猫中检查时无法获取数据 **10-27 11:46:44.222:
我在访问 xmlrpc 时遇到问题。每当我尝试通过此 http://localhost/joomla/xmlrpc 链接访问 xmlrpc 时,我都会收到以下错误: faultCode 105 fau
我正在使用 KSoap2 访问 SAP 网络服务。 下面是我的代码 package com.example.getcustomerwsdl; public class GetCustomerActiv
这种问题已经在SO里问过了。但我没有得到我想要的。我是 magento 和 android 应用程序开发的新手。我已经为 magento 配置了 SOAP api,它在我的浏览器中工作正常,我正在使用
我是一名优秀的程序员,十分优秀!