WSO2 Class Mediator - 是否可以提供更复杂的属性?

WSO2 Class Mediator - Is it possible to give more complex properties?

示例来自此处的文档:https://docs.wso2.com/display/ESB470/Class+Mediator

            <class name="samples.mediators.SimpleClassMediator">
                <property name="variable1" value="10"/>
                <property name="variable2" value="5"/>
            </class>

我想做的事情:

            <class name="samples.mediators.SimpleClassMediator">
                <property name="variable1" value="10"/>
                <property name="variable2">
                    <list>                            
                        <foo>bar</foo>
                        <abc>def</abc>
                        <!-- up to 20 more props here -->
                    </list>
                </property>
            </class>

如有必要,我愿意使用肮脏的技巧来启用它。

您不能直接将如此复杂的值设置为 class 中介属性。但是您可以从 class 调解器中读取任何 属性。例如看这个。

<property name="variable2">            
   <list>                                                            
       <foo>bar</foo>                                                            
       <abc>def</abc>                                                
   </list>         
</property>         
<class name="org.wso2.ClassMediator"></class>

在class调解器里面,你可以这样阅读属性。

OMElement ss = (OMElement) mc.getProperty("variable2");