[SOA/BPM] Composite Invocation Changed from PS4(11.1.1.5)

以下のドキュメントに記載されているように、oracle.soa.management.facade.Serviceを使用したサービスの実行はPS4から非推奨になりました。

Oracle Fusion Middleware Infrastructure Management Java API Reference for Oracle SOA Suite 11g Release 1 (11.1.1) E10659-01
http://download.oracle.com/docs/cd/E21043_01/apirefs.1111/e10659/oracle/soa/management/facade/Service.html#post_java_lang_String__oracle_fabric_common_NormalizedMessage_

その代わりに、oracle.soa.api.DirectConnectionを利用したサービス実行が推奨されています。以下に簡単なサンプルコードを用意しました。
try {
    String operationName = "process";
    String xml = "<ns1:process xmlns:ns1=\"http://xmlns.oracle.com/BPMTestApp/InvokeSOATest/AsyncBPEL\"><ns1:input></ns1:input></ns1:process>";

    // domainName, compositeName, revision
    CompositeDN compositeDN = new CompositeDN("default", "InvokeSOATest", "1.0");

    // DirectConnection - oracle-soa-client-api.jar
    Locator compositeLocator = null;
    Hashtable<String, String> jndiProps = new Hashtable();
    jndiProps.put(Context.PROVIDER_URL, "t3://jlee-soa11:7001/soa-infra");
    jndiProps.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
    jndiProps.put(Context.SECURITY_PRINCIPAL, "weblogic");
    jndiProps.put(Context.SECURITY_CREDENTIALS, "welcome1");
    compositeLocator = LocatorFactory.createLocator(jndiProps);

    // compositeDN, serviceName
    DirectConnection dic = compositeLocator.createDirectConnection(compositeDN, "DirectBinding");

    // create a std dom parser
    DOMParser parser = new DOMParser();
    parser.parse(new InputSource(new StringReader(xml)));
    Element element = parser.getDocument().getDocumentElement();
    Map<String, Element> payload = new HashMap<String, Element>();
    payload.put("payload", element);
    Message<Element> xmlMessage = XMLMessageFactory.getInstance().createMessage(payload);
    dic.post(operationName, xmlMessage);
} catch (Exception e) {
    e.printStackTrace();
}
原文はこちら。
http://blogs.oracle.com/jaylee/entry/composite_invocation_changed_from_ps4

0 件のコメント:

コメントを投稿