この章の内容は次のとおりです。
Oracle JDeveloperでのEnterprise JavaBeansサービスの作成
注意:
Enterprise JavaBeans 3.0およびEnterprise JavaBeans 2.0の参照(つまり、Enterprise JavaBeans 2.0 Beanをコールする場合)はサポートされています。ただし、Enterprise JavaBeans 2.0のサービス(つまり、Enterprise JavaBeans 2.0 Beanを使用してコールされる場合)はサポートされていません。
Enterprise JavaBeansとSOAコンポジット・アプリケーションの統合方法には、次の2つのオプションがあります。
Javaインタフェースを使用する方法(インタフェースの定義にWSDLファイルを使用しない)
SDOベースのEJBを使用する方法(インタフェースの定義にWSDLファイルを使用する)
この章では、両方のオプションについて説明します。
JavaインタフェースとSOAコンポジット・アプリケーションの統合には、Springサービス・コンポーネントも使用できます。Springサービス・コンポーネントの使用方法の詳細は、「Spring Frameworkを使用したSOAコンポジット・アプリケーションへの統合」を参照してください。
Enterprise JavaBeansとOracle SOA Suiteの統合にはJavaインタフェースを使用できるため、WSDLファイルの定義は不要です。このタイプの統合は、次のオブジェクトをサポートします。
ネイティブJavaオブジェクト
Java Architecture for XML Binding
JavaインタフェースはSDOインタフェースとは異なります。SDOインタフェースは、XMLが中心のサービス・コンポーネント(Oracle BPEL Process Manager、Oracle Mediatorなど)を対象としているため、WSDLファイルに定義されます。Javaインタフェースを使用する場合、SDOパラメータは不要です。
この統合を定義するには、「Javaインタフェース・ベースのEnterprise JavaBeansとSOAコンポジット・アプリケーションの統合方法」で説明するように、Oracle JDeveloperの「EJBサービスの作成」ダイアログを使用します。このオプションでは、WSDLファイルを使用する必要はありません。完了すると、次の例に示すように、相互作用がinterface.java
エントリを介してcomposite.xml
ファイルに定義されます。Javaインタフェース・クラスは、接続コンポーネントが使用するWSDLファイルと互換性がある必要があります(つまり、メッセージがBPELコンポーネントに送信される場合)。BPELサービスはWSDLによって定義されるため、Javaインタフェース・クラスにはそのWSDLとの互換性が必要です。
<service name="PortfolioService">
<interface.java interface="com.bigbank.services.MyService" />
binding.ejb uri="MyJNDI" ejb-version="EJB3"/>
Javaクラスは、ユーザー・インタフェースに使用できるプロジェクトのローダー内にある必要があります。このクラスは、デプロイされるSCA-INF
内にある必要があります(プロジェクト・クラスパス内のすべてのJARファイルがデプロイされるわけではありません)。これは通常、クラスがSCA-INF/classes
ディレクトリ内、またはSCA-INF/lib
ディレクトリのJAR内にある必要があることを意味します。ただし、システム・クラスパスのインタフェースも使用できます。
JAXBの詳細は、『Oracle TopLinkソリューション・ガイド』および「Spring Frameworkを使用したSOAコンポジット・アプリケーションへの統合」を参照してください。
SDOを使用すると、物理的にどのようにアクセスされているかに関係なくビジネス・データを修正できます。SOAコンポジット・アプリケーションでSDOを使用する場合、特定のバックエンド・データ・ソースへのアクセス方法についての知識は不要です。つまり、静的または動的なプログラミング・スタイルを使用して、接続および切断されたアクセスを取得できます。
Enterprise JavaBeansは、Javaでエンタープライズ・アプリケーションを作成するためのコンポーネントベースの標準アーキテクチャに適合する、サーバー側ドメイン・オブジェクトです。これらのオブジェクトは、分散化されたセキュアなトランザクション・コンポーネントになります。
多くのOracle SOA Suiteインタフェースは、WSDLファイルで記述されます。Enterprise JavaBeansインタフェースは、Javaインタフェースで記述されます。両者の間の起動は、Oracle SOA SuiteのWSDLインタフェースに対応するEnterprise JavaBeansのJavaインタフェースによって、Oracle SOA Suiteで可能になります。
このインタフェースを介して、Oracle SOA Suiteは次の機能をサポートします。
Enterprise JavaBeans参照バインディング・コンポーネントを介した、SDOパラメータによるEnterprise JavaBeansの起動。このシナリオでは、SOAコンポジット・アプリケーションが外部のEnterprise JavaBeansアプリケーションにSDOパラメータを渡します。
Enterprise JavaBeansを介した、SDOパラメータによるEnterprise JavaBeansサービス・バインディング・コンポーネントの起動。このシナリオでは、Enterprise JavaBeansアプリケーションがSOAコンポジット・アプリケーションにSDOパラメータを渡します。
図37-1に概要を示します。
この統合を定義するには、「SDOベースのEnterprise JavaBeansとSOAコンポジット・アプリケーションの統合方法」で説明するように、Oracle JDeveloperの「EJBサービスの作成」ダイアログを使用します。このオプションでは、WSDLファイルを使用する必要があります。完了すると、次の例に示すように、WSDL相互作用がinterface.wsdl
エントリを介してcomposite.xml
ファイルに定義されます。
<service name="PortfolioService">
<interface.wsdl
interface="http://bigbank.com/#wsdl.interface(PortfolioService)" />
<binding.ejb javaInterface="java.class.ejb.com" serviceId="PortfolioService"
jarLocation="soaejb.jar"/>
この項では、Enterprise JavaBeansアプリケーション設計手順の高レベルな概要を示します。詳細は、次のドキュメントを参照してください。
Oracle WebLogic Server Enterprise JavaBeansの開発
Oracle Application Development FrameworkによるFusion Webアプリケーションの開発
Oracle JDeveloperオンライン・ヘルプ目次にある次のトピック
Enterprise JavaBeans
Enterprise JavaBeansおよびJava永続性API (JPA)のSDO
ヘルプにアクセスするには、Oracle JDeveloperで「ヘルプ」→「目次」の順に選択します。
SDOオブジェクトを作成するには、次のいずれかのオプションを選択します。
EclipseLinkは、Java開発者用のオープン・ソースのオブジェクト・リレーショナル・マッピング・パッケージです。EclipseLinkには、Javaオブジェクトをリレーショナル・データベースに格納したり、JavaオブジェクトをXML文書に変換するためのフレームワークが備わっています。
EclipseLinkを使用してSDOオブジェクトを作成します。EclipseLinkをインストール、構成および使用してSDOオブジェクトを作成する方法の手順は、次のURLを参照してください。
http://wiki.eclipse.org/EclipseLink/Installing_and_Configuring_EclipseLink
Oracle JDeveloperでは、JPAエンティティに対するSDOサービス・インタフェースを作成できます。この機能は、SOAコンポジット・アプリケーションのOracle Application Development Framework (ADF)サービス・バインディングで使用する場合により適していますが、SOAコンポジット・アプリケーションのEnterprise JavaBeansサービス・バインディングでもこの機能を使用できます。SDOサービス・インタフェース機能では、必要なWSDLおよびXSDファイルが生成されます。この機能を使用する場合、Enterprise JavaBeansサービス・バインディングを処理するには、次のタスクを実行する必要があります。
「WSDLチューザ」ダイアログでこのWSDLファイルを参照して選択しますが、このダイアログには、「EJBサービスの作成」ダイアログの「WSDL URL」フィールドからアクセスできます(「Oracle JDeveloperでのEnterprise JavaBeansサービスの作成」を参照)。
「BC4Jサービス・ランタイム」ライブラリをSOAプロジェクトに追加します。このライブラリを追加するには、プロジェクトをダブルクリックし、「プロジェクト・プロパティ」ダイアログで「ライブラリとクラスパス」を選択してライブラリを追加します。これで、ビジネス・ロジックを設計できる状態になります。
詳細は、Oracle JDeveloperオンライン・ヘルプのEnterprise JavaBeans/JPA用のSDOに関するトピックを参照してください(SDOサービス・インタフェースの作成方法の手順も含まれています)。
セッションBeanを作成してSDOオブジェクトをインポートする手順は、次のとおりです。
Commonj.sdo.jar
ファイルをインポートする必要があります。JARファイルは、「ライブラリとクラスパス」ダイアログで追加できます。このダイアログにアクセスするには、プロジェクトをダブルクリックし、「プロジェクト・プロパティ」ダイアログで「ライブラリとクラスパス」を選択します。これで、ロジックを設計できる状態になります。 プロファイルおよびEARファイルを作成する手順は、次のとおりです。
Enterprise JavaBeans BeanでSDOタイプを定義する必要があります。次の例で詳細を示します。
注意:
define
をコールする場所が重要な場合があります。Remote Method Invocation (RMI)マーシャリングが必要になる前に、適切なヘルパー・コンテキストにタイプを定義する必要があります。EclipseLink SDO実装によって、アプリケーション名またはクラス・ローダーでヘルパー・インスタンスに索引付けされます。
Enterprise JavaBeansメソッドを起動したときに、EclipseLink SDOランタイムでアプリケーション名を使用できるようになります。EclipseLink SDOは、キーとしてアプリケーション名を使用してコンテキストを検索します。アプリケーション名が参照可能な場合は、タイプを必ず定義してください。Enterprise JavaBeansの静的ブロックの初期化時に、アプリケーション名は作成されません。したがって、静的ブロックにdefine
を配置すると、デフォルトのアプリケーション名ベースのコンテキストを使用している場合は機能しません。アプリケーション名を初期化する方法の1つは、weblogic-ejb-jar.xml
ファイルを使用して、3つ以上のインスタンスBeanを割り当てることです。
InputStreamReader reader = new InputStreamReader(url.openStream());
StreamSource source = new StreamSource(reader);
List<SDOType> list = ((SDOXSDHelper) XSDHelper.INSTANCE).define(source, null);
weblogic-ejb-jar.xml
ファイルは、デプロイメントjarに追加する必要があるディスクリプタ・ファイルです。weblogic-ejb-jar.xml
ファイルは、セッションBeanを作成すると自動的に作成されます。このファイルは、次の例に示すエントリを追加して変更する必要があります。
<?xml version = '1.0' encoding = 'windows-1252'?> <weblogic-ejb-jar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-ejb-jar http://www.bea.com/ns/weblogic/weblogic-ejb-jar/1.0/weblogic-ejb-jar.xsd" xmlns="http://www.bea.com/ns/weblogic/weblogic-ejb-jar"> <weblogic-enterprise-bean> <ejb-name>HelloEJB</ejb-name> <stateless-session-descriptor> <pool> <initial-beans-in-free-pool>2</initial-beans-in-free-pool> </pool> </stateless-session-descriptor> </weblogic-enterprise-bean> </weblogic-ejb-jar>
図37-2に、SDOロジックが定義されているセッションBeanのコード例を示します。
WSDLファイルを生成するには、Enterprise JavaBeansインタフェースで次のWebサービス注釈を使用する必要があります。これらの注釈の使用については、『JSR 224: Java API for XML-Based Web Services (JAX-WS) 2.0』で説明されています。詳細は、次のURLを参照してください。
http://www.jcp.org/en/jsr/detail?id=224
また、Enterprise JavaBeansバインディング・レイヤーで現在サポートされているのは、ドキュメント/リテラルWSDLのみです。
表37-1に、使用する注釈を説明します。
表37-1 注釈
名前 | 説明 |
---|---|
|
Webサービス・メッセージ・パートおよびXML要素に対する個々のパラメータのマッピングをカスタマイズします。正規化されたメッセージ・ペイロードからの適切なXML要素にSDOパラメータをマップするために、両方の注釈が使用されます。 |
|
メソッドを、入力メッセージのみで出力メッセージのない一方向のWebサービス操作として指定します。この場合、Enterprise JavaBeansバインディング・コンポーネントは、リプライを想定しません。 |
|
Enterprise JavaBeansバインディング・コンポーネントに対して、デシリアライズ・オブジェクトをアンラップするかどうか、またはシリアル化の前にラッパーを作成する必要があるかどうかを指示します。 Enterprise JavaBeansインタフェースは、既存のWSDLから生成するか、または他の手段で取得できます。WSDLが存在しない場合は生成できます。 |
|
WSDLフォルトをJava例外にマップします。この注釈は、WSDLフォルト・メッセージで参照するグローバル要素から生成される、JAXBタイプのマーシャリング時に使用されるフォルト要素名を取得します。 |
|
WSDLに使用する @PortableWebService( targetNamespace = "http://hello.demo.oracle/", serviceName = "HelloService")
|
適切なメソッド・パラメータ注釈の追加 |
メッセージ要素およびタイプのWSDLへのマップ方法を制御します。たとえば、インタフェースが @WebMethod @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) |
|
スキーマを生成するかわりに既存のスキーマを使用するために、インタフェース・クラスに追加します。次に例を示します。 @SDODatabinding(schemaLocation = "etc/HelloService.xsd") |
次の例は、注釈を使用したEnterprise JavaBeansインタフェースの例を示しています。
@Remote @PortableWebService(targetNamespace = "http://www.example.org/customer-example", serviceName = "CustomerSessionEJBService") @SDODatabinding(schemaLocation = "customer.xsd") public interface CustomerSessionEJB { @WebMethod(operationName="createCustomer") @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) @WebResult(targetNamespace = "http://www.example.org/customer-example", partName = "parameters", name = "customer") CustomerType createCustomer(); @WebMethod(operationName="addPhoneNumber") @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) @WebResult(targetNamespace = "http://www.example.org/customer-example", partName = "parameters", name = "customer") CustomerType addPhoneNumber(@WebParam(targetNamespace = "http://www.example.org/customer-example", partName = "parameters", name = "phone-number")PhoneNumber phNumber); }
この項では、Oracle JDeveloperでEnterprise JavaBeans参照バインディング・コンポーネントまたはEnterprise JavaBeansサービス・バインディング・コンポーネントを作成する方法について説明します。Enterprise JavaBeansサービスを使用すると、Enterprise JavaBeansアプリケーションでOracle SOA Suiteと通信できるようになり、Oracle SOA SuiteでリモートのEnterprise JavaBeansと通信できるようになります。
この項では、次のタイプの統合を作成する方法について説明します。
Javaインタフェースを使用した統合
SDOインタフェースを使用した統合
Javaインタフェース・ベースのEnterprise JavaBeansとSOAコンポジット・アプリケーションの間では、次のタイプの統合を作成できます。
SOAコンポジット・アプリケーションからのJavaインタフェース・ベースのEnterprise JavaBeansの起動
Javaインタフェースを使用したEnterprise JavaBeansからのSOAコンポジット・アプリケーションの起動
Javaインタフェース・ベースのEnterprise JavaBeansをSOAコンポジット・アプリケーションに統合する手順は、次のとおりです。
SDOベースのEnterprise JavaBeansとSOAコンポジット・アプリケーションの間では、次のタイプの統合を作成できます。
SOAコンポジット・アプリケーションからのSDOベースのEnterprise JavaBeansの起動
SDOパラメータを使用したEnterprise JavaBeansからのSOAコンポジット・アプリケーションの起動
SDOベースのEnterprise JavaBeansをSOAコンポジット・アプリケーションに統合する手順は、次のとおりです。
SOAコンポジット・エディタでSOAコンポジット・アプリケーションに移動します。
「コンポーネント」ウィンドウの「テクノロジ」セクションで、「EJB」アイコンを表37-3に示す適切なスイムレーンにドラッグします。
表37-3 EJBサービスに対するスイムレーン
起動対象 | EJBサービスをドラッグするスイムレーン |
---|---|
SOAコンポジット・アプリケーションからのSDOベースのEnterprise JavaBeansの起動 |
外部参照 |
SDOパラメータを使用したEnterprise JavaBeansからのSOAコンポジット・アプリケーションの起動 |
公開されたサービス |
「EJBサービスの作成」ダイアログが表示されます。
「インタフェース」セクションで、「WSDL」をクリックします。
EJBサービスをドラッグしたスイムレーンに応じて、表37-4に示す手順を参照してください。
環境に適した値を入力します。「EJBサービス」アイコンをドラッグしたスイムレーンに応じて、表示されるフィールドが異なります。表37-5に詳細を示します。
表37-5 「EJBサービスの作成」ダイアログ
フィールド | 値 |
---|---|
名前 |
デフォルトの値をそのまま使用するか、別の名前を入力します。 |
タイプ |
次の値が表示されます。
|
バージョン |
注意: このフィールドは、「EJBサービス」アイコンを「外部参照」スイムレーンにドラッグした場合のみ表示されます。 サポートするEJBのバージョンをEJB2またはEJB3 (デフォルト選択)から選択します。「インタフェース」リストで「WSDL」を選択した場合は、「EJB3」のみを選択できます。 |
インタフェース |
「WSDL」を選択します。 |
JNDI名 |
注意: このフィールドは、「EJBサービス」アイコンを「外部参照」スイムレーンにドラッグした場合のみ表示されます。 Enterprise JavaBeansのJNDI名を入力します。 |
Jarファイル |
「検索」アイコンをクリックし、「SDOベースのEnterprise JavaBeansアプリケーションの設計」で作成したEJB JARファイルを選択します。JARチューザ・ダイアログでは、現在のプロジェクト・ディレクトリのSCA-INF/libサブディレクトリで起動されるJARファイルを検索して表示します。JARファイルには、インタフェース・クラスおよび任意のサポート対象クラスが含まれます。 注意: 現在のプロジェクトの外部にあるJARファイルを選択する場合、Oracle JDeveloperは、現在のプロジェクトのSCA-INF/libディレクトリにあるJARファイルのコピーを作成します。プロンプトが表示されたら、「OK」をクリックして承認します。 |
JAVAインタフェース |
「参照」アイコンをクリックして「クラス・ブラウザ」ダイアログを起動し、以前に作成したEnterprise JavaBeansインタフェースの完全修飾Javaクラス名を選択します。このクラスは、選択したJARファイルに存在している必要があります。JARファイルを指定しない場合、クラスは現在のプロジェクト・ディレクトリの/SCA-INF/classesサブディレクトリ内にあるとみなされます。 注意: 「Jarファイル」フィールドを使用する場合、「アプリケーション」メイン・メニューから「プロジェクト・プロパティ」→「ライブラリとクラスパス」→「JAR/ディレクトリの追加」を選択して、新規JARファイルをプロジェクトに追加する必要はありません。 |
WSDL URL |
注意: WSDLファイルの生成前に、必ず、「Webサービス注釈の使用方法」の説明に従ってEnterprise JavaBeansインタフェースの注釈を作成しておいてください。 右側にある2番目のアイコンをクリックして、Enterprise JavaBeansインタフェースを表すWSDLファイルを生成します。 「SDOコンパイラを使用したSDOオブジェクトの作成方法」の説明に従ってOracle JDeveloperでSDOオブジェクトを作成した場合は、このオプションで自動的に生成されたWSDLファイルを必ず選択してください。 |
ポート・タイプ |
ポート・タイプを選択します。 |
コールバック・ポート・タイプ |
コールバック・ポート・タイプを選択します(非同期サービスの場合)。 |
「OK」をクリックします。
この項では、Oracle SOA Suiteを起動するEnterprise JavaBeansクライアントの設計方法について説明します。
標準のEnterprise JavaBeansクライアントを使用します。次の例に詳細を示します。
InitialContext ic = new InitialContext(jndiProps); SimpleEjb svc = (SimpleEjb) ic.lookup("PassthroughRef"); String result = svc.addBreadCrumb("RemoteTest");
Enterprise JavaBeansからSDO - Enterprise JavaBeansサービスを起動するには、クライアント・ライブラリを使用する必要があります。Enterprise JavaBeansクライアントを設計するには、次のガイドラインに従ってください。
JNDIツリーからSOAServiceInvokerBean
を検索します。
SOAServiceFactory
のインスタンスを取得し、ファクトリにEnterprise JavaBeansサービス・インタフェースのプロキシを返すように要求します。
クライアント側のEnterprise JavaBeansの起動ライブラリ($FMW_HOME/soa/soa/modules/oracle.soa.fabric_11.1.1/fabric-client.jar
またはOracle JDeveloperホーム・ディレクトリまたはOracle WebLogic Serverにあるfabric-runtime.jar
ファイル)をEnterprise JavaBeansクライアント・アプリケーションに含めることができます。たとえば、fabric-runtime.jar
ファイルをJDev_Home
\jdeveloper\soa\modules\oracle.soa.fabric_11.1.1
ディレクトリに格納できます。
Enterprise JavaBeansアプリケーションがOracle SOA Suiteと異なるJVMで実行されている場合、Enterprise JavaBeansアプリケーションは、ejbClient
ライブラリを参照する必要があります。次のコードは、その一例を示しています。
serviceFactory.createService
のMyTestEJBService
パラメータを指定してサービスIDの完全なパスを指定する必要があります(たとえば、"default/MyTestProject!1.0/MyTestEJBService"
)。完全なパスが指定されていない場合、EJBException
-
Could
not locate
the
service
エラーが表示されます。
Properties props = new Properties();
props.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
props.put(Context.PROVIDER_URL, "t3://" + HOSTNAME + ":" + PORT);
InitialContext ctx = new InitialContext(props);
SOAServiceInvokerBean invoker =
(SOAServiceInvokerBean)
ctx.lookup("SOAServiceInvokerBean#oracle.integration.platform.blocks.sdox.ejb.api.
SOAServiceInvokerBean");
//-- Create a SOAServiceFactory instance
SOAServiceFactory serviceFactory = SOAServiceFactory.newInstance(invoker);
//-- Get a dynamice proxy that is essentially a remote reference
HelloInterface ejbRemote =
serviceFactory.createService("complete_path/MyTestEJBService", HelloInterface.class);
//-- Invoke methods
Item item = (Item) DataFactory.INSTANCE.create(Item.class);
item.setNumber(new BigInteger("32"));
SayHello sayHello = (SayHello)
DataFactory.INSTANCE.create(SayHello.class);
sayHello.setItem(item);
SayHelloResponse response = ejbRemote.sayHello(sayHello);
Item reply = response.getResult();
Java EEアプリケーションからSOAコンポジット・アプリケーションを起動するために必要なロール名を指定するには、ロール名をEnterprise JavaBeansサービス構成に追加します。Enterprise JavaBeansサービスは、コール元のプリンシパルにセキュリティ・ロールがあるかどうかをチェックします。次の例に詳細を示します。
<service name="EJBService" ui:wsdlLocation="BPELEJBProcess.wsdl">
<interface.wsdl
interface="http://xmlns.oracle.com/EJBApplication/EJBProject/BPELEJBProcess#wsdl.int
erface(BPELProcess1)"callbackInterface="http://xmlns.oracle.com/EJBApplication/
EJBProject/BPELEJBProcess#
wsdl.interface(BPELEJBProcessCallback)"/>
<property name="rolesAllowed">Superuser, Admin</property>
<binding.ejb javaInterface="java.class.ejb.com" serviceId="EJBService"
jarLocation="soaejb.jar"/>
</service>
この項では、資格証明ストア・フレームワークでEnterprise JavaBeansバインディングのサポートを構成する方法について説明します。
すべてのEnterprise JavaBeansバインディングでは、サービス・データ・オブジェクト(SDO)のEnterprise JavaBeansバインディングのみではなく、JNDIユーザー・アクセス資格証明を格納するための資格証明ストア・フレームワーク(CSF)の使用がサポートされています。
Oracle Enterprise Manager Fusion Middleware Controlでは、Enterprise JavaBeansバインディングの次のJNDIプロパティを編集できます。
java.naming.factory.initial
java.naming.provider.url
java.naming.dns.url
java.naming.factory.url.pkgs
java.naming.factory.url.pkgs
java.naming.security.authentication
java.naming.security.protocol
java.naming.security.principal
java.naming.security.crendentials
oracle.jps.credstore.map
oracle.jps.credstore.key
これらのプロパティを編集するには、Oracle Enterprise Manager Fusion Middleware Controlで次の手順を実行します。
Enterprise JavaBeansバインディング・コンポーネントを含むSOAコンポジット・アプリケーションを右クリックします。
「サービス/参照プロパティ」を選択します。
Enterprise JavaBeansバインディング・コンポーネントを選択します。
「プロパティ」タブをクリックします。
適切なプロパティを設定します。
プロパティoracle.jps.credstore.map
およびoracle.jps.credstore.key
を指定して、CSFマップにJNDIルックアップのプリンシパル/資格証明を格納することをお薦めします。プロパティとしてユーザー名/パスワードを直接格納するのはセキュアではありません。
Oracle Enterprise Manager Fusion Middleware Controlで、次のいずれかに移動して、「資格証明」ページを表示します。
(アプリケーションがOracle WebLogic Serverにデプロイされている場合)「Domain」→「セキュリティ」→「資格証明」の順に選択します。
または
(アプリケーションがWebSphere Application Serverにデプロイされている場合)「セル」→「セキュリティ」→「Application」→「ポリシー」の順に選択します。
新規マップを追加するには、「マップの作成」を選択します。
マップをクリックして、oracle.jps.credstore.map
のキー・エントリを追加します。