I got my new MacBook Pro a week ago and started to migrate all my windows applications to the new and exciting world of Mac OS X. Everything was going well until I tried to install the Oracle Service Bus (OSB) plugins for Eclipse.
Until OSB version 10g it was possible to install it on Mac OS X by running the installation “jar” file and passing some extra parameter via command line. Unfortunately I have not found a way to do it with OSB 11g as it doesn’t have a single “jar” file to run installer.
So here is a quick guide describing how I managed to install Eclipse with Oracle Service Bus plugins. This guide is a temporary “workaround” until Oracle includes OSB integrated development environment into JDeveloper (probably in OSB 12g). It is probably not the most efficient way to do it, but it works and didn’t require an extensive research.
Please note that Oracle doesn’t support this configuration, so use it at your own risk.
Requirements:
- Virtual Machine with Linux installed (I’ve used VirtualBox with Ubuntu 11.04 64 bit)
- OEPE for Mac OS X (I’ve used version 11.1.1.6.1)
- Weblogic (generic distribution – version 10.3.4) *
- Oracle Service Bus (generic distribution – version 11.1.1.4.0) *
- OEPE for Linux (version 11.1.1.6.1) *
* Links to download locations are included in STEP 1.
Steps:
- Install Weblogic, OEPE and OSB into Linux Virtual Machine
- Install OEPE for Mac OS X
- Configure OSB plugins in OEPE for Mac OS
STEP 1 – Install Weblogic, OEPE and OSB into Linux Virtual Machine
Please use the installation guide below using the same paths suggested by the examples:
http://connection.rnascimento.com/2011/09/05/install-osb-11g-on-ubuntu-11-04-64bit/
STEP 2 – Install OEPE for Mac OS X
Download OEPE from the Oracle:
My Mac OS (Lion) automatically extracted the files to a folder called “oepe-helios-all-in-one-11”. If yours does not do it automatically, please extract the files to a temporary folder.
Create the following directory and copy the content from the downloaded folder to this directory.
/u01/app/oracle/product/fmw11.1.1.4/oepemac
If you want to test, just double click on Eclipse.app.
STEP 3 – Configure OSB plugins in OEPE for Mac OS
First I would like to give credits to Pieter Malan for his post (http://goo.gl/KRorJ), describing how to install OSB IDE on X86_64.
In this step you first need to copy the middleware folder from the virtual machine to your Mac OS X file system (I have used the ‘Shared Folders’ functionality from Virtual Box, if you do not know how to use it see this HOWTO: http://goo.gl/YV6hu).
If you have used the same paths described in STEP 1, you will have the same middleware home path for both OSs:
/u01/app/oracle/product/fmw11.1.1.4/
Now you have to edit the “eclipse.ini” file in your oepe for mac (oepemac folder under the middleware home). If you don’t know where is it, go to your oepemac folder and do a two fingers click on Eclipse. On the opened menu, choose “Show Package Contents” (see figure below).
The eclipse.ini file is under “/Contents/MacOS/”.
Open the file with your preferred text editor and append the following lines at the end:
-Dweblogic.home=/u01/app/oracle/product/fmw11.1.1.4/wlserver_10.3
-Dharvester.home=/u01/app/oracle/product/fmw11.1.1.4/Oracle_OSB1/harvester
-Dosb.home=/u01/app/oracle/product/fmw11.1.1.4/Oracle_OSB1
-Dosgi.bundlefile.limit=750
-Dosgi.nl=en_US
Now copy the file “oracle.osb.ide.link” from the folder “oepe/dropins” to “oepemac/dropins” (both under your middleware home).
That would do the trick. Hope it is useful for you as it was for me!
I have also tested this guide with OSB 11.1.1.5. You just need to use the respective software versions and paths.
If you want to use OSB server, you just need to change the java home path in commEnv.sh (<your middleware home>/wlserver_10.3/common/bin/commEnv.sh) to your mac java home path (e.g. /Library/Java/Home). Please note again that this configuration is not supported by Oracle!
Thank you for posting these instructions!
Nice… thanks… it works perfectly… never thought it would, but it does.. 🙂
Something to mention, always install the oepe version which is the same as your weblogic server… (for those who dont know..)
Hi Rodrigo,
Thank you very much for wonderful blog. I have followed this blog but instead of installing VirtualBox with Ubuntu 11.04 64 bit I have used SOA/BPM image. Then installed weblogic server(with OEPE) + OSB installation in separate middleware home [Since image doesn’t have eclipse OEPE for the development].Then copied the entire directory structure of linux on to MAC OS X, and followed the settings what you have specified. I am able to successfully launch Eclipse OEPE and can create OSB configuration and OSB project but when try to run the OSB server, I am getting lot of exceptions while server start up but still server starts. I am not able to run any example against this domain. What is that I am missing, your input will be of great help.
Thanks and Regards
NK
Hi Rodrigo
Thanks for the great post . I have managed to get it to work with oepe-indigo-all-in-one-11.1.1.8.0.201110211138-macosx-cocoa-x86_64.zip and
oepe-wls-indigo-installer-11.1.1.8.0.201110211138-10.3.6-linux32.bin
ofm_osb_generic_11.1.1.6.0_disk1_1of1.zip
Also need to add corresponding entry for
-Dmiddleware.home=/u01/app/oracle/product/fmw11.1.1.4
without that eclipse is giving
The selected wizard could not be started.
Plug-in “com.bea.alsb.ui” was unable to instantiate class “com.bea.alsb.ui.wizards.NewALSBContainerWizard”.
hope this is helpful
Thanks again for the great post
Excellent your topic! Congratulations! Tks!
good afternoon I made step by step, but still does not appear the OSB plugin in Eclipse on MAC, I even created the Dominion.
I am using version 11.1.1.7
Can you help me?
Thanks for the blog, it was like doing tutorial.
I’ve a point to ask. Whenever I tried to start weblogic server from eclipse, it fails after completing 98% ( as shown in progress tab).
Is there any reason for this. How to get ride of this blocker?
-Vamsi.
what is the content of oracle.osb.ide.link? I don’t have one and would like to create to point to OSB installed directory.