Limitations of EJB development tools

This topic outlines current known limitations and restrictions for the EJB tooling.

Problems generating deployment code when installation path has multiple consecutive spaces

If there are multiple consecutive spaces in any of the directories on the path where the product is installed, generation of deployment code will fail.

EJB deployment code not deleted when changing a bean class

In order to support multiple enterprise beans using the same Java™ classes, the generated deployment code is required to use a naming technique to make the names of the generated deployment classes unique. The names are derived from the names of the existing bean class, interfaces, and key classes.

If you generated the deployment code for a bean and you want to change the name of any of these classes, you must delete the deployment code first. If you do not delete the deployment code first, the old, generated classes will not be removed and may contain compilation errors. This may also be true if you change the type of your primary key field using the Bean page of the EJB Deployment Descriptor editor and selecting the Edit button beside the CMP Fields section. This will automatically change the key class to the type specified or a new compound key will be created if a primary key field is no longer valid.

Deleting tables and schemas

If a table needs to be deleted, use the Data perspective or the Project Explorer view of the J2EE perspective, then all dependent links will also be removed. Normally you should not use the Navigator view (in the Resource perspective) or the J2EE Project Navigator view for deleting J2EE resources because dependencies will not be updated.

Unknown primary key is not supported

The EJB tooling currently does not support the Unknown primary key definition described in the EJB 2.0 specification. The workaround is to define a specific primary key class.

Source page and EJB inheritance

If you are modifying CMP entity beans in an inheritance hierarchy, you should use the wizards and interface portions of the EJB deployment descriptor editor, not the Source page. For example, if you want to add or remove CMP fields or change the primary key field of a CMP bean, these fields are synchronized by the tools for all inherited beans, in order to keep the beans in compliance with the EJB specification. Such synchronization may not occur if you change the source in the Source page.

Migrating EJB applications

Related information
Limitations of EJB deployment

Feedback