Oracle Fusion Middleware Oracle SOA Suite、WebCenterおよびADFアップグレード・ガイド 11g リリース1(11.1.1) B55926-02 |
|
![]() 戻る |
![]() 次へ |
この章では、Oracle SOAアプリケーションをOracle Fusion Middleware 11gにアップグレードする際に重要な追加情報について説明します。
Oracle SOA Suite、WebCenterおよびADFの各アプリケーションのアップグレード時に必要となる主なタスクは、第8章「Oracle SOA Suite、WebCenterおよびADFアプリケーションのアップグレードの概要」で説明しています。
ここでは、Oracle SOAアプリケーションのアップグレードのみに該当するタスクについて説明します。
Oracle Enterprise Service Bus 10gからOracle Mediator 11gへのアップグレードの詳細は、次の各項を参照してください。
サービスとして公開されないOracle Enterprise Service Busルーティング・ルールのアップグレード
SOAPヘッダーのあるOracle Enterprise Service BusプロジェクトのOracle Mediator 11gへのアップグレード
Oracle Enterprise Service Busのメッセージ・ヘッダーのフィルタリングまたは設定のアップグレード
Webサービスとして公開されないESBルーティング・サービスを含むOracle Enterprise Service Bus 10gプロジェクトをアップグレードする場合、ルーティング・サービスと関連コンポジットは、アップグレード後に起動されません。
この問題を解決するには、Oracle Mediator 11gで、ルーティング・サービスをWebサービスとして公開されるように変更します。詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』のMediatorルーティング・ルールの作成に関する項を参照してください。
また、アップグレード・プロセスを開始する前に、Oracle Enterprise Service Bus 10gプロジェクトのすべてのルーティング・サービスがWebサービスとして公開されることを確認することもできます。
Oracle Enterprise Service Bus 10gプロジェクトでドメイン値マップを使用する場合、DVMのxPath関数と相互参照は自動的にアップグレードされますが、DVMと相互参照メタデータを11gにアップグレードするために、アップグレード後に特定のタスクを実行する必要があります。
詳細は、第9.3.6.7項「Oracle SOA Suiteコマンドライン・アップグレード・ツールを使用したドメイン値マップ(DVM)と相互参照のアップグレード」を参照してください。
Enterprise Service Bus(ESB)10gでXSLT関数を使用してSOAPヘッダーを操作していた場合、アプリケーションのアップグレード後、Oracle Mediator 11gでは、これらのヘッダー操作は割当てとしてモデル化されます。
複雑なヘッダー操作については、アップグレードしたOracle Mediator 11gプロジェクトをデプロイする前にSOAPヘッダーを手動で確認してください。
詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』の静的ルーティング・ルールの作成に関する項を参照してください。
Oracle Enterprise Service Bus 10gでは、単一ESBプロジェクト内で同じtargetNameSpace
を参照するWSDLを含む複数のルーティング・サービスがサポートされます。
たとえば、Oracle Technology Networkで提供されているサンプル10gアプリケーションのうち、少なくとも1つ(samples_102_responseForward
サンプル・アプリケーション)がこのシナリオをサポートしています。
Oracle Mediator 11gでは、この構成はサポートされません。Oracle JDeveloper 11gでアプリケーションをアップグレードしているときに、同じtargetNameSpace
を指すWSDLを含む2つ目のサービスが検出されると、そのネームスペースに接尾辞_service-qnameが付けられ、ネームスペースが変更されます。さらに、警告メッセージがログ・ファイルに追加されます。
たとえば、Samples_102_ResponseForward
サンプル・アプリケーションでは、サービスDispatchShipmentDetailsのtargetNameSpace
は次のようになっています。
@ http://oracle.com/esb/namespaces/Samples_102_ResponseForward
アプリケーションのアップグレード後、これは次のように表示されます。
@ http://oracle.com/esb/namespaces/ Samples_102_ResponseForward_Samples.102_ResponseForward.DispatchShipmentDetails
この例で、Samples.102_ResponseForward.DispatchShipmentDetailsはサービスDispatchShipmentDetails
のQNameです。
Oracle Enterprise Service Bus 10gでは、非同期ルーティング・サービスはサポートされていませんでした。Oracle Enterprise Service BusによってOracle BPEL Process Managerの非同期プロセスが呼び出されると、OneWayサービスが作成されていました。
このようなOneWayサービスを使用するプロジェクトを作成した場合は、Oracle JDeveloper 11gでアプリケーションを開いてアップグレードした後、古いルーティング・サービスを削除して、OneWayを起動するかわりにOracle Mediator 11g非同期ルーティングを使用するルーティング・サービスを再作成できます。
Oracle Enterprise Service Bus 10gでは、SOAP、JCA、JMS、AQアダプタなどのアダプタの標準およびカスタム・ヘッダー・プロパティで、メッセージ・ヘッダーのフィルタリングまたは設定がサポートされます。Oracle Enterprise Service Busでのフィルタリングは、ルーティング・ルールの<filterExpression>
タグの一部として実行されます。
Oracle JDeveloper 11gでOracle Enterprise Service Busプロジェクトを開くと、各ルーティング・ルールがケースにアップグレードされ、フィルタ式が条件に変換されます。これらの変更は、ルーティング・サービスのmplanファイルで確認できます。
たとえば、次のコード・スニペットは、Oracle Enterprise Service Bus 10gルーティング・ルールのフィルタ式を示しています。
<filterExpression>{ehdr:getRequestHeader ('/fhdr:InboundFileHeaderType/fhdr:fileName') = 'Mobile.xml'};{ namespace fhdr=http://xmlns.oracle.com/pcbpel/adapter/file/ namespace ehdr=http://www.oracle.com/XSL/Transform/java /oracle.tip.esb.server.headers.ESBHeaderFunctions } </filterExpression>
アップグレード中に、この例はmplanファイル内のケースの対応する条件に変換されます。
<condition language="xpath" xmlns:ehdr="http://www.oracle.com/XSL /Transform/java/oracle.tip.esb.server.headers.ESBHeaderFunctions" xmlns:fhdr="http://xmlns.oracle.com/pcbpel/adapter/file/"> <expression>$in.property.jca.file.FileName ='Mobile.xml'</expression> </condition>
メッセージ・ヘッダーの設定は、変換ファイルの一部として実行され、assign文にアップグレードされます。
次のコード・スニペットは、Oracle Enterprise Service Bus 10gのメッセージ・ヘッダー設定の例を示しています。
<xsl:variable name="inputCountry" select="/imp1:CustomerData/Country"/> <select="ehdr:setOutboundHeader ('/jhdr:JMSOutboundHeadersAndProperties /jhdr:JMSOutboundProperties/jhdr:Property[position()=1]/@value',$inputCountry, 'jhdr=http://xmlns.oracle.com/pcbpel/adapter/jms/;')"/>
アップグレード中に、この例は、次のように11gの対応するassign要素に変換されます。
<assign> <copy expression="$in.CustomerData/CustomerData/Country" target="$out.CustomerData/jhdr:JMSOutboundHeadersAndProperties /jhdr:JMSOutboundProperties/jhdr:Property[position()=1]/@value"/> </assign>
ほとんどの標準ヘッダー・プロパティは、対応する11gヘッダーにアップグレードされます。カスタマイズされたヘッダーは、ベスト・エフォート方式でアップグレードされますが、カスタマイズされたヘッダーのすべてのバリエーションをアップグレードすることはできません。
このため、カスタマイズされたヘッダーは、対応する条件またはassign要素と対応するmplanアーチファクトに手動でアップグレードする必要があります。
詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』のOracle Mediatorの概要に関する項を参照してください。
Oracle Enterprise Service Bus 10gプロジェクトをOracle SOA Suite 11gにアップグレードする際に問題が発生するのを回避するには、ESBサーバー上のサービスが、現在ESB Oracle JDeveloperプロジェクト内にあるサービスと同期されていることを確認します。
このタスクを実行する手順は、次のとおりです。
Oracle JDeveloper 10gの「設計」タブの上部にある「ESBサーバーと同期」アイコンをクリックします。
「ESBサーバーとの同期の確認」ダイアログの「はい」をクリックします。
詳細は、Oracle Technology Network(OTN)のOracle Application Server 10g リリース3(10.1.3.1.0)で提供されている『Oracle Enterprise Service Bus開発者ガイド』のESBサーバーとのサービスの同期に関する項を参照してください。
http://www.oracle.com/technology/documentation/middleware.html
次の各項では、Technology AdaptersをOracle Fusion Middleware 11gにアップグレードする際に必要となる可能性のあるアップグレード・タスクについて説明します。
Oracle SOA Suite 10gのプロジェクトをOracle SOA Suite 11gにアップグレードした後、アダプタ構成ウィザードを使用して、テクノロジ・アダプタのアップグレードを確認することをお薦めします。これにより、11gのすべての必須フィールドに値が指定されていること、および新しいOracle Fusion Middleware 11g環境へのアダプタの接続が有効であることを確認できます。
詳細は、『Oracle Fusion Middlewareテクノロジ・アダプタ・ユーザーズ・ガイド』でご使用のアダプタに関する説明を参照してください。
アダプタ・ヘッダーを使用するアプリケーションをアップグレードした後、Oracle JDeveloper 11gでアプリケーションを開くとエラーが表示されることが多くあります。このエラーは、ヘッダー関数の解析中に変数またはパラメータが認識されなかったことを示しています。
これは、Oracle Fusion Middleware 11gでアダプタ・ヘッダー変数の定義方法が変更されたためです。
Oracle Application Server 10g リリース3(10.1.3)では、次のような名前、または方向および使用しているアダプタ・タイプに応じた同様な名前のwsdl
ファイルで、アダプタ・ヘッダー変数を作成します。
fileAdapterOutboundHeader.wsdl
Oracle Fusion Middleware 11gでは、アダプタ・ヘッダー変数は、Oracle JDeveloperの「起動」ダイアログ・ボックスの「プロパティ」タブで設定するプロパティです。
たとえば、JCA Adapter for Files/FTPに対して設定できるプロパティについては、『Oracle Fusion Middlewareテクノロジ・アダプタ・ユーザーズ・ガイド』のインバウンド・ヘッダーに関する項で説明されています。
Oracle JDeveloper 11gでプロジェクトを開いた後、Oracle Application Server 10g用に作成したwsdlヘッダー・ファイルはプロジェクトに添付されなくなります。wsdlファイル内の各変数を、ヘッダー変数を使用する各アダプタ・タイプのプロパティとして定義する必要があります。
詳細は、『Oracle Fusion Middlewareテクノロジ・アダプタ・ユーザーズ・ガイド』の各アダプタ・タイプに関する章を参照してください。
Oracle Application Server 10gでは、JCAファイル内の非管理接続を使用して開発リソースを指すことができます。たとえば、JCAファイル内のnon-managed-connection
要素を使用して、データソース定義を指定できます。
Oracle Application Server 10gでは、非管理接続の使用は開発専用に予約されていました。Oracle Fusion Middleware 11gでは、非管理接続はサポートされていません。
Oracle Application Server 10gのプロジェクトをOracle Fusion Middleware 11gにアップグレードする前に、datasources.xmlまたはoc4j-ra.xmlファイルで適切に定義されている接続へのJNDI参照のみを含むJCAファイルをすでに使用していることが理想的です。
アダプタ接続のために非管理接続を使用するアプリケーションをアップグレードする場合は、アップグレード後に、Oracle WebLogic Server管理コンソールなど、サポートされている管理ツールを使用して定義された適切な接続を使用するようにプロジェクトを変更する必要があります。
アダプタ構成ウィザードを使用して10g リリース3(10.1.3)テクノロジ・アダプタを作成し、ウィザードの「説明」フィールドにアダプタの説明を入力した場合、Oracle JDeveloper 11gでプロジェクトを開いて移行すると、その説明は失われます。
これは、アップグレード中にdocumentation
要素がWSDLファイルから削除されるためです。
アダプタが重要な場合は、プロジェクトのアップグレード後に、Oracle JDeveloper 11gのアダプタ構成ウィザードを使用して説明を追加できます。
Oracle SOA Suite 10gでMQSeriesアダプタのインバウンド同期リクエスト/リプライ・ユースケースを使用していた場合、メッセージ・タイプが1つ(REQUEST)のみであることに気付きます。
Oracle SOA Suite 11gでは、MQアダプタはREQUESTとNORMALの2つのメッセージ・タイプをサポートします。REQEUST MQメッセージ・タイプでは、ヘッダーに常にreplyToQueue
が設定されるため、FallbackQueueName
とFallbackQueueManagerName
は必要ありません。これに対し、NORMALメッセージには、FallbackQueueName
とFallbackQueueManagerName
が設定される場合とされない場合があります。
このため、10gのインバウンド同期リクエスト/リプライ・シナリオを11gにアップグレードした場合、メッセージ・タイプはREQUESTタイプのままです。したがって、FallbackQueueName
とFallbackQueueManagerName
は、そのプロパティが.jca
ファイルには存在しますが、実行時には必要ありません。これらのプロパティを使用する場合は、メッセージ・タイプをNORMALに設定する必要があります。
インバウンド同期リクエスト/リプライ・ユースケースの詳細は、『Oracle Fusion Middlewareテクノロジ・アダプタ・ユーザーズ・ガイド』のOracle MQ Seriesアダプタのユースケースに関する項を参照してください。
10g リリース3(10.1.3)のドキュメント化されたユースケースであるMQSeriesアダプタのアウトバウンド・デキュー・ユースケースを使用していた場合、これらのタイプのプロジェクトはOracle JDeveloper 11gにアップグレードできないことに注意してください。
このため、Oracle JDeveloper 11gへのアップグレード後に再作成する必要があります。プロジェクトの再作成中に、UITransmissionPrimitive
の値をSynchronousDequeue
に設定する必要があります。
詳細は、『Oracle Fusion Middlewareテクノロジ・アダプタ・ユーザーズ・ガイド』のアウトバウンド・デキュー・シナリオに関する項を参照してください。
Oracle Application Server Adapter for Advanced Queuing(AQアダプタ)を使用するアプリケーションをアップグレードしている場合、Oracle Fusion Middleware 11gでは、AQアダプタ・ヘッダーへのアクセス方法が異なることに注意してください。
具体的には、Oracle SOA Suite 11gにアップグレードした後、AQアダプタ・ヘッダーに対して次のアップグレード後のステップを実行する必要があります。この手順は、Oracle MediatorにアップグレードされるOracle BPEL Process ManagerプロジェクトとOracle Enterprise Service Busプロジェクトの両方に対して必要です。
Oracle Mediatorへのアップグレード後、Oracle Mediatorファイルの.mplan
ファイルで、インバウンドからアウトバウンドにjca.aq.HeaderDocument値を割り当てます。
Oracle BPEL Process Manager 11gへのアップグレード後、次の手順を実行します。
文字列タイプの新しい変数vInboundHeadersを定義します。
次に例を示します。
<variable name="vInboundHeaders" type="xsd:string"/>
receiveアクティビティで、jca.aq.HeaderDocument
プロパティが前述の変数に書き込まれていることを確認します。
次に例を示します。
<bpelx:property name="jca.aq.HeaderDocument" variable="vInboundHeaders"/>
起動時に、vInboundHeaders値がjca.aq.HeaderDocument
プロパティにコピーされることを確認します。
<invoke name="Invoke_1" inputVariable="Invoke_1_Enqueue_InputVariable" partnerLink="EnqueueClobPayload" portType="ns2:Enqueue_ptt" operation="Enqueue"> <bpelx:inputProperty name="jca.aq.HeaderDocument" variable="vInboundHeaders"/> </invoke>
AQアダプタを使用していない場合は、次の手順を使用するため、jca.aq.HeaderDocument
プロパティの値は取得されません。 このシナリオでは、プロパティを手動で移入する必要があります。
このシナリオには2つのステップがあります。 Oracle Enterprise Service BusをOracle Mediator 11gにアップグレードした後に最初のステップを実行し、Oracle BPEL Process Manager 11gにアップグレードした後に2番目のステップを実行します。
これらの例は、アダプタ・ヘッダーからOracle B2Bを起動する方法を示しています。
Oracle Mediatorへのアップグレード後に実行するステップの例
Oracle Mediatorへのアップグレード後、Oracle Mediatorファイルの.mplan
ファイルで、インバウンドからアウトバウンドにjca.aq.HeaderDocument
値を割り当てます。
次に例を示します。
<copy target="$out.property.jca.aq.HeaderDocument" expression="'<?xml version = "1.0" standalone= "yes"?><tns:Header @ xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/aq/outbound/"> <tns:PayloadHeader><MSG_ID>< /MSG_ID><INREPLYTO_MSG_ID>< /INREPLYTO_MSG_ID><FROM_PARTY>GlobalChips< /FROM_PARTY><TOPARTY>Acme< /TO_PARTY><ACTION_NAME></ACTION_NAME><DOCTYPE_NAME>ORDERS< /DOCTYPE_NAME><DOCTYPE_REVISION>D98A< /DOCTYPE_REVISION><MSG_TYPE>1< /MSG_TYPE><PAYLOAD>< /PAYLOAD></tns:PayloadHeader></tns:Header>'"/>
Oracle BPEL Process Managerへのアップグレード後に実行するステップの例
Oracle BPEL Process Manager 11gへのアップグレード後、次の手順を実行します。
string
タイプの新しい変数headerVariableを定義します。
次に例を示します。
<variable name="headerVariable" type="xsd:string"/>
例14-1にあるようなassignブロックを作成します。
起動時に、headerVariable値がjca.aq.HeaderDocument
プロパティにコピーされることを確認します。
<invoke name="Send_PO" partnerLink="X12_4010_850_ENQ_Service" portType="ns2:Enqueue_ptt" operation="Enqueue" inputVariable="Send_PO_Enqueue_InputVariable"> <bpelx:inputProperty name="jca.aq.HeaderDocument" variable="headerVariable"/> </invoke>
例14-1 アダプタ・ヘッダーをアップグレードする際のAssignブロック
<assign name="assign header "> <copy> <from expression="'<?xml version = "1.0"standalone = "yes" standalone = "yes"?><tns:Header @ xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/aq/Inbound/"> <tns:PayloadHeader><MSG_ID>12345< /MSG_ID><INREPLYTO_MSG_ID>54321< /INREPLYTO_MSG_ID><FROM_PARTY>Acme< /FROM_PARTY><TO_PARTY>GlobalChips< /TO_PARTY><ACTION_NAME>contentType:application/octet-stream;filename:abc.xml< /ACTION_NAME><DOCTYPE_NAME>850< /DOCTYPE_NAME><DOCTYPE_REVISION>4010< /DOCTYPE_REVISION><MSG_TYPE>1</MSG_TYPE><PAYLOAD>< /PAYLOAD></tns:PayloadHeader></tns:Header>'"/> <to variable="headerVariable"/> </copy> </assign>
第14.2.7項「AQアダプタ・ヘッダーのアップグレード」では、アプリケーションがペイロード・ヘッダーにアクセスする必要がある場合にOracle Fusion Middleware 11gで必要なjca.aq.HeaderDocument
プロパティの使用方法を説明しています。 ペイロード・ヘッダー機能にアクセスするすべてのOracle Application Server 10g BPELプロセスおよびESBプロセスに対して、この項で説明した手順を実行する必要があります。
第14.2.7項に記載されている情報以外に、<Header>
要素および<PayloadHeader>
要素のターゲット・ネームスペースにより、Oracle Fusion Middleware11g リリース1(11.1.1.3.0)が変更されました。 そのため、ペイロード・ヘッダーにアクセスし、Oracle SOA Suite 10gを使用して設計されたBPELプロセスおよびESBプロセスの場合、アダプタ・ウィザードを使用してサービスおよび参照アーチファクトを再生成する必要があります。これは、Oracle Application Server 10gではパートナ・リンクとも呼ばれます。
<Header>
要素の定義に正しいターゲット・ネームスペースが使用されるように、アーチファクトを再生成する必要があります。 ペイロード・ヘッダーにアクセスするには、第14.2.7項に記載されているステップ以外にこのステップを実行する必要があります。
さらに、<Header>
要素を使用するAssignおよびTransformationsも変更する必要があります。 このステップを実行しないと、設計時と実行時にネームスペースが一致しないため、XPathエラーおよびメッセージ・エンキュー・エラーが発生します。
Oracle Fusion Middleware 11gでは、Oracle BPEL Process ManagerプロジェクトのAQアウトバウンド・リクエスト/リプライ・シナリオの作成に使用する手順が変更されています。
このため、このシナリオを使用するOracle SOA Suite 10gアプリケーションをアップグレードする場合、アップグレード中に作成されるWSDLファイルには必要なバインディング情報が含まれていません。
この問題を解決するために、Oracle JDeveloper 11gでアプリケーションを開いてアップグレードした後に次の手順を実行します。
アップグレードによって作成されたWSDLファイルに、次のようにJCAエントリを追加します。
<?binding.jca CombinedRequestReply_aq.jca?> <wsdl:definitions name="CombinedRequestReply" ... > . . . </wsdl:definitions>
composite.xml
ファイルにバインディング・エントリを追加します。
<reference ui:wsdlLocation="CombinedRequestReply.wsdl" name="CombineRequestReply"> <interface.wsdl interface="http://xmlns.oracle.com/pcbpel /adapter/aq/EnqueueRequest/#wsdl.interface(Enqueue_ptt)" callbackInterface="http://xmlns.oracle.com/pcbpel /adapter/aq/DequeueReply/#wsdl.interface(Dequeue_ptt)" xmlns:ns="http://xmlns.oracle.com/sca/1.0"/> <binding.jca config="CombinedRequestReply_aq.jca"/> </reference>
.bpel
ファイルから、使用されないWSDL参照をすべて削除します。
第9.1項「Oracle SOA SuiteアプリケーションでのOracle JDeveloper 11g移行ウィザードの使用について」で説明したように、11gにアップグレードする前に、Oracle SOA Suite環境に最新のパッチ・セットを適用し、最新の10g リリース3(10.1.3)Oracle JDeveloperを使用することをお薦めします。
ただし、10g リリース3(10.1.3.3)以前のリリースからアップグレードしている場合は、ストアド・プロシージャ用のデータベース・アダプタを使用する際に次のことに注意してください。
Oracle SOA Suite 10g リリース3(10.1.3.3)以前では、アダプタのXSDジェネレータにより、非修飾要素を含むXSDが生成されます。非修飾要素は、XSDファイルのInputParameters
ルート要素を確認することによって識別できます。非修飾要素は、次のように表示されます。
<db:InputParameters ... ></db:InputParameters>
db:
ネームスペースは、スキーマの定義で指定され、ターゲット・ネームスペースと同じです。
10g リリース3(10.1.3.4)以降では、XSDジェネレータによって修飾要素が生成されます。これは、次のようにInputParameters
ルート要素に表示されます。
<InputParameters ..></InputParameters>
db:
ネームスペースが削除されていることに注意してください。
Oracle SOA Suiteバージョンと互換性のないOracle JDeveloper 10g リリース3(10.1.3)のバージョンを使用している場合は、要素が削除されるシナリオに遭遇する可能性もあります。
<null>(some value)</null>
この解決策は、次のとおりです。
最初に、Oracle SOA Suite環境のバージョンと一致しているOracle JDeveloperバージョンを使用していることを確認します。
次に、Oracle JDeveloperとOracle SOA Suite10g リリース3(10.1.3.4)、またはOracle SOA SuiteとOracle JDeveloper 11gにアップグレードした後、XSDを再生成します。
XSDをアップグレードして再生成した後、関連する割当てアクティビティとxPath式を適切に変更する必要があります。
ヒューマン・ワークフロー・タスクを使用するOracle SOA Suiteアプリケーションをアップグレードしている場合は、次のアップグレード・タスクについて考慮する必要があります。
ヒューマン・タスクのタスク詳細を含むOracle SOA Suite 10gアプリケーションをアップグレードしている場合は、次のことに注意してください。
Oracle SOA Suite 10g リリース3(10.1.3)では、タスク詳細は同じコンポジット・プロジェクト内で生成され、コンポジットのデプロイ中にデプロイされていました。
Oracle SOA Suite 11gでは、タスク詳細は、個別にデプロイする必要のある個別のプロジェクトとして生成されます。
このため、Oracle Human Workflowのアップグレード中に、Oracle JDeveloper 11gで自動的にタスク詳細UI用の新しいプロジェクトが作成され、タスク詳細ページがアップグレードされます。関連するコンポジット・アプリケーションをデプロイした後、このプロジェクトを個別にデプロイする必要があります。
共通のヒューマン・ワークフロー・タスクを共有する複数のOracle JDeveloperプロジェクトを含むアプリケーションをアップグレードしている場合、Oracle JDeveloper 11gでアップグレードされたアプリケーションを慎重に確認してください。
アップグレード中に複数のプロジェクトが共通ディレクトリに移動するため、2つのプロジェクトのワークフロー・タスクで同じ名前が使用されている場合には、最初のプロジェクトに関連付けられているデータによって2番目のプロジェクトのデータが上書きされる可能性があります。
Oracle Business Rulesを使用するプロジェクトをアップグレードする際には、次のドキュメント・リソースを参照してください。
Oracle SOA Suiteアプリケーションの11gへのアップグレード中に、Oracle SOA Suite 10g環境がまだ稼働している場合は、最初にOracle SOA Suite環境に依存するクライアント・アプリケーションを確認、アップグレードおよびテストしてください。
次のリストを使用して、アップグレード後の新しい11g Oracle SOA Suite環境でクライアント・アプリケーションが動作するために必要な更新を分析してください。
クライアント・アプリケーションで、使用中のリモートOracle SOA Suite APIを確認します。
詳細は、第9.3.1項「Oracle Fusion Middleware 11gにおけるOracle SOA Suite APIの変更について」を参照してください。
クライアント・アプリケーションで、Oracle SOA Suite HTTP URLへの参照を検索します。Oracle SOA Suite 11g HTTP URLの構文は、10gから変更されています。
デプロイしたOracle SOA Suite 11gアプリケーションにアクセスするためにクライントが使用できる新しいURLを取得するには、Oracle Enterprise Manager Fusion Middleware Controlのアプリケーション・デプロイメントのホーム・ページを使用します。 詳細は、Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイドのSOAコンポジット・アプリケーションの監視に関する項を参照してください。
Web Services Addressing(WS-Addressing)を使用しているクライアント・アプケーションが存在する場合は、そのクライアントを変更する必要があります。
Oracle SOA Suite 11gは、クライアントに対してWS-Addressing 1.0をサポートしています。このため、WS-Addressing 1.0を認識するSOAPプロセッサを使用するか、またはWS-Addressing 1.0をサポートしないSOAPプロセッサを使用している場合は、11g WSDLを手動で変更して、WS-Addressing 1.0ヘッダーを取得または設定するようにクライアントを変更する必要があります。
WS-Addressing 1.0をサポートしないSOAPプロセッサによって起動できるようにWSDLを変更する方法の変更前と変更後の例は、例14-2および例14-3を参照してください。
WS-Addressingを使用するクライアントが、同時にアップグレードする予定ではないOracle SOA Suite 10g環境で実行されている場合は、Oracle SOA Suite環境に次のパッチを適用しないと、10gサーバーで実行しているクライアント・アプリケーションは11g BPELプロセスを起動できません。
詳細は、『Oracle Fusion Middlewareアップグレード・プランニング・ガイド』のパッチの適用によるアップグレードの相互運用性に関する問題への対処に関する項を参照してください。
JMSキューやデータソースなど、クライアント・アプリケーションのメッセージ・ターゲットへの参照を確認します。これらのリソースへの参照は、アップグレード後のOracle SOA Suite 11g環境を指すように更新する必要があります。
クライアント・アプリケーションがOracle Service Bus(OSB)を使用して、最適化された転送によってOracle BPEL Process Managerプロセスを起動している場合は、SOAP/HTMLを使用してOracle BPEL Process Managerプロセスを起動するようにクライアント・アプリケーションを変更する必要があります。
詳細は、Oracle Technology Network(OTN)で提供されているOracle Service Bus 10g リリース3(10.3)のドキュメントを参照してください。
http://www.oracle.com/technology/documentation/bea.html
例14-2 WS-Addressing 1.0をサポートするSOAPプロセッサで使用できるWSDLコードの例
<?xml version="1.0" encoding="UTF-8" ?> <definitions name="UnitedLoan" targetNamespace="http://services.otn.com" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:s1="http://www.autoloan.com/ns/autoloan" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://services.otn.com"> <plnk:partnerLinkType name="UnitedLoan"> <plnk:role name="UnitedLoanProvider"> <plnk:portType name="tns:UnitedLoan"/> </plnk:role> <plnk:role name="UnitedLoanRequester"> <plnk:portType name="tns:UnitedLoanCallback"/> </plnk:role> </plnk:partnerLinkType> <wsp:Policy xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/ oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="wsaddr_policy" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"> <wsaw:UsingAddressing xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"/> </wsp:Policy> <documentation> <abstractWSDL>http://stadg55.us.oracle.com:7001/soa-infra/services/default/ UnitedLoan!1.0/UnitedLoan.wsdl </abstractWSDL> </documentation> <types> <schema xmlns="http://www.w3.org/2001/XMLSchema"> <import namespace="http://www.autoloan.com/ns/autoloan" schemaLocation="http://stadg55.us.oracle.com:7001/soa-infra/services/ default/UnitedLoan!1.0*05ed6481-93e6-4b46-b2d7-a21fa27a36a9/ UnitedLoan_client?XSD=AutoLoanTypes.xsd"/> </schema> </types> <message name="UnitedLoanResultMessage"> <part name="payload" element="s1:loanOffer"/> </message> <message name="UnitedLoanRequestMessage"> <part name="payload" element="s1:loanApplication"/> </message> <portType name="UnitedLoanCallback"> <operation name="onResult"> <input message="tns:UnitedLoanResultMessage"/> </operation> </portType> <portType name="UnitedLoan"> <operation name="initiate"> <input message="tns:UnitedLoanRequestMessage"/> </operation> </portType> <binding name="UnitedLoanBinding" type="tns:UnitedLoan"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/> <wsp:PolicyReference xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" URI="#wsaddr_policy" wsdl:required="false"/> <operation name="initiate"> <soap:operation style="document" soapAction="initiate"/> <input> <soap:body use="literal" namespace="http://services.otn.com"/> </input> </operation> </binding> <binding name="UnitedLoanCallbackBinding" type="tns:UnitedLoanCallback"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="onResult"> <soap:operation style="document" soapAction="onResult"/> <input> <soap:body use="literal" namespace="http://services.otn.com"/> </input> </operation> </binding> <service name="UnitedLoan"> <port name="UnitedLoanPort" binding="tns:UnitedLoanBinding"> <soap:address location="http://stadg55.us.oracle.com:7001/soa-infra/services/ default/UnitedLoan!1.0*05ed6481-93e6-4b46-b2d7-a21fa27a36a9/ UnitedLoan_client"/> </port> </service> </definitions>
例14-3 WS-Addressing 1.0をサポートしないSOAPプロセッサで使用できるように変更されたWSDLコードの例
<?xml version="1.0" encoding="UTF-8" ?> <definitions name="UnitedLoan" targetNamespace="http://services.otn.com" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s1="http://www.autoloan.com/ns/autoloan" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:tns="http://services.otn.com" > <plnk:partnerLinkType name="UnitedLoan"> <plnk:role name="UnitedLoanProvider"> <plnk:portType name="tns:UnitedLoan"/> </plnk:role> <plnk:role name="UnitedLoanRequester"> <plnk:portType name="tns:UnitedLoanCallback"/> </plnk:role> </plnk:partnerLinkType> <types> <schema xmlns="http://www.w3.org/2001/XMLSchema"> <import namespace="http://www.autoloan.com/ns/autoloan" schemaLocation="http://stadg55.us.oracle.com:7001/ soa-infra/services/default/ UnitedLoan!1.0*05ed6481-93e6-4b46-b2d7-a21fa27a36a9/ UnitedLoan_client?XSD=AutoLoanTypes.xsd"/> </schema> <schema xmlns="http://www.w3.org/2001/XMLSchema"> <import namespace="http://www.w3.org/2005/08/addressing" schemaLocation="http://www.w3.org/2006/03/ addressing/ws-addr.xsd"/> </schema> </types> <message name="UnitedLoanResultMessage"> <part name="payload" element="s1:loanOffer"/> </message> <message name="UnitedLoanRequestMessage"> <part name="payload" element="s1:loanApplication"/> </message> <message name="WSAMessageIDHeader"> <part name="MessageID" element="wsa:MessageID"/> </message> <message name="WSAReplyToHeader"> <part name="ReplyTo" element="wsa:ReplyTo"/> </message> <message name="WSARelatesToHeader"> <part name="RelatesTo" element="wsa:RelatesTo"/> </message> <portType name="UnitedLoanCallback"> <operation name="onResult"> <input message="tns:UnitedLoanResultMessage"/> </operation> </portType> <portType name="UnitedLoan"> <operation name="initiate"> <input message="tns:UnitedLoanRequestMessage"/> </operation> </portType> <binding name="UnitedLoanBinding" type="tns:UnitedLoan"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="initiate"> <soap:operation style="document" soapAction="initiate"/> <input> <soap:header message="tns:WSAReplyToHeader" part="ReplyTo" use="literal"/> <soap:header message="tns:WSAMessageIDHeader" part="MessageID" use="literal"/> <soap:body use="literal" namespace="http://services.otn.com"/> </input> </operation> </binding> <binding name="UnitedLoanCallbackBinding" type="tns:UnitedLoanCallback"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="onResult"> <soap:operation style="document" soapAction="onResult"/> <input> <soap:header message="tns:WSARelatesToHeader" part="RelatesTo" use="literal"/> <soap:body use="literal" namespace="http://services.otn.com"/> </input> </operation> </binding> <service name="UnitedLoan"> <port name="UnitedLoanPort" binding="tns:UnitedLoanBinding"> <soap:address location="http://stadg55.us.oracle.com:7001/ soa-infra/services/default/ UnitedLoan!1.0*05ed6481-93e6-4b46-b2d7-a21fa27a36a9/ UnitedLoan_client"/> </port> </service> </definitions>