Você pode utilizar um nó JavaCompute para incluir um cabeçalho MQRFH2 em uma mensagem de saída.
public void addRfh2(MbMessage msg) throws MbException
{
MbElement root = msg.getRootElement();
MbElement body = root.getLastChild();
// insira o novo cabeçalho antes do corpo da mensagem
MbElement rfh2 = body.createElementBefore("MQHRF2");
rfh2.createElementAsFirstChild(MbElement.TYPE_NAME_VALUE, "Version", new Integer(2));
rfh2.createElementAsFirstChild(MbElement.TYPE_NAME_VALUE, "Format", "MQSTR");
rfh2.createElementAsFirstChild(MbElement.TYPE_NAME_VALUE, "NameValueCCSID", new Integer(1208));
MbElement psc = rfh2.createElementAsFirstChild(MbElement.TYPE_NAME, "psc", null);
psc.createElementAsFirstChild(MbElement.TYPE_NAME, "Command", "RegSub");
psc.createElementAsFirstChild(MbElement.TYPE_NAME, "Topic", "department");
psc.createElementAsFirstChild(MbElement.TYPE_NAME, "QMgrName", "QM1");
psc.createElementAsFirstChild(MbElement.TYPE_NAME, "QName", "PUBOUT");
psc.createElementAsFirstChild(MbElement.TYPE_NAME, "RegOpt", "PersAsPub");
MbXPath xp = new MbXPath("/MQMD/Format" + "[set-value(´MQHRF2´)]", root);
root.evaluateXPath(xp);
}
Neste exemplo, o parâmetro MQHRF2 é o nome da classe analisadora, que é diferente do nome do elemento analisador (MQRFH2). Pata obter uma lista dos analisadores, nomes de elementos-raiz e nomes de classes para cabeçalhos diferentes, consulte Analisadores Disponíveis.