EJB Webサービス・プロバイダのOC4Jへの登録

EJBに基づくWebサービスを初めてデプロイする前に、サポートされている次のEJB Webサービス・タイプのプロバイダを登録する必要があります。

ここでの説明は、Oracle9i JDeveloper内の埋込みOC4JサーバーまたはスタンドアロンOC4Jインスタンスに適用されます。

このトピックでは、<jdev_install>は、インストールしている場所を指します。

プロバイダを登録するには、次のようにします。
  1. 必要な場合はOC4Jをインストールします。OC4Jが稼働中の場合は、「OC4Jのインストール、起動および停止」の説明に従って停止します。
  2. ファイル<jdev_install>/soap/webapps/soap/soap/WEB-INF/soap.xmlに、次の行を追加します。
    <osc:providerManager>
    	<osc:option name="autoDeploy" value="true" />
    </osc:providerManager>
  3. ステートレスEJB、ステートフルEJBおよびエンティティEJBのプロバイダ情報を含む3つのXMLファイルを作成します。次のそれぞれについて、コードをテキスト・エディタにコピーし、<hostname.domain>をマシンのドメイン修飾ホスト名に置き換えて、説明のとおりに保存します。

    次のコードを<jdev_install>/j2ee/home/statelessejb-provider.xmlとして保存します。

    <isd:provider xmlns:isd="http://xmlns.oracle.com/soap/2001/04/deploy/provider"
    	id="stateless-ejb-provider"
    	class="oracle.soap.providers.ejbprov.StatelessEJBProvider">
    	<isd:option key="SecurityPrincipal" value="admin"/>
    	<isd:option key="SecurityCredential" value="welcome"/>
    	<isd:option key="ContextProviderURL" value="ormi://<hostname.domain>"/>
    	<isd:option key="FullContextFactoryName" value="com.evermind.server.rmi.RMIInitialContextFactory"/>
    </isd:provider>

    次のコードを<jdev_install>/j2ee/home/statefulejb-provider.xmlとして保存します。

    <isd:provider xmlns:isd="http://xmlns.oracle.com/soap/2001/04/deploy/provider"
    	id="stateful-ejb-provider"
    	class="oracle.soap.providers.ejbprov.StatefulEJBProvider">
    	<isd:option key="SecurityPrincipal" value="admin"/>
    	<isd:option key="SecurityCredential" value="welcome"/>
    	<isd:option key="ContextProviderURL" value="ormi://<hostname.domain>"/>
    	<isd:option key="FullContextFactoryName" value="com.evermind.server.rmi.RMIInitialContextFactory"/>
    </isd:provider> 

    次のコードを<jdev_install>/j2ee/home/entityejb-provider.xmlとして保存します。

    <isd:provider xmlns:isd="http://xmlns.oracle.com/soap/2001/04/deploy/provider"
    	id="entity-ejb-provider"
    	class="oracle.soap.providers.ejbprov.EntityEJBProvider">
    	<isd:option key="SecurityPrincipal" value="admin"/>
    	<isd:option key="SecurityCredential" value="welcome"/>
    	<isd:option key="ContextProviderURL" value="ormi://<hostname.domain>"/>
    	<isd:option key="FullContextFactoryName" value="com.evermind.server.rmi.RMIInitialContextFactory"/>
    </isd:provider>
  4. 次のコマンドを切り取り、テキスト・エディタに貼り付け(1行になります)、<jdev_install>を適切なパスに置き換えます。
    Java -cp <jdev_install>/lib/xmlparserv2.jar;<jdev_install>/soap/lib/soap.jar;<jdev_install>/j2ee/home/lib/http_client.jar;<jdev_install>/j2ee/home/lib/javax-ssl-1_2.jar;<jdev_install>/j2ee/home/lib/jssl-1_2.jar;<jdev_install>/j2ee/home/activation.jar;<jdev_install>/j2ee/home/mail.jar oracle.soap.client.ProviderManagerClient

    編集したコマンドをコピーし、コマンド・プロンプトに貼り付けます。プロバイダ・マネージャの現在の使用状況の詳細が表示されます。

  5. 同じコマンドを、EJBプロバイダを登録するためのパラメータを使用して実行します。コマンド・プロンプトで、ステップ4のコマンドの後に次のいずれかを続けて実行、これを3回繰り返します。
    http://localhost:8888/soap/servlet/soaprouter deploy <jdev_install>\j2ee\home\statelessejb-provider.xml
    http://localhost:8888/soap/servlet/soaprouter deploy <jdev_install>\j2ee\home\statefulejb-provider.xml
    http://localhost:8888/soap/servlet/soaprouter deploy <jdev_install>\j2ee\home\entityejb-provider.xml
  6. listコマンドを使用して、プロバイダが登録されたことを確認します。コマンドラインで、ステップ3のコマンドの後に次を続けて入力します。
    http://localhost:8888/soap/servlet/soaprouter list
  7. 「OC4Jのインストール、起動および停止」の説明に従ってOC4Jを起動します。

これで、OC4JのSOAPサーバーへのEJBプロバイダの登録が完了しました。Webサービス公開ウィザードを起動し、EJBリモート・インタフェースを公開するクラスとして入力することにより、EJBに基づくWebサービスを作成できます。


SOAP Webサービスの開発