任務:使用JavaCompute節點進行XML轉化
一.如圖建立Flow

二.編輯JavaCompute節點的Java代碼如下:
import com.ibm.broker.javacompute.MbJavaComputeNode;
import com.ibm.broker.plugin.*;
public class flow_JavaCompute extends MbJavaComputeNode {
public void evaluate(MbMessageAssembly inassembly) throws MbException {
MbOutputTerminal out = getOutputTerminal("out");
// MbOutputTerminal alt = getOutputTerminal("alternate");
MbMessage inMessage = inassembly.getMessage();
MbMessage outMessage = new MbMessage(inMessage);
MbMessageAssembly outAssembly=new MbMessageAssembly(inassembly,outMessage);
MbElement root=outMessage.getRootElement();
MbElement rootElm=root.getLastChild().getFirstChild();
MbElement employee1=rootElm.createElementAsLastChild(MbElement.TYPE_NAME,"empoyee",null);
employee1.setValue("Andy");
MbElement employee2=rootElm.createElementAsLastChild(MbElement.TYPE_NAME,"empoyee",null);
employee2.setValue("Bill");
MbElement id = employee2.createElementAsFirstChild(MbElement.TYPE_NAME_VALUE,"id", "221415");
out.propagate(outAssembly);
outMessage.clearMessage();
}
}
三.輸入XML如下
<employees><employee>Hy</employee></employees>
四.輸出XML如下:
<employees><employee>Hy</employee><empoyee>Andy</empoyee><empoyee id="221415">Bill</empoyee></employees>
注意這里面的代碼操作與我們常見XML很不一樣,一個是取根節點處,一個是給節點設置值處,一個是給節點增加屬性處。
五.工程從這里下載
http://www.tkk7.com/Files/heyang/JavaCompute0922_01.rar