任務(wù):使用JavaCompute節(jié)點(diǎn)進(jìn)行XML轉(zhuǎn)化
一.如圖建立Flow

二.編輯JavaCompute節(jié)點(diǎn)的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很不一樣,一個(gè)是取根節(jié)點(diǎn)處,一個(gè)是給節(jié)點(diǎn)設(shè)置值處,一個(gè)是給節(jié)點(diǎn)增加屬性處。
五.工程從這里下載
http://www.tkk7.com/Files/heyang/JavaCompute0922_01.rar