我一直在为这个问题苦苦挣扎一段时间,所有的搜索结果(我读过很多)似乎都不适用于我的情况。
我有一个带有子流的 Websphere Message Broker 消息流,该子流调用在 Visual Studio 中编写的 Web 服务。我正在尝试在网关模式下调用此 Web 服务,这意味着我没有 WSDL 可以插入我用来编写此流程的代理工具包中的 SOAP 请求节点的属性中。
我收到的错误消息很常见:
由于 EndpointDispatcher 的 ContractFilter 不匹配,接收方无法处理带有 Action SendEmail 的消息。这可能是因为合约不匹配(发送方和接收方之间的操作不匹配)或发送方和接收方之间的绑定/安全不匹配。检查发送方和接收方是否具有相同的合同和相同的绑定(包括安全要求,例如消息、传输、无)。
我不确定如何进行此操作。由于网关模式,许多属性在 SOAP 请求节点的属性中是不可配置的。我可以在 ESQL 代码中设置这些,也许在 HTTPRequestHeader 之类的消息中?
我正在使用 Websphere 8,Broker Toolkit 7.5。消息的传输是 HTTP,不使用 SSL。WS-Addressing 也没有被使用。
任何建议都将受到欢迎。