[英]How to reiterate an XML based on a value in the segment tag in xslt? mule?
[英]How to pass a logger message value to .xslt file in mule
在configuration.xml文件中,在放置返回客戶端IP地址的記錄器的過程中,我實現了發布wsdl的流程。 這是我的代碼:
<logger message="#[groovy:message.getInboundProperty('MULE_REMOTE_CLIENT_ADDRESS')]" level="INFO" doc:name="Logger"/>
現在我想將IP地址傳輸(傳遞)到我的.xslt文件嗎? 我該怎么做?
如果您使用的是Mule 3.3,則可以利用MEL並簡化記錄器語句,如下所示:
<logger message="#[message.inboundProperties['MULE_REMOTE_CLIENT_ADDRESS']]" level="INFO" doc:name="Logger"/>
要將IP地址傳遞給XSLT,請將其存儲在變量中並傳遞它。
<set-variable variableName="remoteClientAddress" value = "#[message.inboundProperties['MULE_REMOTE_CLIENT_ADDRESS']]"/>
與記錄器一起顯示
<logger message="Remote client address is------> #[remoteClientAddress]" level="INFO" doc:name="Logger"/>
通過以下方式將其傳遞給XSLT
:
<xm:xslt-transformer xsl-file="xsltFileName.xslt">
<xm:context-property key="remoteClientAddress" value="#[remoteClientAddress]"/>
</xm:xslt-transformer>
在您的XSLT
,聲明一個param變量
<xsl:param name="remoteClientAddress" />
然后將此變量用作
<xsl:value-of select="$remoteClientAddress" />
對於與正確提取IP地址有關的問題,請使用XSLT函數,例如
substring-before() , substring-after() and tokenize() ( in XSLT 2.0)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.