An EJB client JAR project contains all the class files that a client
program needs to use the client view of the enterprise beans that are contained
in the EJB module.
With the EJB tooling, you can create an EJB project with a corresponding
EJB client JAR project. The EJB project will depend on the EJB client JAR
project. The EJB client JAR project contains all necessary classes for a client
of the enterprise beans, including all interface classes, key classes, and
supporting classes. Because these classes are not duplicated in the EJB project,
the EJB project depends on its EJB client JAR project. Any project that has
a reference to an enterprise bean in the EJB project will need a reference
to the EJB client JAR project. If the EJB client JAR project is in another
enterprise application, the EJB client JAR file must be added to the referencing
EAR file as a utility JAR file.
After the EJB client JAR project is created, it is up to you to add any
necessary value objects to this project that are needed by the home or component
interfaces. If the objects are not present, compilation errors will result.
EJB client JAR files
EJB client projects are exported as EJB client JAR files when the application
is exported. The EJB client JAR file is specified in the deployment descriptor
of the EJB JAR file using the optional ejb-client-jar
The value of the ejb-client-jar
element is the path name
specifying the location of the EJB client JAR file in the containing Java
EE Enterprise Application Archive (.ear) file. The value of the path name
is a URI relative to the EJB JAR file within the application.
Note: The relative
URI path for the EJB client JAR file should be the same in all applications
that the EJB project belongs to.
When you create an EJB client JAR project for an EJB project, the EJB client
JAR file is added to the containing enterprise application as a project utility
JAR. The reference to this EJB client JAR file cannot be removed from the
enterprise application as long as the EJB project is defined as a module for
you use the Export EJB JAR file wizard to export an EJB project, the export
wizard does not include an EJB project's associated EJB client JAR project.
To include the EJB client JAR file, it is recommended that you export the
enterprise application EAR file that contains the EJB project. The resulting
EAR file will include any dependent EJB client JAR files as utility JAR files.
Alternatively, you can export the EJB client JAR project separately as a JAR