Apache 无法从SOAP UI调用WSO2 ESB中的安全代理服务
我正在尝试调用WSO2 ESB中的安全代理服务。我遵循了这个伟大的原则 但是当我从soapui发送安全请求时。服务进入超时状态,我在ESB日志中发现一个错误。我仔细检查了教程的每个步骤。但我不知道为什么它不起作用 注意:Apache 无法从SOAP UI调用WSO2 ESB中的安全代理服务,apache,axis2,wso2esb,soapui,rampart,Apache,Axis2,Wso2esb,Soapui,Rampart,我正在尝试调用WSO2 ESB中的安全代理服务。我遵循了这个伟大的原则 但是当我从soapui发送安全请求时。服务进入超时状态,我在ESB日志中发现一个错误。我仔细检查了教程的每个步骤。但我不知道为什么它不起作用 注意: <?xml version="1.0" encoding="UTF-8"?> <proxy xmlns="http://ws.apache.org/ns/synapse" name="EchoProxy" transports="h
<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="EchoProxy"
transports="https,http"
statistics="disable"
trace="disable"
startOnLoad="true">
<target>
<inSequence>
<log level="full" separator="First Log"/>
<log level="full" separator="Second Log"/>
<send>
<endpoint>
<address uri="http://localhost:8280/services/echo"/>
</endpoint>
</send>
</inSequence>
<outSequence>
<log level="full"
separator=Out Sequence Log"/>
<property name="OUT_ONLY" value="true" scope="default" type="STRING"/>
<property name="ClientApiNonBlocking" scope="axis2" action="remove"/>
<send/>
</outSequence>
</target>
<parameter name="disableREST">true</parameter>
<parameter name="ScenarioID">scenario5</parameter>
<enableSec/>
<policy key="conf:/repository/axis2/service-groups/EchoProxy/services/EchoProxy/policies/SigEncr"/>
<description/>
</proxy>
[2015-02-17 16:32:54,793] ERROR - ServerWorker Error processing POST request for : /services/EchoProxy.EchoProxyHttpsSoap11Endpoint
org.apache.axis2.AxisFault: Message is not signed
at org.apache.rampart.handler.RampartReceiver.setFaultCodeAndThrowAxisFault(RampartReceiver.java:180)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:99)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:167)
at org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:411)
at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:183)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: org.apache.rampart.RampartException: Message is not signed
at org.apache.rampart.PolicyBasedResultsValidator.validateEncrSig(PolicyBasedResultsValidator.java:264)
at org.apache.rampart.PolicyBasedResultsValidator.validate(PolicyBasedResultsValidator.java:151)
at org.apache.rampart.RampartEngine.process(RampartEngine.java:470)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:92)
... 10 more
[2015-02-17 16:33:54,690] WARN - SourceHandler Connection time out after request is read: http-incoming-1
我正在使用WSO2ESB4.8.1和SOAPUI5.0.0
我的代理服务代码:
<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="EchoProxy"
transports="https,http"
statistics="disable"
trace="disable"
startOnLoad="true">
<target>
<inSequence>
<log level="full" separator="First Log"/>
<log level="full" separator="Second Log"/>
<send>
<endpoint>
<address uri="http://localhost:8280/services/echo"/>
</endpoint>
</send>
</inSequence>
<outSequence>
<log level="full"
separator=Out Sequence Log"/>
<property name="OUT_ONLY" value="true" scope="default" type="STRING"/>
<property name="ClientApiNonBlocking" scope="axis2" action="remove"/>
<send/>
</outSequence>
</target>
<parameter name="disableREST">true</parameter>
<parameter name="ScenarioID">scenario5</parameter>
<enableSec/>
<policy key="conf:/repository/axis2/service-groups/EchoProxy/services/EchoProxy/policies/SigEncr"/>
<description/>
</proxy>
[2015-02-17 16:32:54,793] ERROR - ServerWorker Error processing POST request for : /services/EchoProxy.EchoProxyHttpsSoap11Endpoint
org.apache.axis2.AxisFault: Message is not signed
at org.apache.rampart.handler.RampartReceiver.setFaultCodeAndThrowAxisFault(RampartReceiver.java:180)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:99)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:167)
at org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:411)
at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:183)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: org.apache.rampart.RampartException: Message is not signed
at org.apache.rampart.PolicyBasedResultsValidator.validateEncrSig(PolicyBasedResultsValidator.java:264)
at org.apache.rampart.PolicyBasedResultsValidator.validate(PolicyBasedResultsValidator.java:151)
at org.apache.rampart.RampartEngine.process(RampartEngine.java:470)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:92)
... 10 more
[2015-02-17 16:33:54,690] WARN - SourceHandler Connection time out after request is read: http-incoming-1
其余信息可以在上述教程中找到 您正在运行的rampart版本是什么?类似的问题也曾在BPS报道过,我只是个新手。您能告诉我如何检查我正在运行的rampart版本吗。我试着用谷歌搜索,但找不到任何答案。您是否遵循了代理服务的模块参与步骤?登录到ESB管理控制台并导航到列表服务->回送代理服务->模块参与。在那里你可以找到你正在使用的rampart版本。谢谢你的帮助。这是我找到的版本。rampart-1.61-wso2v12.兄弟,不知怎的,我已经解决了这个问题。当我再次执行所有配置时,我能够将请求发送到我的服务。但现在我面临这个问题。