Building a SOA Development Environment
By Antony Reynolds on Sep 21, 2007
Building a SOA Development EnvironmentJust had to build a new SOA development environment and so thought I would share with you the steps I went through to create it.
PlanningI wanted a SOA Suite 10.1.3.3 install with an Oracle XE database for use as a meta-data repository and for use as an application database. I also wanted to install JDeveloper into the environment so that I had everything I needed. I was also keen to be able to produce dashboards with BAM and model my processes using BPA Suite.
I acquired the components I needed by downloading them from OTN.
- JDeveloper 10.1.3.3 (Studio Install)
- SOA Suite 10.1.3.1 (CD 1)
- BAM 10.1.3.3
- SOA Suite 10.1.3.3 patchset
- Oracle XE
- BPA Suite 10.1.3 (CD 1)
Operating SystemIn my case I was going to be running on Windows Server 2003 hosted in a VMWare environment. I installed W2K3, making sure that I added a loopback adapter with a fixed IP address and that I enabled IIS for later use by BAM.
Setting Up DatabaseFirst step was to install Oracle XE and configure it for use by SOA Suite. Installation was painless and I then configured it for use by SOA Suite as detailed in another blog entry "Making DB XE Work with SOA Suite".
Setting Up JDeveloperNext up I installed JDeveloper. I installed this next so that I could use the JDK it provides later when running the repca utility. I created a shortcut on the desktop and also put a link onto the task bar to make it easier to find.
Setting up SOA SuiteI first went to the SOA Suite installation media and ran the irca.bat utility found in 'Disk1\install\soa_schemas\irca'. This creates the SOA schemas in the XE database, assuming of course that you tell it where the database lives. To run this you need a JVM, hence why I installed JDeveloper before SOA Suite.
I then ran the SOA Suite 10.1.3.1 installer and selected the advanced option and chose J2EE and SOA Suite (see previous entry "A Tale of Two Installs" for explanation of what this installs). I chose to make this an "Administrative Instance", meaning that it installed App Server Control so I could manage the instance. I chose not to use the Oracle HTTP Listener to cut down on the memory footprint.
After installing SOA Suite I then patched it to the 10.1.3.3 level. This required me to run the run the patch set installer and then run the update repository script upgrade_10131_10133_oracle.sql found in '$ORACLE_HOME\bpel\system\database\scripts'. I also updated PHP in Apache to use PHP 5 rather than 4.
A restart of the SOA Suite and everything was now working.
Adding Business Activity MonitoringBefore installing BAM I made sure that IIS was working on my machine and also checked in IIS Manager that both Active Server Pages and ASP.Net were enabled. I then ran the BAM installer and installed BAM. This requires two steps, one to install the Oracle client libraries and another to install BAM itself. Note that if you only plan to use BAM with BPEL or via webs services there is no need to select the Enterprise Link option.
System Startup ChoicesUnder Windows all the SOA Suite services and the XE database appear as services. Apart from the TNS listener I set all my Oracle services to be manual startup so that I could control what I was actually using. I could then startup first the database and then either just SOA Suite and BAM or both together. All components can be started from their 'Program Files' menu.
Installing BPA SuiteAlmost there now. I installed BPA Suite, pointing it at the XE database. There was a minor problem which was that I had accepted the default western european character set (WE8MSWIN1252) for the database and BPA Suite was demanding that I use a multi-byte character set (AL32UTF8). I fixed this problem by looking at the location of the character set test script in $ORACLE_HOME\testsql.txt (it is called check_charset.sql). I then went to the temporary directory specified and changed the check_charset.sql file so that the line
If like me you want to publish BPEL models from BPA Suite into JDeveloper then you need to install the BPA Suite extensions into JDeveloper. To do this
- Select Help->Check for Updates
- Check the "Install from Local File" option and browser for the pcbpel_bundle/pcbpel_bundle.zip file on the BPA Suite installation media.
- Click Next
- Click Finish
- Say Yes to restart
- Say yes to all overwrite warnings or click the don't tell me again box!
- Say no to import settings
Final ConfigurationI find it very handy to have links to all the SOA Suite consoles directly available from the favorites menu, so it is probably worth adding them there.
You will also want to go through and set up connections in JDeveloper for
- Application Server
- Integration Server
- BAM Server
- BPA Server - choose local server for the connection. You can only set this up after creating a "database" in BPA Suite.