定义了代理服务,需要从注册表访问服务参数。以下语法不起作用。
<parameter name="transport.vfs.FileURI">"conf:/repository/FileLocation"</parameter>
<parameter name="transport.vfs.MoveAfterFailure">"conf:/repository/FileMoveAfterFailure"</parameter>
<parameter name="transport.vfs.FileNamePattern">"conf:/repository/FilePattern"</parameter>
<parameter name="transport.vfs.MoveAfterProcess">"conf:/repository/FileMoveAfterProcess"</parameter>
如何访问/_system/config/repository
下的注册表值以在代理服务参数中使用?
答案 0 :(得分:1)
据我所知,你不能,唯一的选择是创建一个&#34;文件&#34;入站端点
<inboundEndpoint name="test_Inbound" protocol="file" sequence="test_Process" suspend="false" xmlns="http://ws.apache.org/ns/synapse">
<parameters>
<parameter name="interval">5000</parameter>
<parameter name="sequential">true</parameter>
<parameter name="coordination">true</parameter>
<parameter name="transport.vfs.ContentType">text/plain</parameter>
<parameter name="transport.vfs.LockReleaseSameNode">false</parameter>
<parameter name="transport.vfs.AutoLockRelease">false</parameter>
<parameter name="transport.vfs.ActionAfterFailure">MOVE</parameter>
<parameter name="transport.vfs.ActionAfterProcess">MOVE</parameter>
<parameter key="conf:/repository/FileLocation" name="transport.vfs.FileURI"/>
<parameter key="conf:/repository/FileMoveAfterFailure" name="transport.vfs.MoveAfterFailure"/>
<parameter name="transport.vfs.DistributedLock">false</parameter>
<parameter key="conf:/repository/FilePattern" name="transport.vfs.FileNamePattern"/>
<parameter key="conf:/repository/FileMoveAfterProcess" name="transport.vfs.MoveAfterProcess"/>
<parameter name="transport.vfs.Locking">disable</parameter>
<parameter name="transport.vfs.CreateFolder">true</parameter>
<parameter name="transport.vfs.Streaming">false</parameter>
<parameter name="transport.vfs.Build">false</parameter>
</parameters>
</inboundEndpoint>
然后你必须按顺序进行处理(test_Process),当然还要适应你的参数(ContentType,interval,sequential or not ....)
我从来没有尝试过transport.vfs.FileNamePattern,但对于另一个我确定它正在使用它。