Oracle9i JDeveloper

Release Notes Addendum

Release 2 (9.0.2)

Last updated June 2002

Content

Introduction

The below issues were compiled after the release of Oracle9i JDeveloper in April 2002. This is an addendum to the release notes included with that release. We plan to update this addendum regularly as new issues come to our attention.

Long Startup Time on Windows XP

If JDeveloper takes a long to to start on Windows XP, it may be due to real time scanning done by an antivirus program. Disable real time scanning and JDeveloper should be more responsive.

Setting the EJB Transaction Type Property

EJB transactions can be set to be local or global. By default they are set to local. In a local transaction, UserTransaction is not used for client-demarcation, so transactional interactions with other EJB-tier Container-Managed Transaction (CMT) beans won't work properly. This is not an issue if you are using the EJB server to deploy your BC4J EJB application module for thin-client access from a JClient GUI.

If your BC4J EJB session bean will be making calls to other CMT EJB session beans (so that all of their work commits/rollbacks correctly as a unit), you need to set the EJB transaction type to global. When the transaction type is set to global, BC4J will use the UserTransaction object to drive a client-demarcated transaction.

When changing transaction types you must set the transaction property type ( jbo.ejb.txntype) and configure BC4J to use the proper datasource.

To change the transaction property type and datasource:

  1. In the System Navigator, right-click on your root application module and choose Configurations... from the context menu.
  2. Select your application module configuration from the list and click Edit.
  3. In the Oracle Business Component Configuration dialog box, click the Properties tab.
  4. Scroll through the list and find the property, jbo.ejb.txntype.
  5. Double-click in the Value field and change the field to global or local depending on you needs.
  6. Click the Application Module tab.
  7. Update the Datasource Name text field with the appropriate local or global name.

    Note: OC4J binds a local JDBC datasource to the location attribute value of the data-source element in the data-sources.xml configuration file. OC4J binds a distributed datasource to the ejb-location attribute value of the data-source element in the data-sources.xml configuration file. Note these two attributes in the data-source element of the data-sources.xml file listed below.

      
                                      
    <Data-source
         class="com.evermind.sql.DriverManagerDataSource"
         name="OracleDS"
          
                                        
    location="jdbc/OracleCoreDS"
         xa-location="jdbc/xa/OracleXADS"
          
                                        
    ejb-location="jdbc/OracleDS"
         connection-driver="oracle.jdbc.driver.OracleDriver"
         username="scott"
    
         password="tiger"
         url="jdbc:oracle:thin:@localhost:1521:oracle"
         inactivity-timeout="30"
      />
                                      
                                    
  8. Click OK to close the dialog box and then OK again to close the Configuration Manager.

To connect using your new transaction type:

  1. Select Project | Make to remake your project (to copy the bc4j.xcfg file to the outpath).
  2. Launch the tester by right-clicking on your application module and choosing Test...
  3. In the Connect dialog box, make sure you pick your edited configuration from the Business Component Configuration Name dropdown list.

Local and Global Transactions for EJBs

The default setting for EJB transaction types is set to local. In the previous release, the default setting was global. In a local transaction, UserTransaction is not used for client-demarcation, so transactional interactions with other EJB-tier Container-Managed Transaction (CMT) beans won't work properly. This is not an issue if you are using the EJB server to deploy your BC4J EJB application module for thin-client access from a JClient GUI.

If your BC4J EJB session bean will be making calls to other CMT EJB session beans (so that all of their work commits/rollbacks correctly as a unit), you need to set the EJB transaction type to global. See "Setting the EJB Transaction Type Property" above.

UIX XML Rendering if Data Source Info is not Prepackaged in EAR File

UIX JSP and UIX XML applications from JDeveloper deployed to iAS through the Enterprise Manager Deployment functionality Runtime will result in a runtime rendering / data access error. This happens only if data source information is added subsequently through Enterprise Manager and not pre packaged already in the ear file from JDeveloper.

If the ear file generated from JDeveloper doesn't package the data-sources information, if the deploy to ear files option is chosen instead of deploy to connection, and if that information is subsequently added through the iAS Enterprise Manager through the edit data sources functionality in the Enterprise Manager, then the UIX / JSP and UIX / XML applications cannot run successfully due to a runtime rendering error.

Workaround:

Do not add the data-sources info post deployment via EM. Instead, package the ear file with the data-sources information from JDeveloper prior to deployment via EM. While creating the UIX / JSP or the UIX / XML application from JDeveloper, instead of just deploying to an ear file, deploy to any existing connection. That process will create an ear file with the data-sources information packaged.

Even the process of deploying to a dummy connection (though it will result in deployment errors in JDeveloper) will create an ear file that includes the data source info that can be successfully deployed to iAS .

Troubleshooting JDeveloper Hosted Documentation

If your computer is behind a firewall, you may need to use a proxy server in JDeveloper to access files on the Internet. Set your proxy server at Tools -> Preferences -> Proxy Server. If you are not using a proxy server, deselect the "Use HTTP Proxy Server" checkbox.

If you are using the OTN release of JDeveloper, you will have the option to "Use Hosted Documentation on Oracle Technology Network". This is documentation that will be hosted on the Oracle Technology Network, but will display in JDeveloper's help system, rather than in an external browser.

If you want to host the documentation on your own server, see the installation guide for how to configure your server. To configure JDeveloper to use your hosted documentation:

  1. If your server is behind your firewall, exclude the server from the proxies list by shutting down JDeveloper adding the following line to <JDEV_HOME>/jdev/bin/jdev.conf :

  2. AddVMOption -Dhttp.nonProxyHosts= <server_url>

    (where <server_url> is the URL of the hosted doc server).
     

  3. In JDeveloper, at Tools -> Preferences -> Documentation, select the "Use Hosted Documentation" radio button, and verify that the URL is correct.

  4.  
  5. Invoke the online help at Help -> Help Topics.
  1. Set the Documentation preferences to use local documentation, and invoke the help system.
  2. Then, change the Documentation preferences back to use hosted documentation.
  3. Verify that the URL is correct.
  4. Invoke the help system.
  1. Close JDeveloper.
  2. Open the file <jdev_root>/system/ide.properties in a text editor.
  3. Change Ide.HelpSystem.UseHostedHelp=false to Ide.HelpSystem.UseHostedHelp=true. (If this property does not exist in the ide.properties file at all, add the line Ide.HelpSystem.UseHostedHelp=true to the ide.properties file.)
  4. Save and close ide.properties, and launch JDeveloper.
  5. Invoke the help system.

Correction to "Must Deploy soap.ear to use SOAP Container in OC4J" Release Note Item

The release note "Must Deploy soap.ear to use SOAP Container in OC4J" contains an omission and an error:

A) Before you begin the procedure, you must enable the http-web-site entry in application.xml if you wish to use the OC4J "home" instance. Be sure to pick unique port numbers to prevent conflicts.

B) In step 2 of the procedure, you were instructed to use default-web-site as the Target Web Site. Instead, use http-web-site.

JDeveloper Installed fromiDS Issues

If you installed JDeveloper from theiDS CD, the J2EE Container in ORACLE_HOME/j2ee is not configured to support interMedia applications. This note does not apply to JDeveloper installed from OTN.

Workaround: To enable interMedia, add the ORACLE_HOME/ord/jlib directory to the J2EE container classpath.


If you installed JDeveloper from theiDS CD, the J2EE Container in ORACLE_HOME/j2ee is not configured to support SOAP applications. This note does not apply to JDeveloper installed from OTN.

Workaround: To enable SOAP support:

  1. In ORACLE_HOME/j2ee/home/config/server.xml, uncomment the following line: <web-site path="./http-web-site.xml" />
  2. Deploy soap.ear from JDeveloper to the J2EE container.


If you installed JDeveloper from theiDS CD, the J2EE Container in ORACLE_HOME/j2ee is not configured as an HTTP listener. This note does not apply to JDeveloper installed from OTN.

Workaround: To enable the J2EE containers located in ORACLE_HOME/j2ee to act as an HTTP listener, do the following:

  1. In ORACLE_HOME/j2ee/home/config/server.xml, uncomment the following line: <web-site path="./http-web-site.xml" />
  2. By default, the listener uses port "8888". You may need to change the port number in ORACLE_HOME/j2ee/home/config/http-web-site.xml to make sure that it does not conflict with other applications.
false ,,,,,,,,,,,,,,,