1

在 MULE 3.3.0 CE 中,我编写了一个带有构造函数和两个方法的简单 java 类,我将它们复制到下面:

 public class Book {
        private String title;

        public Book(String theTitle) {
            // TODO Auto-generated constructor stub
            title = theTitle;
        }

        public String getTitle(){
            return title;
        }

        public String displayAuthorName(String authorName) {
            return authorName;
        }
    }

现在我想将我的 java 类添加为我的 .mflow(Configuration XML) 中的一个 bean,然后将有效负载传递给 java 类方法。

我该怎么做这个问题?

4

1 回答 1

3

为了完成这项工作,您需要:

  1. 将您的组件定义为 spring bean。
  2. 定义组件的入口点。
  3. 在流程中使用您的组件。

这是一个例子:

package com.mypackage.test;

import org.mule.api.annotations.param.Payload;

    public class MyComponent {

    private String myProperty;

    public String getMyProperty() {
        return myProperty;
    }

    public void setMyProperty(String myProperty) {
        this.myProperty = myProperty;
    }

    public String doProcess(@Payload String payload) {
        //do something interesting
        return "You said: " + payload;
    }

}

定义入口点的一种方法是使用@Payload 注解。

然后是示例流程:

<spring:bean id="myBean" class="com.mypackage.test.MyComponent">
    <spring:property name="myProperty" value="Some Value" />
</spring:bean>

<flow name="componentFlow">
    <http:inbound-endpoint address="http://localhost:8082/test" />
    <component>
        <spring-object bean="myBean" />
    </component>
    <set-property propertyName="Content-Type" value="text/plain" doc:name="Property" />
</flow>
于 2013-03-04T00:06:41.987 回答