使用WSDL介体WSO2中的URI使用变量

问题描述 投票:0回答:1

我正在重新分解一个wso2项目,我想知道如何/是否可以执行以下操作。该项目旨在将数据发送到SOAP Api。在每种环境中,此API都会公开一个.wsdl文件,并且URL和凭据是从一种环境更改为另一种环境的唯一条件。因此,最自然的事情是>

  • Registry和[中创建它们
  • 像这样在工作开始时加载它
<propertyGroup>
  <property expression="get-property('registry', 'gov:/endpoints/sap_constructionSiteUser')" name="sap_constructionSiteUser" scope="default" type="STRING"/>
  <property expression="get-property('registry', 'gov:/endpoints/sap_constructionSitePassword')" name="sap_constructionSitePassword" scope="default" type="STRING"/>
  <property expression="get-property('registry', 'gov:/endpoints/sap_constructionSiteUrl')" name="uri.var.sap_constructionSiteUrl" scope="default" type="STRING"/>
</propertyGroup>

但是我找不到在端点定义中使用此uri.var.sap_constructionSiteUrl简单

方法。以下不起作用
<call>
  <endpoint>
     <wsdl optimize="mtom" uri="{uri.var.sap_constructionSiteUrl}" port="OUVERTURE_CHANTIER" service="OUVERTURE_CHANTIER" statistics="enable">
       <suspendOnFailure>
       <initialDuration>-1</initialDuration>
       <progressionFactor>-1</progressionFactor>
       <maximumDuration>0</maximumDuration>
       </suspendOnFailure>
       <markForSuspension>
       <retriesBeforeSuspension>0</retriesBeforeSuspension>
       </markForSuspension>
     </wsdl>
  </endpoint>
</call>

看起来像uri=仅接受纯值。有没有办法在不将整个端点写入Registry的情况下使其动态化(关键是使客户端保持简单)

[环境

]
  • wso2ei 6.5.0

我正在重新分解一个wso2项目,我想知道如何/是否可以执行以下操作。该项目旨在将数据发送到SOAP Api。在每种环境中,此API都会公开一个.wsdl文件,并且...

wso2 wsdl wso2esb wso2ei synapse
1个回答
0
投票

您可以尝试对该端点进行模板化,然后使用参数调用模板。您可以在运行时将动态值传递给模板。https://docs.wso2.com/display/EI650/Endpoint+Template

© www.soinside.com 2019 - 2024. All rights reserved.