在Mule(CXF)中使用https/ssl web服务

在Mule(CXF)中使用https/ssl web服务,ssl,https,cxf,mule,Ssl,Https,Cxf,Mule,我在MULE 3.3.0 CE中通过https/ssl使用.NET web服务时遇到了这个问题。我希望有人有一个好主意来解决这个问题。 使用CXF库2.5.1和JRE 7 Mule使用的相同工具,这在Mule的外部工作得很好。然后,我假设Mule也使用jre密钥存储,我在其中安装了信任证书 我已经用wsdl2java生成了代理类。 该服务使用Web服务安全UsernameToken,配置文件1.1。服务和服务器不在我的控制范围内这是一项公共服务 我知道我不使用mule出站传输连接到服务。我只是尝

我在MULE 3.3.0 CE中通过https/ssl使用.NET web服务时遇到了这个问题。我希望有人有一个好主意来解决这个问题。 使用CXF库2.5.1和JRE 7 Mule使用的相同工具,这在Mule的外部工作得很好。然后,我假设Mule也使用jre密钥存储,我在其中安装了信任证书

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

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

这是我的mule配置:

<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类I执行以下操作:

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:验证消息安全性时出错


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

为什么不使用Mule来执行呼叫?另外,您在哪里/如何指示Mule加载密钥库?原因是我比Mule更了解Java。我曾尝试让Mule执行呼叫,但这带来了新问题。我不会让Mule加载任何密钥库。我认为Mule在没有在Mule中指定的情况下使用了JRE中的密钥库。但这可能是非常错误的。感谢任何用于密钥库加载的mule配置示例。如果您使用mule HTTPS,那么您将如何配置密钥库: