Deploy SQLJ applications that use container-managed persistence (CMP) with the ejbdeploy tool
Embed Structured Query Language in Java (SQLJ) statements in the applications to maximize the efficiency of transactions with the databases. Before the applications can take advantage of SQLJ, you must deploy the application and customize the SQLJ profiles created. The application server provides functionality to use SQLJ as the persistence mechanism for enterprise beans that use container-managed persistence. Use the ejbdeploy tool to deploy the application.
We can deploy SQLJ applications with the ejbdeploy tool to deploy the enterprise application in a stand-alone environment.
Alternatively, the application server includes enhanced SQLJ support for applications that use container-managed persistence (CMP). The new features include:
- Deploy CMP beans during the application installation in the application server.
- Customize and binding SQLJ profiles with the console or scripting.
- Customize and binding SQLJ applications again without needing to reinstall the application.
These enhancements reduce the complexity of installing, deploying, and customizing SQLJ applications for both container-managed and bean-managed persistence.Read the topic on deploying SQLJ applications that use container-managed persistence (CMP) for more information.
- Create a top-down mapping to a DB2 database.
- From the DB2 installation, copy the sqlj.zip file to a directory on the workstation.
- Modify the Java build path of the enterprise bean JAR project to include the sqlj.zip file.
- Use Rational Application Developer or the DB2 SQLJ translator to automatically translate SQLJ.
- Use Rational Application Developer:
- From the Project Navigator, click EJB_JAR_PROJECT_NAME > SOURCE_FOLDER > META-INF > backends > database_version.
- Open Map.mapxmi in the Mapping editor.
- On the Overview panel, highlight the name of the JAR project in the Enterprise Beans column. We must highlight the name of the JAR project, not the name of one of the enterprise beans that is listed.
- On the Properties panel, expand SQLJ.
- Set Is using SQLJ? to True.
- Set Translator Module to the fully qualified path of the sqlj.zip file on the workstation.
- Save the Map.mapxmi file.
- Export the EAR file.
- Use the DB2 SQLJ translator. This tool creates a .java version of the .sqlj file and a serialized profile, with a .ser extension, used later in processing. Refer to the DB2 documentation for more information on the SQLJ translator tool.
- Deploy the EAR file with the ejbdeploy tool.
- Verify that the app_server_root/bin directory is in the class path.
- Run the ejbdeploy command utility with the -sqlj option. The ejbdeploy command will generate an EAR file with the name specified and an Ant script with the name application_name.ear.xml.
For example: :
ejbdeploy d:\application_name.ear working d:\deployed_application_name.ear -sqlj -dbvendor DB2UDB_V81 -cp "C:\PROGRA~1\IBM\SQLLIB\java\sqlj.zip"
Avoid trouble: Supply the location of the SQLJ translator sqlj.zip file with -cp, which is the class path option The ejbdeploy command does not access sqlj.zip from the system class path.gotcha
- Choose the option for customization.
- Use the application server's SQLJ support. Install the deployed application to customize the SQLJ profiles with the application server or scripting.
- Install the enterprise application in the application server.
Avoid trouble: Do not select Deploy enterprise beans during the application installation process in the console. If we redeploy the enterprise beans from the console, you will lose the customization changes that we have made.gotcha
- Customize the SQLJ profiles.
- For console support, read the topic on customizing and binding profiles for Structured Query Language in Java (SQLJ) applications.
- For scripting support, read the topic on the application management (AdminTask).
- Customize and bind the SQLJ profiles with the db2sqljcustomize tool. Read the topic on customizing and binding SQLJ profiles with the db2sqljcustomize tool.
Related concepts
Data access beans
Related tasks
Customize and binding profiles for Structured Query Language in Java (SQLJ) applications Customize and binding SQLJ profiles with the db2sqljcustomize tool Deploy SQLJ applications that use container-managed persistence (CMP) Deploy SQLJ applications that use bean-managed persistence, servlets, or sessions beans
Rational Application Developer: Developing SQLJ applicationsDeploy SQLJ applications
Application management (AdminTask) Exceptions pertaining to data access