Sunday Aug 03, 2014

Deploying OSB in a 12C Domain with BPM

When migrating your 11g OSB projects into 12C you may come up against the error deploying the WSDL.

Unknown protocol: servicebus

This typically happens if you have BPM installed in the same  domain as OSB. In order to fix this perform the following steps:

1. Log in to the WLS Administration Console
2. On the navigation tree on the left, expand services and click OSGI Frameworks
3. Click on the bac-svnserver-osgi-framework link
4. Click lock and edit
5. In the init properties text field at the bottom add


Make sure there are no spaces at the end.
6. Click Save and activate the changes, restart the Weblogic server.

Tuesday Apr 30, 2013

How to Enable Web Forms Manually

I have just upgraded my BPM to (PS 6). There has been a lot of talk about this release as it provides lots of functionality on the BPM Composer. I was keen to have a loom at the new features such as web forms so I implemented a simple BPM process which utilises the web form. I got as far as creating the human task but when I wanted to add a Web Form the green + was disabled.

I'm not sure if this is an issue as part of the upgrade or it was something I did wrong. After a bit of investigation comparing another instance that was working I realised that the frevvo application was not deployed in the Weblogic Console. Once I manually deployed the frevvo application the web form was enabled. The location of the frevvo app is the following:



Wednesday Feb 27, 2013

Installing Process Accelerators for Oracle BPM

Oracle Process Accelerators help organizations reach process excellence faster. Process Accelerators are business process solutions developed with Oracle Business Process Management (BPM) Suite 11g. Process Accelerators can be deployed as-is, or extended to meet customer-specific requirements. In addition to expediting time-to-value for BPM deployments, Process Accelerators embody best practices and serve as blueprints for organizations that are developing process driven solutions with Oracle BPM Suite. Organizations adopting Process Accelerators not only improve the business process targeted by the Accelerators they deploy, but also have a unique opportunity to reach maturity in their process management initiative faster and with lower risk by applying Process Accelerator Best Practices and Patterns.

This blog post is to document the install procedures for Process Accelerators In this release the following process are delivered:

  • Oracle Travel Request Management (TRM) - streamlines the travel request process
  • Oracle Document Routing and Approval (DRA) - streamlines the document approval process
  • Internal Service Request (ISR) - streamlines the service request process
  • Public Section Incident Reporting (PSIR) - streamlines the incident reporting process
  • Financial Services Loan Origination (FSLO) - streamlines the loan application approval process

There are also 2 process that have been released in preview mode:

  • Oracle Employee Onboarding (EOB)
  • Oracle Business Account Opening (BAO)

This post is to show the install steps for the Process Accelerators. Before you can start the install you must have the following environment installed.

  • Java Development Kit 1.6.0 and later
  • Oracle Database 11g
  • Oracle Weblogic Server 11g
  • Oracle SOA Suite 11g
  • Oracle Business Process Management (BPM) Studio 11g Release 1 (
  • Oracle Business Activity Monitoring (BAM) 11g 
  • Oracle Webcenter Content Release 1 ( - Required for Document Routing and Approval accelerator.

There are lots of sites out there that document how to install these products, for the purpose of this post it is assumed that these products are installed and have been configured. My configuration I installed Webcenter and SOA / BPM on separate machines. Here is a screenshot of the domain configuration.

Webcenter Domain

SOA Domain

I have OSB installed here, this is not required for the PAs so you can ignore.

At the time of writing this blog the only way to get the Process Accelerators is via request. You need to send and email to requesting the software.

  1. Before you start installing the Process Accelerators you need to configure UCM to integrate with BPM. If this is a fresh install this work probably hasn't been done.
  2. If not done so already you need to set the RIDC Port and IP filter address. Therefore login to your UCM instance http://ucmhost:16200/cs and set the following:

    Incoming Socket Connection Address Security Filter:|0:0:0:0:0:0:0:1|*.*.*.*
    Server Socket Port : 4444

  3. Restart the UCM_Server1 managed server.
  4. Login to the weblogic console for your SOA / BPM environment.
  5. In the Domain Structure select the domain, e.g. soa_domain -> Security -> General and check the box

  6. Select the EmbeddedLDAP tab and set the credentials and confirm, e.g. welcome1

  7. Restart the soa_server1 managed server
  8. Login to UCM as weblogic and configure a new LDAP provider to link back to the SOA.
  9. Navigate to Administration -> Providers
  10. Click the link to add a new LDAPUser and enter the following, set the password to the password you set in step 6.

  11. Restart the UCM_Server1.
  12. Log back in and check that you have 5 successful connections.

  13. Under the Administrators panel, click Admin Server
  14. Click the link Advanced Component Manager
  15. Enable Folders_g

  16. Restart the UCM Managed Server
  17. Log back into UCM and navigate to Administrator, you should be in the  Component Manager screen. Make sure the following components are enabled or disabled:

    Checked : ZipRenditionManagement
    Checked :InboundRefinerySupport
    Checked BpelIntegration
    Checked DynamicConverter
    Checked WebCenterConfigure
    Un-Checked: FrameworkFolders

  18. Login to the Enterprise Manager control for Webcenter domain
  19. Navigate to WC_Domain -> Webcenter -> Content -> Content Server

  20. From the menu select Configuration and make the following changes

  21. If you have separate domains for WC and BPM login to Enterprise Manager Control for the  SOA / BPM Domain. Expand SOA then select soa-infra
  22. From the SOA Infrastructure menu, select SOA Administration -> Workflow Config, then select the More Workflow Notification Configuration Properties... link
  23. In the System MBean Browser tree, expand WorkflowConfig, then select human-workflow

  24. On the Attributes tab, in the UcmIdcUrl Value field, enter idc://ucmhost:4444 (4444 was the port I entered in step 2).
  25. Click Apply
  26. Navigate to Farm_soa_domain -> Weblogic Domain -> soa_domain. Right-click the soa_domain and select Security -> Credentials
  27. Select WF-ADMIN-USER, then click Create Key
  28. On the Create Key dialog box:
    • Ensure that Select Map field is set to WF-ADMIN-USER
    • In the Key field, enter WF-ADMIN-CREDENTIAL
    • In the User Name field, enter a user name with administrative privileges on the OWC server
    • In the Password and Confirm Password fields, enter a password for a user with administrative privileges on the OWC server

  29. Restart All Servers to make sure that all these changes have taken place.

You should now be in a position to install the Process Accelerators. The documentation that comes with the process accelerators is pretty good. To save myself lost of documentation I will point to certain steps within the document to execute.

  1. Download the documents zip file for the process accelerators
  2. Open the file paaig.pdf
  3. Skip all steps till you get to 2.1.2 Configure Oracle Business Activity Monitoring for Reports. Execute all steps for 2.1.2 so your BAM environment is configured.
  4. Execute all steps in the 2.2 Installing Oracle Process Accelerators and Oracle BAM Reports. The install gets to 97% fairly quickly, it will sit at running post install scripts for up to 90 or so minutes. If you want to see what is happening you can tail the install script. Please note my process accelerator home is: $MW_HOME/PAHome

    tail -f $MW_HOME/PAHome/installpa.log
    tail -f $MW_HOME/PAHome/installbam.log
    tail -f $MW_HOME/PAHome/installwc.log

    You should get a BUILD SUCCESSFUL at the end.

  5. If you get a BUILD FAILED then you will need to install manually. Go to Step 2.4 provides the steps to do this.
    I undeploy the process accelerators before I resinstall, here are the steps I take.

    • Run the commands
      cd $MW_HOME/PAHome/bin
      ant uninstall-pa
    • start a database session as sys
      sqlpuls / sysdba
      SQL>drop user accelerators cascade;
    • Restart all environments - this is required to clear some of the external applications from Weblogic
    • cd $MW_HOME/PAHome/bin
      . env_sh
      ant install-pa

  6. Once you have a build successful you can complete the post install steps.
  7. Starting at Section 3, complete all steps in 3.1. Here is an example of the users I assigned to each role in the BPM workspace. If the users don't exist in your environment follow this link.

  8. In Section 3.2 there are some tricks that will impact on what will and what won't display. This is what I did.
    In the Weblogic console create the following Groups under  Security Realms -> myrealm -> Users and Groups

  9. Add the appropriate users to the following groups:

    • BPMActionOfficer = vhugo, cdoyle, jausten, jlondon, jverne, istone
    • BPMCaseManager = cdickens
    • BPMCaseWorker = wfaulk
    • BPMReporter = jcooper
    • BPMExternalApp = Any user you want to add to have access to the External Apps
  10. Now you need to add access to the Applications in EM. Here is the list of applications that require security attached:

    • DRAAdminUI(V2.0)
    • FSLOAdminUI(
    • IncidentReportingAdminUI(V2.0)
    • IncidentReportingTaskUI(V2.0)
    • ISRAdminUI(V2.0)
    • TRMAdminUI(V2.0)

    To attach security to these applications login to the Enterprise Manager Control for SOA and navigate to Farm_soa_domain -> Application Deployments. Select one of the applications mentioned above. From the Application Deployment menu select Security -> Application Roles.

    To add users / groups to the Application click the search button this will display the role. Select the Role and add a User / Group by clicking the Edit button.

    In all instances I added the group BPMExternalApp to the Application roles with the exception of the IncidentReportingAdminUI(V2.0) and
    IncidentReportingTaskUI(V2.0) applications, for these applications I assign the groups created in step 9 matching the role to the group.

    It is important that you don't assign the same role / user to all the roles as some roles will overwrite another giving unpredictable results.

    This completes section 3 in the Install document

There are a number of steps in section 4 that have already been performed as part of the prerequisites. These do not need to be done again. The following steps can be skipped:

  • Section 4.1, "Configuration Matrix"
  • Section 4.2, "Configuring Oracle WebCenter Content"
  • Section 4.3, "Adding New Application Roles in Oracle BPM Workspace"

In Section 4.6, "Packaging FOP for PDF Generation" there is a bug when you run the ant script. the first thing it tries to do is undeploy. As you haven't installed it the process fails. You need to make a minor change to the ant build file.

  1. Open the following file with vi

    vi $MW_HOME/PAHome/pa/src/fs/lo/deploymentPlan/PAInstallFSLO.xml

  2. Go to the line 195 with the command


  3. There you will see that there is the parameter for undeploy when it errors it will stop the process change this to false, e.g. before:

    <Application name="LoanOriginationPDFModelServices"        filelocation="${env.PA_HOME}/pa/src/fs/lo/built/deploy/LoanOriginationPDFModelServices.ear"     wlserver="pa" failonerror="true" action="undeploy" />


    <Application name="LoanOriginationPDFModelServices"        filelocation="${env.PA_HOME}/pa/src/fs/lo/built/deploy/LoanOriginationPDFModelServices.ear"     wlserver="pa" failonerror="false" action="undeploy" />

Last but not least, if you find your BAM reports are not loaded you need to run the install for BAM manually.

  1. cd $MW_HOME/PAHome/bin
  2. .
  3. ant install-bam

Once the completion of Section 4 is done you are ready to run the Process Accelerators.


Monday Feb 18, 2013

Changing Memory Settings and JVM to JRockit for SOA Suite

I know there are many blogs out there that show how and where to change the memory configurations, .e.g. increase /  decrease or swap between Sun and JRockit JVM. The reason for this post is more for me to have a reference easy to find, but it brings a few concepts together which are usually found in 2 or 3 blog posts:

  • Memory modification
  • Swapping JVM provider
  • Node manager support

Many of the post out there are for changing the memory settings when running via the script. Although this post will support running via the script it is more about starting via Node Manager.

For the purpose of this post I'm using the scripts developed in my post Startup Scripts for Weblogic and SOA Suite

Firstly we want to change the memory settings for the JVM. This is done in the script.

Make a copy of the file the open for modification:


Look for the lines:

DEFAULT_MEM_ARGS="-Xms512m -Xmx1024m"
PORT_MEM_ARGS="-Xms768m -Xmx1536m"

Comment these lines out and add the following straight after, e.g.

#DEFAULT_MEM_ARGS="-Xms512m -Xmx1024m"
#PORT_MEM_ARGS="-Xms768m -Xmx1536m"

if [ "${SERVER_NAME}" = "" ] || [ "${SERVER_NAME}" = "soa_server1" ]; then
  DEFAULT_MEM_ARGS="-Xms512m -Xmx1024m"
  PORT_MEM_ARGS="-Xms2048m -Xmx2048m"
elif [ "${SERVER_NAME}" = "" ] || [ "${SERVER_NAME}" = "AdminServer" ]; then
  DEFAULT_MEM_ARGS="-Xms512m -Xmx1024m"
  PORT_MEM_ARGS="-Xms768m -Xmx768m"
elif [ "${SERVER_NAME}" = "" ] || [ "${SERVER_NAME}" = "bam_server1" ]; then
  DEFAULT_MEM_ARGS="-Xms512m -Xmx1024m"
  PORT_MEM_ARGS="-Xms768m -Xmx768m"
elif [ "${SERVER_NAME}" = "" ] || [ "${SERVER_NAME}" = "osb_server1" ]; then
  DEFAULT_MEM_ARGS="-Xms512m -Xmx1024m"
  PORT_MEM_ARGS="-Xms768m -Xmx768m"
  DEFAULT_MEM_ARGS="-Xms768m -Xmx768m"
  PORT_MEM_ARGS="-Xms768m -Xmx768m"

Depending on how you installed your environment you may need to add the JRockit home, this is done in the, as before make a copy and open the file for modification.


check the value for BEA_JAVA_HOME and make sure it is pointing to your JRockit location, e.g.


As I'm starting my SOA environment via load manager I need to make some additional changes.

The node manager properties need to be updated


make sure the parameter StartScriptEnabled is set to true, e.g.


Also if you want to run JRockit you need to change the Java Homes


The last file that needs modification is the, to change the Java Home.


Comment out the old JAVA_ HOME and JAVA_VENDOR to point to JRockit, Before:

if [ -z "${JAVA_HOME}" -o -z "${JAVA_VENDOR}" ]; then
  # Set up JAVA HOME
  # Set up JAVA VENDOR, possible values are
  #Oracle, HP, IBM, Sun ...
  # PRODUCTION_MODE, default to the development mode


if [ -z "${JAVA_HOME}" -o -z "${JAVA_VENDOR}" ]; then
  # Set up JAVA HOME
  # Set up JAVA VENDOR, possible values are
  #Oracle, HP, IBM, Sun ...
  # PRODUCTION_MODE, default to the development mode

You should be now ready to start your environment. All servers should now start in JRockit, to test this you can run the command:

 ps -ef | grep soa_server1

It should have JRockit in the classpath.

Monday May 14, 2012

Upgrading Database Schema in FMW Upgrade

During a FMW upgrade one of the most common tasks forgotten is the upgrade of the database schemas as the steps seem to be berried in a mountain of documentation. If you are looking for the actual steps to upgrade FMW look at the following post - Upgrading Fusion Middleware 11.1.1.x to when you get to step 24 refer to this blog entry.

Oracle has made it a bit simpler running the Patch Set Assistant (psa). Before it was a bit of a dark art running a command line script and you had to guess what schemas need to be upgraded. Now there is a wizard driven tool to implement this.

  1. As the middleware owner change directory to $MW_HOME/oracle_common/bin
  2. Run the following command to start the PSA wizard

    Click Next to start entering details

  3. Select the component you want to upgrade, it will include all the prerequisites.

  4. Select the prerequisite check boxes to say you have backed up your environment.

  5. Enter connection details for the MDS schema

  6. Enter connection details for the SOAINFRA schema

  7. Check that all schemas connect successfully. If not go back and correct.

  8. Make sure all the setting are correct and continue

  9. Watch the install run, then complete

  10. Now you can check the version of the schemas to ensure they are correct. In this case I'm looking to have the version come back as

    SELECT owner, version, status FROM schema_version_registry
    where owner in ('DEV_MDS', 'DEV_SOAINFRA');

    OWNER                          VERSION                        STATUS
    ------------------------------ ------------------------------ -----------
    DEV_MDS                                   VALID
    DEV_SOAINFRA                              VALID

Sunday May 13, 2012

Finding the Right Patchset

I'm always surprised at how hard it is to find the right patchsets when looking to do an upgrade.

So I thought I would make a blog entry that makes it easy to find the right patches starting from The following list are documents that provide the required patches for the associated upgrades:

I will update as more patchsets become available.

If you are looking for patch install instructions please refer to the following blog entry:

Upgrading Fusion Middleware

Happy upgrades

Monday Jan 23, 2012

Getting History from SQLPlus using Linux

A colleague of mine just asked me how do you get history in SQLPlus on Linux the same way you get by default in windows, e.g. when you press the up key you see the previous commands executed. I have never really given it much thought in the past, but there must be a way. After a quick Google search I found a solution. This blog is really for my future reference as the examples I found on the net required a bit of thought.

The post assumes you are using RedHat or OEL, It will work for other Linux OS but you will need to source the right application. I'm installing on OEL 5.7 64 bit.

The key behind this solution is the utility call rlwrap which is a read line wrapper. It maintains a separate input history which can be edited.

  1.  Login to you Linux machine as the root user

  2. Download the rlwrap utility using the appropriate link below and save it to a staging area on the Linux machine:
    rlwrap 32Bit
    rlwrap 64Bit

  3. From the staging area install the rlwrap utility, e.g.:

    rpm -ivh rlwrap-0.37-1.el5.x86_64.rpm

  4. Connect as the oracle user (or the user you connect to SQLPlus)

  5. Edit the .bashrc file ($HOME/.bashrc) and add the following line in the aliases section.

    alias sqlplus="rlwrap sqlplus"

  6. Initialize the .bashrc file with the following command

    . .bashrc

  7. Login to SQLPlus and history should be enabled

    sqlplus scott/tiger@orcl

    SQL*Plus: Release Production on Wed Jan 25 04:07:40 2012

    Copyright (c) 1982, 2010, Oracle.  All rights reserved.

    Connected to:
    Oracle Database 11g Enterprise Edition Release - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options

    SQL> select count(*) from emp;


    Press the up key

    SQL> select count(*) from emp;

Now you are done. Enjoy

Sunday Jun 19, 2011

Installing Eclipse for OSB Development

OSB provides 2 methods for OSB development, the OSB console, and Eclipse. This post deals with a typical development environment with OSB installed on a remote server and the developer requiring an IDE on their PC for development. As at Eclipse is only IDE supported for OSB development. We are hoping OSB will support JDeveloper in the future.

To get the download for Eclipse use the download WebLogic Server with the Oracle Enterprise Pack for Eclipse, e.g. Oracle WebLogic Server 11gR1 (10.3.4) + Coherence + OEPE - Package Installer (wls1034_oepe111161_win32.exe).

To ensure the Eclipse version is compatible with your OSB version I recommend using the Eclipse that comes with the supported WLS server, e.g. OSB you would install WLS 10.3.4+oepe.

The install is a 2 step process, install the base Eclipse, then install the OSB plugins. In this example I'm using the install for windows, your versions may differ.
  1. You need to download 2 programs, WebLogic Server with the oepe plugin for your OS, and the Oracle Service Bus which is generally generic. Place these files in a directory of your choice.

  2. Start the executable

  3. I create a new Oracle Home for this installation as it don't want to impact on my JDeveloper install or any other Oracle products installed on my machine.

  4. Ignore the support / email notifications

  5. Choose a custom install as we only want to install the minimum for Eclipse. If you really want you can do a typical and install everything.

  6. Deselect all products then select the Oracle Enterprise Pack for Eclipse. This will select the minimum prerequisites required for install.

  7. As I'm only going to use this home for OSB Development I deselect the JRockit JVM.

  8. Accept the locations for the installs.

  9. If running on a Windows environment you will be asked to start a Node Manger service. This is optional. I have chosen to ignore.

  10. Select the user permissions you require, I have set to default.

  11. Do a last check to see if the values are correct and continue to install.

  12. The install should start.

  13. The install should complete successfully. I chose not to run the Quick Start.

  14. Extract the OSB download to a location of your choice and double click on the setup.exe. You may be asked to supply a correct java location. Point this to the java installed in your OS. I'm running Windows 7 so I used the 64bit version.

  15. Skip the software updates.

  16. Set the OSB home to the location of the WLS home installed above

  17. Choose a custom install as all we want to install is the OSB Eclipse Plugins.

  18. Select OSB IDE.

  19. For the rest of the install screens accept the defaults.

  20. Start the install

  21. There is no need to configure a WLS domain if you only intend to deploy to the remote server. If you need to do this there are other sites how to configure via the configuration wizard.

  22. Start Eclipse to make sure the OSB Plugin has been created. In the top right drop down you should see OSB as an option.

  23. Connecting to the remote server, select the Server Tab at the bottom

  24. Right-click in that frame and select Server.

  25. Chose the remote server version and the hostname

  26. Provide and name for your server if necessary, and accept the defaults

  27. Enter connection details for the remote server

  28. Click on the Remote server and it should validate stating its status.

    Now you ready to develop, Happy developing!

Tuesday Jun 14, 2011

Issue Deploying Migrated BPM Processes to

I have migrated my BPM processed from to This issue may happen with other versions but I thought I would document anyway.

When deploying my migrated BPM process I get the following error:


This issue is caused by the ADF worklist projects in your BPM process. Therefore for each ADF project in your BPM process you need to modify the weblogic.xml file to add the oracle.soa.worklist.webapp  library which seems to be a requirement in the new release of In JDeveloper it adds it automatically so you don't need to worry about it for new projects.

The weblogic.xml is found in the ADF worklist project:

Web Content > WEB-INF > weblogic.xml

Open the weblogic.xml in source mode and add the following code at the bottom just before the </weblogic-web-app> tag.


To confirm you have entered it correctly go to the Overview tab and select libraries. You should see the the library added.

Now you can redeploy, and you should get success.

Sunday Apr 03, 2011

BEA Software Archive

I have seen a few questions out there from people trying to find legacy BEA Software. The official place to find this is on the Oracle Support web site To access this site you must be an Oracle customer as you need to provide a CSI number.

Login to the Oracle Support web site and search on the note 763603.1. It has the title ‘BEA Archive’. This has old BEA Software going back to version 7.x. Generally they are at the last update release, e.g. 8.1.6. If you need something other than this you will need to raise a service request.

Tuesday Feb 22, 2011

Upgrading Fusion Middleware 11.1.1.x to

This is a follow on from my previous post where we upgraded to The instructions I provide here will work for Fusion Middleware and wanting to upgrade to

In this example I’m just upgrading SOA Suite on OEL 64bit but the steps will be the same, some of the downloads may be different based on your environment.

To upgrade to you need to have access to as this is where the downloads reside. Oracle provides as a standalone download so you can do a fresh install if required using OTN downloads (

The high level steps to upgrade are as follows:

  • Download software
  • Shutdown your SOA Environment
  • Upgrade WLS to
  • Upgrade SOA Suite to
  • Upgrade OSB to
  • Upgrade MSD Schemas
  1. Identify the downloads you require for your install. You will need the WebLogic Server Upgrade and the additional product downloads. If you are using 64bit then use the generic version. The downloads are found from the following location -

    For the purpose of this post I downloaded the following patches
    11060985 – WLS Server Generic
    11060960 – SOA Suite
    11061005 – OSB Suite 
  2. Make sure you have set the Java executable in your PATH e.g.

    export PATH=$JAVA_HOME/bin:$PATH
  3. Make sure all your WebLogic environment has been shut down before performing the upgrade.
  4. Extract the WLS patch 11060985 to a temporary directory and start the installer

    java –jar wls1034_upgrade_generic.jar

    Please note if you are not running 64BIT then the upgrade executable will be just a bin file which you can execute directly.

  5. Chose the right Oracle home for your WebLogic Server install.

  6. In the Register for Security Updates you can enter your details or just click Next. If you do not enter details confirm that you don’t want to receive these updates


  7. Select the products you want to upgrade and select next. It is recommended that you accept the defaults.

  8. Confirm the directories that will be upgraded

  9. Upgrade of WLS ahs been completed

  10. Extract your both SOA downloads to a temporary directory and run the installer found in Disk1

    ./runInstaller -jreLoc /java/jdk1.6.0_20/jre

    Please note that the java location and version may be different for your environment

  11. Skip the Software Updates

  12. Ensure your system meets the prerequisites

  13. Set the Oracle home for your SOA install.


    You will be asked to confirm that you want to upgrade, click Yes

  14. Choose your application server. Since you are upgrading from 11.1.1.x you will be on WebLogic

  15. Start the Install

  16. Installation Upgrade of SOA Suite completed accept the default to finish.


  17. In my environment I have OSB installed so I need to upgrade this next. If you don’t have SOA Suite you can go straight to completing the DB Schema updates at Step 24. 
  18. Extract the OSB upgrade files to a temporary directory and execute the installer found in the Disk1 folder.
    ./runInstaller -jreLoc /java/jdk1.6.0_20/jre


  19. Skip the software updates

  20. Select the Oracle home for your environment


    Accept the warning to continue the upgrade

  21. Point to the location of your WebLogic Server installation

  22. Install the OSB upgrade

  23. Upgrade has been completed accept the defaults


  24. Change directory to $MW_HOME/oracle_common/bin where the Patch Set Assistant is installed
  25. Execute the following command to update the MDS schema. Please not for my examples I have the context set to DEV. your may be different. This means that all my schemas are prefixed by DEV.

    ./psa -dbType Oracle -dbConnectString 'localhost:1521:xe' -dbaUserName sys -schemaUserName DEV_MDS

    You will be asked you passwords for sys and the schema

    Enter the database administrator password for "sys":
    Enter the schema password for schema user "DEV_MDS":

  26. Change directory to $MW_HOME/Oracle_SOA1/bin to where the Patch Set Assistant is installed for SOA Suite.
    Execute the following command to update the SOA and BAM schemas

    ./psa -dbType Oracle -dbConnectString 'localhost:1521:xe' -dbaUserName sys -schemaUserName DEV_SOAINFRA
  27. To check that you have the installed correctly run the following SQL as sysdba.

    SELECT owner, version, status FROM schema_version_registry;

    OWNER                          VERSION                        STATUS
    ------------------------------ ------------------------------ -----------
    DEV_MDS                                   VALID
    DEV_SOAINFRA                              VALID

    Don’t stress if the versions are not all sitting at version as not all schemas need to be updated. The key ones are MDS and SOAINFRA

Monday Dec 20, 2010

How to Install Oracle Software on Remote Linux Server

It is becoming more common these days to install Oracle software on remote Linux servers. This issue has always existed but was generally resolved either by silent installs or by someone physically going to the server to install the software. This is becoming more difficult with the popular virtualisation and cloud deployment strategies.

This post provides the steps involved to install Oracle Software using the GUI interface on a remote Linux server. There are many ways to achieve this, the way I resolve this issue is via Virtual Network Computing (VNC) as it is shipped with RedHat and OEL out of the box. For this post I’m using OEL 5 deployed on a OVM guest.

  1. If not already done so download and install a client version of VNC so you can connect to the server. There are many out there, for the purpose of this post I use UltraVNC. You can download a free version from
  2. By default VNC Server is installed in your RedHat and OEL OS, but it is not configured. The way VNC works is when started it creates a client instance for the user and binds it to a specific port. So if have an account on the Linux box you can setup a VNC Server session for that user, you don’t need to be root. For the purpose of this document I’m going to use oracle as the user to setup a VNC Session as this is the user I want use to install the software. However to start the VNC Service you must be root.

    As the root user run the following command:

    service vncserver start
    Starting VNC server: no displays configured                [  OK  ]

  3. Login to the Linux box as the user  you wan to install the Oracle software

    [oracle@lisa ~]$
  4. Run the command to create a new VNC server instance for the oracle user:

  5. You will be ask to supply password information. This is what you will enter when connecting from your desktop client. This password is also independent of the actual Linux user password. The VNC Server is acting as a proxy to this instance.

    You will require a password to access your desktops.

    xauth:  creating new authority file /home/oracle/.Xauthority

    New ' (oracle)' desktop is

    Creating default startup script /home/oracle/.vnc/xstartup
    Starting applications specified in /home/oracle/.vnc/xstartup
    Log file is /home/oracle/.vnc/

  6. As you can see a new instance has been created. If you were to run the vncserver command again another instance will be created. If you are going through a firewall you will need to ensure that the port 5901 (port 1) is open between your client desktop and the Linux Server.
  7. Depending on the options chosen at install time a firewall could be in place. The simplest way to disable this is using the command. You will need to be root.

    service iptables stop

    This will stop the firewall while you install. If you just want to add a port to the accepted lists use the firewall UI. You will need to be root.

  8. Now you are ready to connect to the server via the VNC. Using the software installed in step one start the VNC Client. You should be prompted for the server and port.
  9. If connectivity is established, you will be prompted for the password entered in step 5.

  10. You should now be presented with a terminal screen ready to install software

  11. Go to the location of the oracle install software and start the Oracle Universal Installer


Sunday Sep 12, 2010

Startup Scripts for WebLogic and SOA Suite

Yes I know there are many blogs and sites out there that have startup scripts for WebLogic. I have noticed that some are very detailed and maybe a bit complex for a newbe. Therefore goal of this post is to provide new administrators a basic startup script for WebLogic with an emphasis on SOA Suite. You should be able to use these scripts as a base to start building more complex scripts that accept parameters, or start clusters, etc.

  1. If you want Node Manager to restart a failed Managed server you must ensure that either the file or the has the parameters AutoRestart=true and StartScriptEnabled=true. I believe this is set to true in the by default. The file can be found in  $MW_HOME/wlserver_10.3/common/nodemanager
  2. I use 2 scripts to start WebLogic, a control shell script, which then calls a WLST script. For the purpose of this blog I have placed the scripts in the following directory.


  3. Create a scripts called in the directory your choice, e.g. /home/oracle/scripts/weblogic/startup
    here is a sample, adjust for your environment:



    nohup $MW_HOME/wlserver_10.3/server/bin/ > $MW_HOME/wlserver_10.3/common/nodemanager/nodemanager.out &

    nohup $MW_HOME/user_projects/domains/soa_domain/bin/ > $MW_HOME/user_projects/domains/soa_domain/servers/AdminServer/logs/AdminServer.out &

    . $MW_HOME/user_projects/domains/soa_domain/bin/

    java weblogic.WLST /home/oracle/scripts/weblogic/startup/

    Please note that each command is separated by a empty line, therefore the nohup commands are one command until the &

  4. Now create the WLST script as called by the script above. Call it

    import time
    print "#####################################"
    print "# Waiting for Admin Server to Start #"
    print "#####################################"
    while True:



    print "##############################"
    print "# Admin Server has come up #"
    print "##############################"

    print "##########################"
    print "# Starting SOA Server 1 #"
    print "##########################"

    start(name="soa_server1", block="true")

    print "##########################"
    print "# Starting OSB Server #"
    print "##########################"

    start(name="osb_server1", block="true")

    print "##########################"
    print "# Starting BAM Server #"
    print "##########################"

    start(name="bam_server1", block="true")


When you use these scripts you will get errors in the WLST script while it waits for the AdminServer to come up this is to be expected so just ignore. I have set the retry for 60 seconds so it shouldn’t try too many times.

Also you may get an error like 'ERROR: transport error 202: bind failed: Address already in use'. This is caused because 2 managed servers are using the same debugging port. If this is the case then you can edit the file and turn debugging off. Do this by searching for debugFlag="true" and set it to false, e.g. debugFlag="false".

If you want a shutdown script, it is much the same but in reverse.

  1. Create a script called in directory of your choice, e.g. /home/oracle/scripts/weblogic/shutdown:


    . $MW_HOME/user_projects/domains/soa_domain/bin/


    java weblogic.WLST /home/oracle/scripts/weblogic/shutdown/

    nohup $MW_HOME/user_projects/domains/soa_domain/bin/ > $MW_HOME/user_projects/domains/soa_domain/servers/AdminServer/logs/AdminServerShutdown.out &

  2. Create a WLST script in the same directory called


    # Stop all managed Servers
    shutdown('soa_server1','Server', force="true")
    shutdown('osb_server1','Server', force="true")
    shutdown('bam_server1','Server', force="true")


Happy scripting.

Wednesday Jul 07, 2010

Installing Seeded Users for BPM on Linux

In previous releases of Oracle SOA Suite users were seeded by default. This is not the case for Therefore we need to load them manually so we get the old name of jcooper, cdickens, etc. This post provide the steps to load these users so you can perform some basic allocation of tasks in BPM Suite. These users can also be used for SOA Suite Human Task activities as well.

1. Download the file provided here:

2. As the oracle user (or owner of BPM / SOA Suite) Unzip this file to a directory of your choice on the BPM / SOA Suite server. For reference I unzipped it in the /home/oracle directory

3.  Change directory to the demo-community folder

cd /home/oracle/demo-community

4. Edit the file to match your environment, e.g:

  • Set the admin server location


  • Set the middleware home, also called the bea home


  • Set the oracle and domain home.


  • Set the authentication

  • Use the managed server for the target or if single
    e.g. target=soa_server1 or target=AdminServer


5. Ensure the JAVA_HOME is correct. The java required is the java that is used to install BPM / SOA Suite. In may case I installed 1.6.0_20 into the /java directory.

java –version

should return the following. The version number should be the same as that which was installed for BPM / SOA Suite.

java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)

6. If the above is still pointing to the default install, e.g. 1.4.2_x then perform the following steps as root. Otherwise go to step 8. Please note these instructions are based on the fact that I have installed java in the /java directory. Change according to your environment.

echo 'export JAVA_HOME=/java/jdk1.6.0_20'>/etc/profile.d/

echo 'export PATH=$JAVA_HOME/bin:$PATH'>>/etc/profile.d/

source /etc/profile.d/

java –version should now return:

java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)

7. Log back in as the oracle user and change directory to the  demo-community done in step 2. Also check the version of java has now changed to the correct version as step 6.

cd /home/oracle/demo-community

8. Run ANT to load the users. If ANT is not in your path you may need to source it. For my environment the following works:

$MW_HOME/modules/org.apache.ant_1.7.1/bin/ant seedDemoUsers

9. Check that the script completed with no errors. Sometimes you can get a build successful when there were some errors. You should see something like this:

[exec] *****************************************************
[exec] ** End SOA specific environment setup
[exec] *****************************************************
[exec] *******************************************************
[exec] ** SOA specific environment is already set, skipping...
[exec] *******************************************************
[java] Initializing WebLogic Scripting Tool (WLST) ...
[java] Welcome to WebLogic Server Administration Scripting Shell
[java] Type help() for help on available commands
[java] --------------------------- Demo Community  ----------------------------------
[java] serverURL:
[java] Status :
[java] 200 OK
[java] Users/Groups Seeded :
[java] <html>
[java] <head>
[java] <title>Demo User Community</title>
[java] <link rel="stylesheet" type="text/css" href=""stylesheet.css"/>"
[java] </head>
[java] <body>
[java] <table border="1" style="background-color:#C8C8C8" align="center" width="70%">
[java] <tr>
[java] <td>
[java] <H1 ALIGN="CENTER">Seed Demo Community</H1>
[java] <BR><B>Users : </B>
[java] demoadmin
[java] cdickens
[java] wfaulk
[java] sfitzger
[java] jstein
[java] istone
[java] jcooper
[java] mtwain
[java] jlondon
[java] ltolstoy
[java] fkafka
[java] szweig
[java] mmitch
[java] jausten
[java] achrist
[java] rsteven
[java] cdoyle
[java] wshake
[java] JVerne
[java] EHEMING
[java] VHUGO
[java] <BR><B>Groups : </B>
[java] Supervisor
[java] LoanAnalyticGroup
[java] LoanAgentGroup
[java] California
[java] WesternRegion
[java] EasternRegion
[java] CentralRegion
[java] RegionalOffices
[java] Executives
[java] </td>
[java] </tr>
[java] </table>
[java] </body>
[java] </html>
[java] --------------------------- Grant AppRoles to Demo Community  --------
     [java] Connecting to t3:// with userid weblogic ...
     [java] Successfully connected to Admin Server 'AdminServer' that belongs to domain 'fmw_domain'.
     [java] Warning: An insecure protocol was used to connect to the
     [java] server. To ensure on-the-wire security, the SSL port or
     [java] Admin port should be used instead.
     [java] Location changed to domainRuntime tree. This is a read-only tree with DomainMBean as the root.
     [java] For more help, use help(domainRuntime)

Total time: 18 seconds

Sunday May 02, 2010

Upgrading SOA Suite to SOA Suite with OSB

[Read More]

Discussions and Examples using Oracle Platform As a Service (PaaS) and Oracle Fusion Middleware. Some image links are broken when using Firefox, Safari, and Chrome. If you want to see the full image please use IE.


tumblr hit counter vistors, thanks for your support


« August 2016