Developer Tools
JDeveloper
Release Notes Addendum
Version 9.0.4
April 2004
The issues listed here were compiled after the release of Oracle9i JDeveloper Version 9.0.4 in December 2003.
This is an addendum to the release notes for that release. As new issues arise, they will be added to this addendum.
When determining which version of JDeveloper is supported on your platform please check the following matrix:
|
Oracle9i JDeveloper Release |
Included in Release: |
Platform Supported |
|
Oracle9i JDeveloper 9.0.4.0.0 (Build 1347) |
Oracle Application Server 10g (9.0.4) for Solaris, HP, and Linux Oracle Developer Suite 10g (9.0.4) for Solaris, HP, and Linux |
Solaris, HP, Linux |
| Oracle9i JDeveloper 9.0.4.0.0 (Build 1407) | Oracle Developer Suite 10g (9.0.4) for Microsoft Windows | Microsoft Windows |
| Oracle9i JDeveloper 9.0.4.0.0 (Build 1419) | Oracle Application Server 10g (9.0.4) for Microsoft Windows | Microsoft Windows,Solaris, HP, Linux |
Check the About Box to verify the version of JDeveloper you are using. In some cases, the faceplate of the JDeveloper CD included with the Oracle Application Server 10g (9.0.4) for Microsoft Windows may only indicate Microsoft Windows support when the release is actually supported on Microsoft Windows, Solaris, HP, and Linux.
After migrating an entity facade project to JDeveloper 9.0.4, you must expand the EJB Application Module package node in the System Navigator. Once you do so, the <ejb-local-ref> tag in ejb-jar.xml will be updated properly.
It is currently not possible to use the BC4J Struts wizards (which appear in the New Gallery) to update an existing application's project folder, while maintaining custom Struts class files for that project in their own package.
When you run the BC4J Struts wizards on the project folder, the wizard expects to find definition files (including ApplicationResource.properties) in the default package for that folder. If the Struts files exist instead in a user-defined package, the wizard will generate its own version of the Struts definition files in the default package and then modify struts-config.xml to point to those files. In the process, the previous reference to the ApplicationResources.properties file in the struts-config.xml file is overwritten (rather than a new reference being added).
If you want to manage custom code (that is, code not generated by the BC4J Struts wizards) in a separate package, you should first run the wizard on an empty project folder. Once the generated application has been created, edit the default package name in the folder's Project Settings dialog. Subsequently, all Struts classes will appear in the newly defined package.
HP Java2 SDK 1.4.1.05 for PA-RISC has an issue (JAGae96995) that causes the following exception when JDeveloper is started on HP-UX:
java.lang.NullPointerException
at java.nio.charset.Charset.put(Charset.java:437)
at java.nio.charset.Charset.access$200(Charset.java:243)
at java.nio.charset.Charset$3.run(Charset.java:476)
at java.security.AccessController.doPrivileged(Native Method)
at java.nio.charset.Charset.availableCharsets(Charset.java:469)
Oracle has notified HP of this issue, and HP plans to fix it in HP Java2 SDK version 1.4.1.06.
Since Oracle Developer Suite 10g uses HP Java2 SDK 1.4.1.05 for PA-RISC, the oracle_home/jdev/bin/jdev shell script that starts JDeveloper has been modified to work around this issue. Because of this workaround, the two Japanese character sets Windows-31J and Shift_JIS cannot be used with JDeveloper. Comments in the shell script oracle_home/jdev/bin/jdev describe the workaround and how to enable and disable it.
Before you can run the Java Web Start wizard in JDeveloper, you must generate an EAR file that contains signed JAR files for BC4J and JDBC, as well as other required JAR files. For convenience, JDeveloper provides the script create_jclient_ear.bat (or .sh) to sign and package the JAR files into an EAR file ( bc4jlibs.ear) for easy deployment to the OC4J web server. This script file invokes the {ORACLE_HOME}\BC4J\bin\bc4jlibs_build.xml Ant script to manage signing.
In certain cases, when you run the JClient application, you may get a ClassNotFound exception and you will need to ensure that Java Web Start can work with the required JAR files:
OrdMedia, you must create the JNLP definition with the "Include Oracle interMedia JAR Files" option selected in the JClient Java Web Start wizard. (Note that, in this case, the OrdMedia attribute need not be displayed in the JClient form.)OR
bc4jlibs_build.xml build file and you must create the JNLP definition with the "Include Oracle interMedia JAR Files" option selected in the JClient Java Web Start wizard.Note: Be sure to also update the bc4jlibs_build.xml file for the runtime12ee.jar file target. See the related release note in this addendum for details.
Specifically, you will use the Ant script to sign and package the JAR files as follows:
create_jclient_ear.bat to invoke the bc4jlibs_build.xml Ant script. The unmodified Ant script will not include Sun's jmf.jar in the resulting EAR.jmf.jar and you must modify the bc4jlibs_build.xml file (see below) to handle signing of the two JAR files before running create_jclient_ear.bat.To include jmf.jar in the signing process:
{ORACLE_HOME}\BC4J\bin\bc4jlibs_build.xml.{ORACLE_HOME}\BC4J\bin\bc4jlibs_build.xml in your editor.<!--<target name="ord_war" depends="init,fix_jmf_jar">-->
<target name="ord_war" depends="init">
and (shifting the comment symbols) change it to:
<target name="ord_war" depends="init,fix_jmf_jar">
<!-- <target name="ord_war" depends="init"> -->
<!--<antcall target="sign_jar">
<param name="jarname" value="${temp.war.dir}/jlib/jmf.jar"/>
</antcall>-->
and (removing the comment symbols) change it to:
<antcall target="sign_jar">
<param name="jarname" value="${temp.war.dir}/jlib/jmf.jar"/>
</antcall>
bc4jlibs.ear file on a non-Windows platform, search for the fix_jmf_jar target in the build file and modify the delete attribute:
<delete dir="${temp.dir}/jardir/meta-inf"/>
to show META-INF in all uppercase instead:
<delete dir="${temp.dir}/jardir/META-INF"/>
.bat (or .sh) file with the sign argument:create_jclient_ear.bat sign
{ORACLE_HOME}\BC4J\jlib\bc4jlibs.ear file.After you sign these additional JAR files, you must run the JClient Java Web Start Launcher wizard to generate the JNLP definition for Java Web Start deployment.
To ensure that the appropriate JAR files appear in the JNLP definition:
For complete information about working with Java Web Start and the deployment profiles required by a JClient application that uses Java Web Start, see the topics in the JDeveloper Help system.
Before you can run the Java Web Start wizard in JDeveloper, you must generate an EAR file that contains signed JAR files for BC4J and JDBC, as well as other required JAR files. For convenience, JDeveloper provides the script create_jclient_ear.bat (or .sh) to sign and package the JAR files into an EAR file for easy deployment to the OC4J web server. This script file invokes the {ORACLE_HOME}\BC4J\bin\bc4jlibs_build.xml Ant script to manage signing.
However, before you can run the Ant script you must create a target for the SQLJ libraries in order add runtime12ee.jar to the EAR file. Otherwise, running the unmodified Ant script will result in a JClient Java Web Start runtime error "unable to download http://host:port/sqlj/lib/runtime12ee.jar".
Note: Be sure also to update the bc4jlibs_build.xml file for the jmf.jar file target when your JClient application uses interMedia controls. See the related release note in this addendum for details.
To include runtime12ee.jar in the EAR file:
{ORACLE_HOME}\BC4J\bin\bc4jlibs_build.xml.{ORACLE_HOME}\BC4J\bin\bc4jlibs_build.xml in your editor.taskdef in the build file and insert the following before the taskdef tag:
<property name="sqlj.home" value="${jdeveloper.root}/sqlj"/> <property name="sqlj.war.name" value="${temp.ear.dir}/sqlj.war"/> <!-- create war for sqlj jars.--> <target name="sqlj_war" depends="init"> <copy todir="${temp.war.dir}"> <fileset dir="${sqlj.home}"> <include name="lib/runtime12ee.jar"/> </fileset> <fileset dir="${jdeveloper.root}/jdev/multi/system/templates/jclient"> <include name="WEB-INF/web.xml"/> </fileset>
</copy> <antcall target="sign_jar"> <param name="jarname" value="${temp.war.dir}/lib/runtime12ee.jar"/> </antcall> <jar jarfile="${temp.ear.dir}/sqlj.war"> <fileset dir="${temp.war.dir}"> <include name="**/*.jar"/> <include name="**/*.zip"/> <include name="WEB-INF/web.xml"/> </fileset> </jar> <delete dir="${temp.war.dir}"/> </target>
sqlj.war to the application XML file, search for <webmodule weburi="jlib.war" contextroot="/jlib"/> in the build file and insert the following within the body of the appxml tag:<webmodule weburi="sqlj.war" contextroot="/sqlj"/>
sqlj.war in the EAR file, search for <antcall target="jlib_war"/> in the build file and append the following line:<antcall target="sqlj_war"/>
.bat (or .sh) file with the sign argument:create_jclient_ear.bat sign
{ORACLE_HOME}\BC4J\jlib\bc4jlibs.ear file.For more details about the signing workaround, see http://java.sun.com/j2se/1.4.1/docs/guide/plugin/developer_guide/extensions_example.html for Sun's recommendation.
For complete information about working with Java Web Start, and the deployment profiles required by a JClient application that uses Java Web Start, see the topics in the JDeveloper Help system.
When creating BC4J client applications, you must use separate project folders for each type of client, including JClient forms (Swing application), BC4J JSP, or BC4J UIX JSP.
If you want to create a workspace with multiple BC4J clients that access the same BC4J data model (for example, UIX JSP pages and JClient forms), be sure to generate your thin client web pages and rich client forms inside separate project folders. Following this guideline when managing your application workspace will ensure that JDeveloper does not hang.
Previously, this was an issue when JDeveloper was running Java2SDK1.4.2_01 on Red Hat Enterprise Linux AS 2.1 with kernel 2.4.9-e.25.
The issue has now been resolved.
When you try to deploy EBI-generated files on Linux, it is sometimes the case that deployment dialog does not appear and the JVM throws the following exception:
java.lang.ClassNotFoundException: EBIDeploymentProfileDt.m_deploy at
java.net.URLClassLoader$1.run(URLClassLoader.java:199)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at oracle.ideimpl.IdeClassLoader.loadClass(IdeClassLoader.java:152)
If you encounter this situation, simply retry the deployment. It generally succeeds on the second attempt.
JDeveloper ships with the Javadoc for JDK 1.4.1. It is currently not possible to update the local JDK doc JAR file when you want to view a different version of the Javadoc through the JDeveloper Help system table of contents. You can, however, point directly to Sun's Javadoc.
To supply the J2SE library with the doc path to the Javadoc hosted by Sun:
<jdev_install>/doc/ohj/jdk14doc.jar to <jdev_install>/doc/ohj/jdk14doc.zip.<jdev_install>/doc/ohj/helpbook.properties and edit the line for the jdk14doc.jar to reference the renamed jdk14doc.zip file:
Book.FileName.42 = jdk14doc.zip
Although the JAR file has been renamed and the helpbook.properties file updated, the Help system will still display the JDK 1.4 Javadoc in the table of contents.
When an application module's transaction is committed or rolled back, passivated logs of that transaction (of the sort created by failover or application module pooling) are deleted. If you attempt to retrieve these transactions, you will receive an exception with number JBO-28039.
If you use JDeveloper in a multibyte environment, the embedded browser may display all multibyte characters as squares. If this happens, use the following option to prevent the problem:
AddVMOption -Dice.pilots.html4.ignoreNonGenericFonts=true
|
Oracle Corporation |
Worldwide Inquiries: |
Copyright © 2004, Oracle Corporation. All Rights Reserved. |