Thursday, October 13, 2011

Change the port number for Oracle XE

Found a good blog which describes how to change the port number for Oracle XE. Here is the link:

http://daust.blogspot.com/2006/01/xe-changing-default-http-port.html

Wednesday, September 21, 2011

Two scenarios of invoking asychronous service from BPEL

OrderService is one asynchronous service. When invoking it from one BPEL process we can have the different behaviour by using different activities: in one scenario OrderService is invoked and then BPEL process will wait for the callback response from OrderService. If the specified timeout occurs the notification is sent off but BPEL process continues the waiting for the response. However in another scenario after invoking OrderService BPEL will wait for the callback response. If the specified timout occurs BPEL will handle the timeout and will not wait for the callback response any more.

The first scenario can be implemented by using the activity invoke, receive wrapped in the scope with which onAlarm is attached.

The second scenario is implemented using pick activity. One branch of pick is onMessage to wait for the callback and another branch is onAlarm.

Thursday, September 15, 2011

Using MDS in JDeveloper

When using WSDL in MDS in Oracle SOA 11g, JDeveloper uses .adf\META-INF\adf-config.xml to decide where MDS is.

For example, in the following component.xml the WSDL's location is defined as:
oramds:/apps/SOInterfaces-2.3.9.8/BSC/OrderAndActivation/Activation/ServiceProvisioning-v1.wsdl.


When building the SOA application JDeveloper will look up the MDS from adf-config.xml in order to load the WSDL. From adf-config.xml we know that for /apps/SOInterfaces-2.3.9.8 it uses the metadata-store-usage is mstore-usage-2 which is a database-based MDS. Its database details is defined in metadata-store-usage with id="mstore-usage-2".

Thursday, August 25, 2011

Manually copy plan.xml into other servers in the cluster

It is strange that you need to do so. But it is true. In Oracle SOA 11g cluster environment when you update the plan.xml you need to copy this plan.xml to other servers in the same cluster before you can activate the changes. No doing so will lead the error that complains the plan.xml file is not found.

For example, when you create a new outbound connection pool for JMSAdapter in the one cluster which has 3 servers: server01_01, server01_02 and server01_03 the plan.xml is created when you do so via EM on server01_01. You need to manually copy this plan.xml to the same folder on server01_02 and server01_03 before you activate the changes. Otherwise you will get the error like the below:

java.io.FileNotFoundException: /opt/oracle/Middleware/Oracle_SOA1/soa/connectors/JMSPlan/Plan.xml (No such file or directory).



Create Distributed Queue in Oracle SOA 11g


Step1: Create the queues as the members of the distributed queue.
Assume there are 3 JMS server: SOAJMSServer_auto_2, SOAJMSServer_auto_3 and SOAJMSServer_auto_4.
Create 3 queues namely: qContentProvider1-2, qContentProvider1-3 and qContentProvider1-4. These queues are respectively targeted to the above 3 JMS servers.
Step2: Create the distributed queue.
Create the distributed queue: dist_ContentProvider1Queue in which the 3 queues created in Step1 are the members respectively.