Esb WSO2中的动态端点
我有一个问题,首先,我做了一个服务,它将为结果提供一个特定的端点。在获得特定端点后,我想调用该服务。但我不知道怎么做。我尝试使用模板端点,但仍然无法在Mediator中使用。我在中看到了文档,它说“使用端点模板是ESB中使用的端点配置的一种通用形式。与序列模板不同,端点模板总是使用“$”前缀值(即:-不是xpath表达式)进行参数化” 以下是我的模板代码:Esb WSO2中的动态端点,esb,wso2,Esb,Wso2,我有一个问题,首先,我做了一个服务,它将为结果提供一个特定的端点。在获得特定端点后,我想调用该服务。但我不知道怎么做。我尝试使用模板端点,但仍然无法在Mediator中使用。我在中看到了文档,它说“使用端点模板是ESB中使用的端点配置的一种通用形式。与序列模板不同,端点模板总是使用“$”前缀值(即:-不是xpath表达式)进行参数化” 以下是我的模板代码: <template xmlns="http://ws.apache.org/ns/synapse" name="TemplateEnd
<template xmlns="http://ws.apache.org/ns/synapse" name="TemplateEndPoint">
<endpoint name="$name">
<address uri="$uri">
<suspendOnFailure>
<progressionFactor>1.0</progressionFactor>
</suspendOnFailure>
<markForSuspension>
<retriesBeforeSuspension>0</retriesBeforeSuspension>
<retryDelay>0</retryDelay>
</markForSuspension>
</address>
</endpoint>
</template>
1
0
0
以下是代理的代码:
<send>
<endpoint template="TemplateEndPoint">
<parameter name="uri" value="http://localhost:8080/axis2/services/TaskService.TaskServiceHttpEndpoint/getTask" />
<parameter name="name" value="Testing" />
</endpoint>
</send>
当我在代理中硬编码时,它接受代码,但当我在设计/源代码视图中回顾时,它将返回到。我怎样才能解决这个问题?我想你正在寻找这个。您可以使用header mediator将
设置为
参数
您还可以查看一下当您第一次调用发送端点详细信息的服务时,使用xslt中介器/enrich中介器选择该端点详细信息。然后使用标头中介器并将“设置为”该端点的值似乎只有当服务使用所需传输的侦听器和发送器时,才可以设置To报头。因此,如果您试图在仅侦听http的服务上执行动态mailto端点,它会尝试通过http传输路由mailto,但它不起作用 作为一种解决方法,我将端点地址设置为服务器电子邮件帐户的地址(这还提供了对发送电子邮件的审核跟踪),并在传输级别设置CC或BCC属性。e、 g:
<property name="mailAddress" expression="/xpath/to/email/address" scope="default"/>
然后
或
您可以直接在CC属性中获取电子邮件地址,但通过这种方式可以对address属性执行验证
<property name="CC" expression="get-property('mailAddress')" scope="transport" />
<property name="BCC" expression="get-property('mailAddress')" scope="transport" />