1

我在 MULE 3.3.0 CE 中通过 https/ssl 使用 .NET Web 服务时遇到了这个问题。我希望有人有一个好主意来解决这个问题。这在 Mule 之外运行良好,使用 CXF 库 (2.5.1) 和相同的 JRE (7) Mule 使用。然后我想 Mule 还使用我安装了信任证书的 jre 密钥库。

我已经用 wsdl2java 生成了代理类。该服务使用 Web 服务安全用户名令牌,配置文件 1.1。服务和服务器不在我的控制范围内(这是一项公共服务)。

我知道我不使用 mule 出站传输连接到服务。我只是想从 java 类内部创建和使用服务。尝试过其他骡子配置,但没有运气。

这是我的骡子配置:

<flow name="flow1" >
        <http:inbound-endpoint exchange-pattern="request-response" address="http://localhost:8080/server" doc:name="HTTP endpoint"/>
        <jersey:resources doc:name="ServerResources RESTful service">
            <component class="my.code.ServerResourceImpl"/>
        </jersey:resources>
</flow>    

Innside ServerResourceImpl 类我这样做:

service = new xWebService();
port = service.getBasicHttpBindingBalanseWebService();

Map<String, Object> reqContext = ((BindingProvider)port).getRequestContext();
            reqContext.put("ws-security.username", "username");
            reqContext.put("ws-security.password", "password");

String s = port.test();

我可以成功创建服务,但是我对测试方法的调用失败并出现以下错误: javax.xml.ws.soap.SOAPFaultException: An error occurred when verifying security for the message

非常感谢任何有用的提示或想法。谢谢

4

0 回答 0