New Extensions for JDeveloper 11g

Some of you may know that I wrote 2-3 years ago some JDeveloper extensions for helping out with BAM data object creation (BAM Table Migration Extension), Oracle ESB diagram documentation (ESB Tools), JDeveloper Project Copying (Project Tools), Python Development (Python Addin).

It’s been some time since I last touched those extensions and finally I decided to take the bull by the horns.

What I ended up were four new extensions for JDeveloper 11g:

These extensions are now included in the official JDeveloper extension exchange and can be installed using “Check for Updates…” functionality. Be sure to check the “Open Source and Partner Extensions” update center.

To summarize what these extension do:

BAM Table/View Copier

BAM Table/View Copier is an extension to help creating BAM data objects using any relational database as “template”. An example: you have almost perfect table in your Oracle DB or Access DB and would like to use that table or view structure as BAM Data Object. Just BAM Connection on your application workspace, navigate to database navigator, choose table or view and press context menu. You will see “Copy to BAM…” which will ask you about the BAM connection to use and target BAM folder to store the data object.

Extension will copy also all data from the table so don’t be surprised. If you don’t want to copy the data, make an copy of the table (create table mytable as select * from wantedtable where 1=2) and copy the empty table.

BAM Table/View Copier also makes it possible to design BAM Data Objects using graphical JDeveloper Database designer. Just create the tables or views on relational database first and then use this extension to copy the structures as data objects. Of course you won’t be able to model all those fine grained data object lookups etc in JDeveloper but you would start your work this way.

SCA Diagram Tools

By default you cannot print or save SCA composite diagram graphics directly from JDeveloper. SCA Diagram Tools gives you possiblity to save composite diagram as PDF, JPG, BPM or PNG.

SCA Diagram Tools also makes it possible to zoom in/out using wheel mouse and pressing CTRL button at the same time. This is not enabled by default but you can do so by choosing “Enable Wheel Mouse Zoom” from SCA Diagram Tools submenu. This might be also good addition to those that have eyesight problems.

Printing the SCA composite diagram is also possible using this extension.

Python Extension

Created originally by Brian Duff for JDeveloper 9i. Migrating the plugin from 9i to 10g took a major rewrote. I did this 2008 and now migrated the python extension from 10g to 11g.

Python extension lets you develop python/jython scripts and run them directly in JDeveloper. Also you can switch on Python Console that enables you to interactively execute any Jython commands from Python Console. You could e.g. call JDeveloper internal API’s interactively if so wanted.

Jar Search Extension

When migrating sources from 10g to 11g there are times where product development have refactored their jar classes so that the old libraries no longer exist.

I created this extension to help searching for JAR files that contain the wanted java class. This was written from ground up to be used as JDeveloper extension so you can e.g. cancel the search if it takes too much time to look for JAR files recursively.

Please note that this extension is not for searching the contents of JAR entry files, it is searching the JAR entries and their filenames, which makes it lot faster than normal search.


JDeveloper 10g/11g extension download and installation problems

JDeveloper 11g

Some of you might have seen installation problems with JDeveloper 11g extensions. There has been some changes in OTN download server infrastructure that causes some issues on extension download and installation. The workaround for time being is to download the extension and install from local file system, as described in JDeveloper Product Management blog:


In addition you might check your extension download temporary directory. There might be some unfinished zip files etc. You could just clean that directory up and try downloading again. Download directory is under your JDeveloper user home directory that is pointed by environment variable <JDEV_USER_HOME>\tmp\update. If you haven’t set this, it points to your <JDEV installationHOME>\jdev\tmp\update –directory.

JDeveloper 10g on Windows 7 (64-bit)

For those that have problems installing JDeveloper 10g extensions on Windows 7, there might be other issues. For me the symptom was that I was able to choose and download the wanted extension. Everything seemed working nicely but after JDeveloper restart no extension was installed.

After digging into details of the problem I got to the root problem, not solving the problem all the way, but being able to continue my work.

For me I have multiple JDeveloper versions running on my laptop. I usually edit the <JDEVHOME>/jdev/bin/jdev.conf file so that I change the SetUserHomeVariable to use a different environment variable for different JDev versions. In this case I used environment variable JDEV10134_USER_DIR, which I hadn’t yet assigned to anywhere (so no setting for that). It appears that in this case JDev 10g falls back reading JDEV_USER_HOME environment variable that was actually used by my JDeveloper 11g environment.

So I edited jdev.conf:
SetUserHomeVariable JDEV10134_USER_DIR

And really set my environment variable on system settings:


After this I got my extensions downloading the appropriate place, that was C:\SHARED\jdevhome10134\tmp\update.

Issue being this time that the extensions got downloaded to the right place, but they still didn’t install automatically. When JDeveloper starts it is looking for <JDEV_USER_DIR>/lib/deferred-updates.xml which is supposed to be read and includes instructions how to install the extensions. In my case on Windows 7 (64-bit) the file was read and deleted but extensions were never unzip and placed into the correct directory.

This sounds to be an issue with JDev 10g and Windows 7 not being 100% compatible with each other. JDeveloper 9i or 10g has not been certified with Windows 7.

Anyways, you can get those extensions installed manually and you can continue working on Windows 7.

To install extensions manually open the zip file from <JDEV_USER_DIR>\tmp\update and extract the *.jar file or collection of jar files to extensions directory. In my installation I’ve installed JDeveloper on c:\product\jdevstudio10134, so my extension directory is: C:\product\jdevstudio10134\jdev\extensions.

After unzipping/extracting, restart JDeveloper and you should have all those downloaded extensions working on your JDev 10g.