J2EE Doc Bundle Home


Java TM 2 SDK, Enterprise Edition 1.3_01 Release Notes



Patch Release 1.3_01


  • In the FCS release the J2EE SDK tools generated incorrect values for the "multiplicity" element for relationships in the XML deployment descriptor for Container Managed Persistence (CMP) 2.0. The correct values are generated in this 1.3.1_01 patch release of the J2EE SDK, and the J2EE SDK now correctly deploys CMP 2.0 entity beans whose descriptors contain the correct values. BugID 4503858.

  • CMP 1.1 entity beans, supported in EJB 2.0 for compatibility reasons, do not have the query feature of CMP 2.0 entity beans. In the FCS release the J2EE SDK tools incorrectly generated a "query" element in the XML deployment descriptor for CMP 1.1 entity beans. The J2EE SDK now generates correct XML deployment descriptors for CMP 1.1 entity beans. BugID 4504244.

  • In the FCS release the J2EE SDK tools incorrectly generated a "container transaction" element in the XML deployment descriptor for the "getHandle" method for EJB 2.0 EntityBeans. The EJB 2.0 specification does not suppport a transaction attribute for the "get handle" method. The J2EE SDK now generates correct XML deployment descriptors for the "getHandle" method for EJB 2.0 EntityBeans. BugID 4505253.


  • can now be used to build applications employing EJB 2.0 CMP entity beans that are portable to other J2EE application servers , and

  • will correctly run such applications developed on other J2EE application servers.

Beginning with the J2EE SDK


1. Read the Installation Instructions to find out how to set the J2EE_HOME and JAVA_HOME environment variables. The Installation Instructions are on our web site and may be reached by a link on the J2EE SDK download page.

2. Install the software that the Java TM 2 SDK, Enterprise Edition relies on. See the Required Software section of this document.

3. Go to the J2EE Tutorial to learn how to use the J2EE SDK. The J2EE Tutorial is found at:



What's New in J2EE SDK 1.3


  • Java TM Messaging Service (JMS)

  • J2EE TM Connector Architecture

  • Java TM API for XML Parsing (JAXP)

  • Java TM Servlet new features:

    • filters, a lightweight framework for transforming requests and responses

    • mechanisms for monitoring application lifecycle events

    • better support for internationalization
  • JavaServer Pages TM new features:

    • improved runtime support for tag libraries

    • translation-time JSP TM page validation
  • Enterprise JavaBeans TM new features:

Supported Platforms

  • Solaris TM 7, 8

  • Windows NT, v. 4.0

  • Windows 2000 Professional

  • Linux Red Hat, v. 6.2

Supported Databases and JDBC TM Drivers


  • Oracle8 Server, v. 8.1.6

  • Microsoft SQL Server, v. 7.0

  • Cloudscape, v. 4.0
JDBC Data Access APIJDBC Technology Drivers

What This Release Includes


J2EE Server


  • HTTP and HTTPS

  • COS naming

  • Enterprise JavaBeans TM (EJB) 2.0

  • Java TM Servlets 2.3

  • JavaServer Pages TM (JSP) 1.2

  • Java TM Messaging Service (JMS) 1.0.2

  • J2EE TM Connector 1.0

  • JDBC TM Standard Extension 2.0

  • Java TM Transaction API (JTA) 1.0

  • JavaMail TM 1.2

  • Java TM API for XML Parsing (JAXP) 1.1


  • Administration Tool

    The j2eeadmin utility adds JDBC drivers, JMS destinations, and connection factories for various resources.
  • Application Deployment Tool

    The deploytool utility packages J2EE components and deploys J2EE applications.
  • Key Tool

    The keytool utility creates public and private keys and generates X509 self-signed certificates. The J2EE SDK version is a wrapper for the J2SE SDK version, but adds a Java Cryptographic Extension provider that has implementations of RSA algorithms (licensed from RSA Data Security).
  • Realm Tool

    The realmtool utility manages users for the J2EE server.
  • Verifier

    The verifier utility validates J2EE component files.
  • Packager

    The packager utility packages J2EE components.
  • Cleanup Script

    The cleanup utility deletes all deployed J2EE applications.
J2EE SDK Tools

Cloudscape DBMS

TM Supported Databases and JDBC TM Drivers

Required Software

TM Java 2 SDK, Standard Edition TM TM

The Java TM 2 SDK, Enterprise Edition (v 1.3) requires the versions of the Java TM 2 SDK, Standard Edition listed in the following table:


Note: Versions of the Java TM 2 SDK, Standard Edition not listed in the preceding table have not been tested and are not supported. For example, J2SE v. 1.2 will not work with this release of the Java TM 2 SDK, Enterprise Edition.

Current Limitations


Multi-byte Character String Support

Database Calls During Result Set Iteration



String query = "SELECT DEPTNO FROM DEPT . . .";
String update = "UPDATE EMPLOYEE . . .";
ResultSet rs = stmt.executeQuery(query);
while (rs.next()) {
   String s = rs.getString("DEPTNO");
   // The following statement will FAIL:
   . . .

1. Use a stored procedure that contains the same SQL calls.

2. Substitute an iteration with a single SQL statement that contains a subquery. Here's an example:


String update = "UPDATE EMPLOYEE

Scalability and Memory Requirements

In J2SE 1.3.1, an OutOfMemoryError can result when a very large number of Java classes are loaded by the JVM, even when there are free spaces on the Java heap. Workaround: Edit bin/setenv.sh or bin/setenv.bat to add the following option to the JAVACMD variable:





Common Development Environment

RMI-IIOP and JAXP Standard Extensions

Known Bugs


Differences Between Tomcat and the J2EE TM SDK


Note: The Tomcat implementation in the J2EE SDK might be slightly different from the version of Tomcat 4.0 distributed separately because of different release schedules. For more information about Tomcat, please see http://jakarta.apache.org/.

Linux Notes

Port Conflicts


J2EE server Listen Port: = 1050
Could not initialize j2ee server. 
Possible cause could be another instance of the server already 
. . .



Interoperability Between EJB TM Containers

To communicate with an enterprise bean running on the J2EE SDK server, the client running on an application server provided by another vendor must have the j2ee-ri-svc.jar file in its class path.

A client is running on the J2EE SDK server doe not need the j2ee-ri-svc.jar file to communicate with an enterprise bean on an application server provided by another vendor.

The j2ee-ri-svc.jar file is located in the lib directory of the J2EE SDK installation. It contains portable system value classes such as implementations of javax.ejb.Handle and javax. ejb.EJBMetaData. These implementations are specific to the J2EE SDK.

For more information on EJB container interoperability, please refer to section 19.2 of the Enterprise JavaBeans 2.0 Specification. A link to the Specification may be found on the J2EE SDK download page.

Container-Managed Persistence 2.0

Note that the persistence manager in the J2EE SDK only supports forward mapping of a CMP 2.0 abstract schema to a relational database. Using the J2EE SDK's tools, it is not possible to reverse map from existing database tables to a CMP 2.0 abstract schema.


Copyright © 2001 Sun Microsystems, Inc. All rights reserved.

TABLE 1 Required Versions of the Java TM 2 SDK, Standard Edition (J2SE)
Operating System


J2SE Version


Solaris TM 7, 8 1.3.1_01
Windows NT 4.0,
Windows 2000 Professional
Linux Red Hat, v. 6.2 1.3.1_01
Bug ID




4365998 The Update Files function in the DeployTool no longer works after the display name for an Application is changed. Workaround: Update each file individually and re-add the new files to the contents of the EJB/Web/App bundle.
4412002 A deployed J2EE client on Windows or Solaris cannot connect to J2EE on a default installation of Red Hat Linux. The Red Hat Linux method InetAddress.get LocalHost() returns the loopback address instead of the actual host address. The fix is to assure that the method returns the actual host by updating the /etc/hosts file, or the name service configuration file, /etc/nsswitch.conf,using a query to dns or nis.
4461245 The SQL generator in the DeployTool generates database table names for storing the persistent state of CMP EntityBeans based on the bean class name. If there are two or more beans with the same bean class name (in the same EAR or in multiple deployed EARs), the table names will conflict. Workarounds: use different datasources for storing beans in different EARs. Or, change the table names in the generated SQL statements in the Deployment Settings dialog for EntityBeans.
4485722 The ServletRequest.setCharacterEncoding() method does not work in JSP pages. Workaround: Add a Filter in front of the JSP page and make this API call inside the Filter.
4491857 The PageContext.include() method does not perform a flush. To be portable,a tag library implementation should not rely on flush being performed by the web container. Workaround: Perform an explicit flush (e.g. PageContext.getOut().flush()) before calling PageContext.include().
Left Curve
Java SDKs and Tools
Right Curve
Left Curve
Java Resources
Right Curve
Duke's Choice Awards Nomination RHS

VTS OnDemand RHS Banner