0

私にはいくつかのフローがありますmule-config.xmlが、一部のBeanは1つのフローとしか言えません。フローに対してローカルなBeanを定義する方法はありますか?以下のようにインラインBeanを定義できることを理解しています。

<custom-transformer name="soapFaultTransformer" class="com.xxx.xx.transformer.VelocityMessageTransformer">
    <spring:property name="velocityEngine"  ref="velocityEngine" />
    <spring:property name="templateName"    value="soapFault.vm" />
    <spring:property name="beanClass">
        <spring:bean class="com.xxx.services.xx.Soap11Fault">
                <spring:property name="faultCode"   value="Client" />
                <spring:property name="faultString" value="Invalid Request" />
                <spring:property name="detail"      value="..." />
        </spring:bean>
    </spring:property>
</custom-transformer>

しかし、インラインspring beanは1つのフローの2つの場所で使用する必要がありますか?それでも、グローバルBeanにすることなく、1つの場所で定義し、2つの場所で参照することはできますか?

ありがとうございました

4

2 に答える 2

1

単一のフローに必要なすべてのSpringBeanを、そのフローによってのみインポートされる別のSpring構成ファイルに収集するのはどうですか?

ラバの設定は次のようになります。

<?xml version="1.0" encoding="UTF-8"?>

<mule xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns:jms="http://www.mulesoft.org/schema/mule/jms" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation" xmlns:spring="http://www.springframework.org/schema/beans" version="EE-3.4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
    http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd 
    http://www.mulesoft.org/schema/mule/jms http://www.mulesoft.org/schema/mule/jms/current/mule-jms.xsd 
    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd 
    http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd ">
    <spring:import resource="encapsulated-beans.xml" />

    <flow name="flow" >
        ...
    </flow>


</mule>

ここで、captured -beans.xmlは、たとえば、com.xxx.services.xx.Soap11FaultBeanを含む構成ファイルになります。

于 2013-01-23T20:40:13.707 に答える
1

@Davidが言ったように、単一のフローに固有のBeanを宣言することはできません。宣言されたBeanは、すべてのフローで使用できます。

于 2013-01-24T02:03:44.363 に答える