在proxy中,我要发送给RabbitMQ:
<property name="messageType" value="text/xml" scope="default"/>
<property name="contentType" value="text/xml" scope="default"/>
<property name="rabbitmq.attributes.app.id"
value="RMIS"
scope="axis2"
type="STRING"/>
<property name="rabbitmq.attributes.type"
value="BRANCH"
scope="axis2"
type="STRING"/>
<property name="rabbitmq.attributes.user.id"
value="RMIS"
scope="axis2"
type="STRING"/>
<property name="MESSAGE_ID" expression="get-property('MessageID')"/>
<script language="js">var messageID = mc.getProperty('MESSAGE_ID').substring(9,45);
mc.setProperty("RABBIT_MESSAGE_ID", messageID);</script>
<property name="rabbitmq.attributes.custom.message.id"
expression="get-property('RABBIT_MESSAGE_ID')"
scope="axis2"/>
<clone continueParent="true">
<target sequence="writeToFile"/>
</clone>
<send>
<endpoint key="rabbit"/>
</send>
在endpoint:
<endpoint xmlns="http://ws.apache.org/ns/synapse" name="rabbit">
<address uri="rabbitmq://writeToQueue?rabbitmq.server.host.name=localhost&rabbitmq.server.port=5672&rabbitmq.server.user.name=guest&rabbitmq.server.password=guest&rabbitmq.queue.name=queque" format="soap11">
<suspendOnFailure>
<progressionFactor>1.0</progressionFactor>
</suspendOnFailure>
<markForSuspension>
<retriesBeforeSuspension>0</retriesBeforeSuspension>
<retryDelay>3000</retryDelay>
</markForSuspension>
<timeout>
<responseAction>fault</responseAction>
</timeout>
</address>
</endpoint>
但当我将它发送到rabbitMQ服务器时,我发现了一个错误:
TID[-1234] [ESB] [2016-06-03 16:32:06,479] ERROR {org.apache.synapse.core.axis2.Axis2Sender} - Unexpected error during sending message out
org.apache.axis2.transport.rabbitmq.RabbitMQMessage.(RabbitMQMessage.java:43)
org.apache.axis2.transport.rabbitmq.RabbitMQSender.sendOverAMQP(RabbitMQSender.java:84)
org.apache.axis2.transport.rabbitmq.RabbitMQSender.sendMessage(RabbitMQSender.java:72)
org.apache.axis2.transport.base.AbstractTransportSender.invoke(AbstractTransportSender.java:112)
org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:185)
org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:167)
org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:542)
org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:79)
org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:461)
org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:372)
org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:65)
org.apache.synapse.endpoints.IndirectEndpoint.send(IndirectEndpoint.java:55)
org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:105)
org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:81)
org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:48)
org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:149)
org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:185)
org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:395)
org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:142)
org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)
[2016-06-27 17:07:00,388]warn-faulthandler ERROR_EXCEPTION:org.apache.synapse.synapseexception:发送html" target="_blank">消息时出现意外错误[2016-06-27 17:07:00,388]warn-faulthandler FaultHandler:Endpoint[rabbit][2016-06-27 17:07:00,388]warn-endpointContext Endpoint:rabbit将被标记为挂起,因为它失败了`
将以下属性添加到代理的insequence中。
<property name="OUT_ONLY" value="true"/>
<property name="FORCE_SC_ACCEPTED" value="true" scope="axis2"/>
那么您的配置应该如下所示:
<property name="messageType" value="text/xml" scope="default"/>
<property name="contentType" value="text/xml" scope="default"/>
<property name="OUT_ONLY" value="true"/>
<property name="FORCE_SC_ACCEPTED" value="true" scope="axis2"/>
<property name="rabbitmq.attributes.app.id"
value="RMIS"
scope="axis2"
type="STRING"/>
<property name="rabbitmq.attributes.type"
value="BRANCH"
scope="axis2"
type="STRING"/>
<property name="rabbitmq.attributes.user.id"
value="RMIS"
scope="axis2"
type="STRING"/>
<property name="MESSAGE_ID" expression="get-property('MessageID')"/>
<script language="js">var messageID = mc.getProperty('MESSAGE_ID').substring(9,45);
mc.setProperty("RABBIT_MESSAGE_ID", messageID);</script>
<property name="rabbitmq.attributes.custom.message.id"
expression="get-property('RABBIT_MESSAGE_ID')"
scope="axis2"/>
<clone continueParent="true">
<target sequence="writeToFile"/>
</clone>
<send>
<endpoint key="rabbit"/>
</send>
根据新stackTrace,它提到了“'routing key'必须是非空的”。
请添加“RabbitMQ.Exchange.Name”参数及其相关值。
<endpoint>
<address
uri="rabbitmq:/AMQPProxy?rabbitmq.server.host.name=192.168.0.3&rabbitmq.server.port=5672&rabbitmq.server.user.name=user&rabbitmq.server.password=abc123&rabbitmq.queue.name=queue2&rabbitmq.exchange.name=exchange2"/>
</endpoint>
问题内容: 在安装WSO2 Governance Registry并启动它之后,我在以下过程中得到以下错误: 这些错误每30秒重复一次。不幸的是,该日志未指定要尝试锁定的文件。 我尝试使用对其进行排他锁定的方式在文件系统上找到所有文件,但找不到任何文件。另外,我尝试通过WSO2 GR源代码进行grepping,但没有找到关于此错误的参考。WSO2 Jira(https://wso2.org/jir
我正在尝试调用一个简单的RESTFul API,它使用WSO2 ESB发布用户名和密码,但在尝试使用Postman调用它时没有得到响应: RESTFul API URL为: 要从ESB调用的URL是 我在WSO2 ESB中进行的API配置是 我发布了一个简单的JSON元素: WSO2控制台显示以下消息: Info-LogMediator到:http://www.w3.org/2005/08/add
我正在尝试使用spring security和wso2 identity server 5.1.0集成(SSO)多个服务提供商。根据博客,我已经将spring security SAML示例与wso2集成在一起,仅针对一个服务提供商,并且运行良好,但我无法为多个服务提供商执行SSO。我什么都查过了,但运气不好。 请在下面找到我认为应该是什么,但我不知道如何实现这一点。 WSO2是:创建了一个具有唯
问题内容: 我开始全新复制WSO2 API Manager 1.8,并无缘无故出现以下错误。 我怎样才能解决这个问题? 问题答案: 通过运行以下命令检查系统主机名 尝试ping到该主机名的输出。 如果那给出了错误,请检查文件。至少它应该具有主机条目127.0.0.1
我正在建立一个测试实验室来学习更多关于WSO2应用的知识。我试图重新创建这里描述的场景:http://wso2.org/library/tutorials/2012/12/providing-xacml-fine-grained-authorization-webapps 我使用的是一台Windows 2008服务器,WSO应用程序都在不同的端口上监听。WSOIS的tryit功能表明策略正在正确评
有人能帮我做这个吗? 我不知道错误是什么,也不知道我应该如何修复它。任何帮助都很感激