Call now: 252-767-6166  
Oracle Training Oracle Support Development Oracle Apps

 E-mail Us
 Oracle Articles
New Oracle Articles

 Oracle Training
 Oracle Tips

 Oracle Forum
 Class Catalog

 Remote DBA
 Oracle Tuning
 Emergency 911
 RAC Support
 Apps Support
 Oracle Support

 SQL Tuning

 Oracle UNIX
 Oracle Linux
 Remote s
 Remote plans
 Application Server

 Oracle Forms
 Oracle Portal
 App Upgrades
 SQL Server
 Oracle Concepts
 Software Support

 Remote S


 Consulting Staff
 Consulting Prices
 Help Wanted!


 Oracle Posters
 Oracle Books

 Oracle Scripts

Don Burleson Blog 









Decompiling Oracle Java

Oracle Database Tips by Donald Burleson

It is valuable to be able to decompile Oracle systems when you no longer have access to the source code.  A Java decompiler can assist in decompiling SQL*Forms FMB files and Oracle JDeveloper executables.  This paper published at ODTUG 2005 titled Practical JDAPI, Harm Verschuren discusses the migration of Oracle Forms applications with the help of self-written Java tools using the JDAPI framework. The migration process involved migrating from a corporate Client/Server application built in Oracle Forms 6i to an Oracle 10g WebForms application.

Harm Verschuren notes that a Java decompiler, via Oracle JDeveloper, can read SQL*Forms executable files (xxx.fmb files):

"Through JDAPI, we can compare the original, completely generated FMB with the FMB that was modified through Forms Builder. On analyzing the differences, we can then make specific changes through the Designer API in the Module Definition. Thus, on subsequent generation of the Form, the manual changes are no longer required."

Here are the steps to incorporate the Oracle Java decompiler:

  1. First, you download the JDAPI documentation from the OTN web site and unpack the zip file to a convenient location on your hard disk (in figure 1 I unpacked it in C:\APPS\jar).

  2. In the JDeveloper menu, go to Tools - Manage Libraries to add the JDAPI framework as a library

  3. "Optionally download a Java decompiler, for instance jad ( and use it to decompile the f90jdapi.jar."

SQL*Forms components can also be captured, but only if the SQL*Forms source code already exists:

"Using java.lang.Runtime and java.lang.Process the Forms Compiler (ifcmp90.exe on Windows or on UNIX) is called, as shown by the Java code in Example 4. The command to parse or compile the pld or the pll file respectively is the same command, as you would use to generate modules batch-wise."



Oracle Training at Sea
oracle dba poster

Follow us on Twitter 
Oracle performance tuning software 
Oracle Linux poster


Burleson is the American Team

Note: This Oracle documentation was created as a support and Oracle training reference for use by our DBA performance tuning consulting professionals.  Feel free to ask questions on our Oracle forum.

Verify experience! Anyone considering using the services of an Oracle support expert should independently investigate their credentials and experience, and not rely on advertisements and self-proclaimed expertise. All legitimate Oracle experts publish their Oracle qualifications.

Errata?  Oracle technology is changing and we strive to update our BC Oracle support information.  If you find an error or have a suggestion for improving our content, we would appreciate your feedback.  Just  e-mail:  

and include the URL for the page.


Burleson Consulting

The Oracle of Database Support

Oracle Performance Tuning

Remote DBA Services


Copyright © 1996 -  2020

All rights reserved by Burleson

Oracle ® is the registered trademark of Oracle Corporation.