Built on Apache Geronimo server Version 2.1.3 and Geronimo Eclipse Plugin (GEP) 2.1.3, WebSphere Application Server Community Edition is an open source, Java EE 5 application server. Using open source applications such as Eclipse, Apache Tomcat, and an Apache Derby database, WebSphere Application Server Community Edition provides an easily accessible and flexible foundation for building Java applications. WebSphere Application Server Community Edition helps you quickly develop applications and grow them as needed. It provides basic security, easy administration, and manual application deployment. The product binaries, and even the source, is available for download and use at no cost. Optional IBM support can be purchased if needed.
IDS is an extensible object-relational database server that supports on-demand computing, WebSphere, and OLTP data management applications in the SQL, Dynamic SQL, C++, and Java languages, with high reliability and performance.
Features of WebSphere Application Server Community Edition and IDS
Some of the key features of WebSphere Application Server Community Edition are:
- It includes some of the best open source technologies such as Apache Tomcat, Apache OpenEJB, Apache ActiveMQ , MX4J, TranQL, Apache Axis, and HOWL (ObjectWeb).
- It includes an Eclipse plug-in that enables users to take advantage of the Eclipse technology-based Web tools platform. With this plug-in, which comes with the server adapter, users can use the features in WTP (Web Tool Platform) to create, deploy and debug applications in WebSphere Application Server Community Edition.
- WebSphere Application Server Community Edition is pre-integrated with a robust and small footprint database server, Apache Derby. In addition to this, it provides driver support for other databases, including IDS, DB2, and Oracle.
- Runtime customization helps selective enabling and disabling of components at runtime, which is cost effective and helps improve performance.
- In WebSphere Application Server Community Edition 2.1 and later versions, users can take an application-centric approach wherein a user has to identify the function components required by a particular application and then assemble a custom server which includes only the components required by that application, thereby building light-weight server images.
- While the previous admin console was static, from version 2.1 onwards, WAS CE provides a new extensible admin console. This framework allows Geronimo plug-in developers to package extensions to the admin console with their components. These extensions are known as Admin Console Extensions (ACE) and can be in the .war or .car form. The extensible admin console itself needs to be installed as a plug-in from the online plug-in catalog.
- The most important addition to the newer (2.1.1.1) version of WAS CE is the additional TranQL XA connectors for Informix Dynamic Server and MS SQL Server 2000/2005.
Some of the key features of IDS are:
- Security features such as:
- Label-based access control (LBAC), which provides new ways of controlling access to the sensitive data within the database
- Pluggable Authentication Module(PAM), which enables customization of system entry services on the challenge/response basis
- Column Level Encryption wherein various cryptographic standards are used like DES or AES
- Secured Socket Layer(SSL), which provides security over wire
- Single Sign On (SSO), which helps manage data server access from a centralized authentication service using Kerberos Authentication protocol
- Support for XA transactions as well as connection pooling
- The MACH11 feature, which provides easy failover recovery to ensure continuous business operations
- Ease of administration with new session configuration routines, new administration APIs, new administration scheduler, and a PHP based graphical administration tool called OpenAdmin Tool (OAT)
- XML publishing and enhanced data type support in cross-server distributed queries
Set up IDS and WebSphere Application Server Community Edition
The prerequisites for this configuration are:
- WebSphere Application Server Community Edition should be installed.
- IDS should be installed.
- One instance of IDS should be configured and running with socket connection.
- Informix JDBC driver archive files should be available to add to the archive repository of WebSphere Application Server Community Edition.
Configure WebSphere Application Server Community Edition to use the Informix JDBC driver
To use IDS as the database server with WebSphere Application Server Community Edition, the Informix JDBC driver archives and the IBM JCC driver archive should be installed first. (See the Resources section for more information on IBM JCC Drivers.)
- Start the Administrative Console by navigating to Start > Programs
> IBM WebSphere > Application Server Community Edition > Administrative
Console.
Use the predefined username
systemand passwordmanagerto log on to the administrative console. - Add Informix JDBC driver archive files and IBM JCC driver archive files to the
existing repository of archives by installing them using the Repository screen of the
Administrative Console.
(Later, you will select
these JAR archives while creating database pools to make connections to the database.)
To do this, select Repository under the
section Services from the left navigation bar of the Administrative Console.
In the Repository Viewer, specify the values as described in the following list and shown in Figure 1 for Informix JDBC archives and in
Figure 2 for Informix JCC archives. Select Install to add each archive file.
- File: <absolute path for ifxjdbc.jar> / <absolute path for ifxjdbcx.jar> / <absolute path for db2jcc.jar>
- Group: Informix
- Artifact: JDBC / JCC
- Version: <JDBC driver version> / <JCC driver version>
- Type: JAR
Figure 1. Add Informix JDBC archives to the Repository
Figure 2. Add IBM JCC archives to the Repository
- After successful installation of the archives, the entries for the Informix JDBC
driver jar files and the JCC driver jar file
appear in the list of archives along with the existing entries, as shown in Figure 3.
Figure 3. Informix JDBC driver archives and IBM JCC driver archive, added to the archive repository
Use the Administrative Console to create new database pools. These database pools can later be used in the applications to get connections to the database. To create a new pool, follow these steps:
- Select Database Pools from the left navigation bar of the console, to bring
up the Database Pools list screen (Figure 4).
Figure 4. Database Pools list screen
(See a larger version of Figure 4.)
- Select Using the Geronimo database pool wizard to create new database pools. The following steps describe how to create database pools with database types of Informix XA, DB2 XA, and Other.
- Create a Database Pool using Informix JDBC Drivers and database type of Informix XA.
As shown in Figure 5 and described in the accompanying table, for
Step 1 of the Database Pool Creation Wizard, provide a name for the database
pool and select Informix XA as the database type.
Figure 5. Create Database Pool Step 1 for Informix XA database type
Field descriptions
| Field | Description |
|---|---|
| Name of database pool | The name that applications use to refer to this database pool. Database pool names should be unique. |
| Database type | The type of database. |
- Select Next to create the database pool.
-
From the screen for editing the connection properties of the new database pool,
fill in the fields as shown in Figure 6 and described in the accompanying table.
Figure 6. Connection properties for the database pool with database type of Informix XA
Field descriptions
| Field | Description |
|---|---|
| Pool Name | Name of the Database pool. This value is copied from what you provided in Step 1 of the wizard. There is no need to change it. |
| Pool Type | The resource adapter that is shown here depends on the Database Type that you select in Step 1 of the wizard. In this scenario, TranQL XA Resource Adapter for Informix is shown for the Database Type of Informix XA. |
| Driver JAR | A JAR repository that holds the JDBC driver class. This is added to the ClassPath of the database pool. The list here includes JARs available under the repository or directory. For Informix, two JARs added previously to the repository should be selected. |
| Ifx SQL Host File | The value of the IfxSQLH_FILE variable. |
| User Name | The log-in name used to connect to the Informix database. |
| Database Name | The name of the Informix database you want to connect to. |
| Ifx SQL Host Type | The value of the IfxSQLH_TYPE variable. |
| Ifx Host | The Host name or the IP Address of the machine on which the IDS database is residing. |
| Ifx Protocol Trace | The value of the IfxPROTOCOLTRACE variable. |
| Ifx Protocol Trace File | The value of the IfxPROTOCOLTRACEFILE variable. |
| Server Name | The name of the IDS server that you are connecting to. |
| Password | The case-sensitive password used to connect to the database. |
| Confirm Password | Re-type the password to confirm it. |
| Port Number | The network port number that the database server is listening on. |
| Transaction Type | Type of transactions that this connection pool supports. |
- Leave the default values for the rest of the fields and click Deploy to deploy the JDBC connection pool.
- Create a Database Pool using JCC Drivers and database type of DB2 XA.
As shown in Figure 7 and described in the accompanying table, for Step 1 of
the Database Pool Creation Wizard, provide a name for the database pool and
select DB2 XA as the database type.
Figure 7. Create Database Pool Step 1 for DB2 XA database type
Field descriptions
| Field | Description |
|---|---|
| Name of database pool | The name that applications use to refer to this database pool. Database pool names should be unique. |
| Database type | The type of database. |
- Select Next to create the database pool.
- From the screen for editing the connection properties of the new DB2 XA database pool,
fill in the fields as shown in Figure 8 and described in the accompanying table.
Figure 8. Connection properties for the database pool with database type of DB2 XA
(See a larger version of Figure 8.)
Field descriptions
| Field | Description |
|---|---|
| Pool Name | Name of the Database pool. This value is copied from what you provided in Step 1 of the wizard. There is no need to change it. |
| Pool Type | The resource adapter that is shown here depends on the Database Type that you select in Step 1 of the wizard. In this scenario, TranQL XA Resource Adapter for DB2 is shown for the Database Type of DB2 XA. |
| Driver JAR | A JAR repository that holds the JCC driver class. This is added to the ClassPath of the database pool. The list here includes JARs available under the repository or directory. For DB2, the JCC JAR added previously to the repository should be selected. |
| User Name | The log-in name used to connect to the DB2 database. |
| Database Name | The name of the DB2 database you want to connect to. |
| Driver Type | The Type of driver used for making the connection with the datasource. The values for this field are either 2 or 4. The default value is 4. |
| Prepared Statement Cache Size | Tells the driver how many prepared statements should be associated with each connection. By default, no statement caching takes place. |
| Trace File | The name of the Tracefile to insert records into. |
| Server Name | The name or IP address of the host that the DB2 server needs to connect to. |
| Trace File Append | Specifies whether to append to or overwrite the Trace File. A value of true means the Trace File is appended to; false means it is overwritten. The default is false. |
| Password | The case-sensitive password used to connect to the database. |
| Confirm Password | Re-type the password to confirm it. |
| Port Number | The network port number that the database server is listening on. |
| Transaction Type | Type of transactions that this connection pool supports. |
- Leave the default values for the rest of the fields and click Deploy to deploy the JCC connection pool.
- Create a Database Pool using JCC Drivers and database type of Other.
As shown in Figure 9 and described in the accompanying table, for Step 1 of
the Database Pool Creation Wizard, provide a name for the database pool and
select Other as the database type.
Figure 9. Create Database Pool Step 1 for Other database type
Field descriptions
| Field | Description |
|---|---|
| Name of database pool | The name that applications use to refer to this database pool. Database pool names should be unique. |
| Database type | The type of database. |
- Select Next to create the database pool.
- For Step 2 of the Database Pool Creation Wizard, provide the driver and JAR
configuration parameters as shown in Figure 10 and described in the accompanying table.
Figure 10. Create Database Pool Step 2 for Other database type
Field descriptions
| Field | Description |
|---|---|
| JDBC Driver Class | The value of the JDBC CLASS. For Informix, the value should be com.ibm.db2.jcc.DB2Driver.
|
| Driver JAR | A JAR repository that holds the JCC driver class. This is added to the ClassPath of the database pool. The list here includes JARs available under the repository or directory. For Informix, the JCC JAR added previously to the repository should be selected. |
| DB Username | The log-in name used to connect to the Informix database. |
| DB Password | The case-sensitive password used to connect to the database. |
| Confirm Password | Re-type the password to confirm it. |
- Select Next to save the connection properties.
- For Step 3 of the Database Pool Creation Wizard, provide the final pool
configuration parameters as shown in Figure 11 and described in the accompanying table.
Figure 11. Create Database Pool Step 3 for Other database type
Field descriptions
| Field | Description |
|---|---|
| JDBC Connect URL | The system generated JDBC connect URL. Ensure the URL fits the syntax for your JDBC driver. |
| Driver Status | Indicates whether the Driver was successfully loaded or not. |
| Transaction Type | Type of the transactions that this connection pool supports. |
-
Leave the default values for the rest of the fields and proceed by
clicking one of the three buttons at the bottom of the screen:
- Test Connection - Use this button to test the connection to the database. Once the connection is successful, the next screen provides the deployment option for this database pool.
- Skip Test and Deploy - Use this button to deploy the database pool even if the database might not be available for testing at this particular time. If the deployment is successful, the console returns to the database pool list screen where the new pool is listed in the running state.
- Skip Test and Show Plan - Use this button to show the deployment plan that Geronimo uses for this pool. The plan is an XML file that you can use in a command to deploy the database pool manually.
-
After you successfully deploy the database pools, they will appear on the
Database Pools screen with a state of running as shown in Figure 12.
Figure 12. List of available database pools after deployment of Informix JDBC driver archives and IBM JCC driver archive
(See a larger version of Figure 12.)
Use a deployment plan to deploy a sample application
Use of a deployment plan is not mandatory to deploy all applications. However, most applications that need resource references to be resolved and require configuration specification for various modules in the application, do require a deployment plan.
A deployment plans is contained in an XML file. The Download section of this article contains three sample deployment plans. The plans are for a sample enterprise application called DayTrader, which is a trading application available for free download from the Apache Software Foundation (see Resources.) The first plan deploys the application with a connection to the IDS instance using the JDBC artifacts. The other two plans use JCC artifacts to connect to a running IDS instance.
WAS CE 2.1.1.1 has a new TranQL XA connector (tranql-connector-informix-xa-1.0.rar) specifically developed for Informix Dynamic Server. Listing 1 is a snippet from the plan named dayTrader2.1-Informix-JDBC-XA-plan.xml. It shows usage of this new connector and also some of the configuration property settings required to be able to connect to IDS using JDBC artifacts
Listing 1. Snippet from dayTrader2.1-Informix-JDBC-XA-plan.xml
<connector>TradeDataSource</connector> <external-path xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2"> <dep:groupId>org.tranql</dep:groupId> <dep:artifactId>tranql-connector-informix-xa</dep:artifactId> <dep:type>rar</dep:type> </external-path> <name>jdbc/TradeDataSource</name> <config-property-setting name="Password">IDS4data</config-property-setting> <config-property-setting name="UserName">informix</config-property-setting> <config-property-setting name="DatabaseName">tradedb</config-property-setting> <config-property-setting name="ServerName">ids1150</config-property-setting> <config-property-setting name="PortNumber">16001</config-property-setting> <config-property-setting name="IfxHost">lxvm-l15.lenexa.ibm.com</config-property-setting> |
Listing 2 is a snippet from the plan named dayTrader2.1-Informix-JCC_DB2-XA-plan.xml. It shows use of JCC artifacts. If you use JCC instead of JDBC, you must specify the Database Type to be DB2 XA when creating the database pool (see Figure 7). Also, the deployment plan needs to contain information similar to what is shown in Listing 2 to establish connectivity to IDS.
Listing 2. Snippet from dayTrader2.1-Informix-JCC_DB2-XA-plan.xml
<connector>TradeDataSource</connector> <external-path xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2"> <dep:groupId>org.tranql</dep:groupId> <dep:artifactId>tranql-connector-db2-xa</dep:artifactId> <dep:type>rar</dep:type> </external-path> <name>jdbc/TradeDataSource</name> <config-property-setting name="UserName">informix</config-property-setting> <config-property-setting name="Password">inform123</config-property-setting> <config-property-setting name="PortNumber">9089</config-property-setting> <config-property-setting name="ServerName">9.122.208.100</config-property-setting> <config-property-setting name="DatabaseName">tradedb</config-property-setting> <config-property-setting name="DriverType">4</config-property-setting> |
Listing 3 is a snippet from the plan named dayTrader-IDS-JCC-OTHER-XA-plan.xml. You can also use this plan in a scenario where you want to use JCC artifacts to connect to IDS. If you use this plan you must specify the Database Type to be Other when creating the database pool (see Figure 9). Unlike the other two plans, this plan also defines a connection URL as shown in the snippet.
Listing 3. Snippet from dayTrader-IDS-JCC-OTHER-XA-plan.xml
<connector>TradeDataSource</connector> <external-path xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2"> <dep:groupId>org.tranql</dep:groupId> <dep:artifactId>tranql-connector-ra</dep:artifactId> <dep:type>rar</dep:type> </external-path> <name>jdbc/TradeDataSource</name> <config-property-setting name="Password">IDS4data</config-property-setting> <config-property-setting name="Driver"> com.ibm.db2.jcc.DB2Driver </config-property-setting> <config-property-setting name="UserName">informix</config-property-setting> <config-property-setting name="ConnectionURL">j dbc:db2://lxvm-l150.lenexa.ibm.com:16002/tradedb </config-property-setting> |
Once the deployment plan is ready, you can use either of the following two methods to deploy the application:
- From the IDS Console Navigation, navigate to Applications > Deploy New.
This takes you to the Install New Application screen shown in Figure 13.
Figure 13. Deploying the DayTrader application with IDS
For the Archive field, specify the .ear file for the DayTrader application. For the Plan field, specify the relevant plan file based on your choice of driver archives (JCC or JDBC). When finished, select Install. As shown in Figure 14, the Install New Applications screens shows messages to indicate when the application has been successfully deployed and started.
Figure 14. Successful Deployment of the DayTrader application with IDS
-
From a command prompt, set geronimo_home to <absolute path for WebSphere Application Server Community Edition
installation directory> and enter the following commands from
<geronimo_home>/bin to install DayTrader:
deploy -<user> system -<password> manager deploy <daytrader_home>\modules\ear\target\daytrader-ear-2.1.1.0.ear <daytrader_home>\plans\dayTrader-Informix_JDBC_XA-plan.xml
where <daytrader_home> is the root directory for DayTrader application.
Once you install DayTrader using the XML plan, you can access it at:
http://<hostname>:<port>/daytrader.
To begin trading, navigate to Configure > (Re)- populate Trade Database. This creates a fictional set of users, stocks, prices, and other parameters. The DayTrader application is then ready to use for simulated trading.
IDS is a versatile relational database server that is powered with a wealth of features. It helps every database user, from an application user to an administrator, with complex activities. WebSphere Application Server Community Edition leverages some of the best open source technologies to provide an easy and quick opportunity to deploy a Java application on a Web server. This article explained how WebSphere Application Server Community Edition can be configured to communicate with IDS through JDBC and JCC. It illustrated how a user can rapidly deploy Java application in this type of environment.
| Description | Name | Size | Download method |
|---|---|---|---|
| IDS-specific plan file -11 | dayTrader2.1-Informix-JDBC-XA-plan.xml | 26KB | HTTP |
| IDS-specific plan file - 22 | dayTrader2.1-Informix-JCC_DB2-XA-plan.xml | 26KB | HTTP |
| IDS-specific plan file - 33 | dayTrader-IDS-JCC-OTHER-XA-plan.xml | 26KB | HTTP |
Information about download methods
Notes
- This is an IDS-specific plan file to connect to IDS using JDBC XA Drivers.
- This is an IDS-specific plan file to connect to IDS using JCC Drivers with the DB2 XA Adapter.
- This is an IDS-specific plan file to connect to IDS using JCC Drivers with a Generic Adapter.
Learn
-
An Introduction to JCC: from
the International Informix Users Group.
-
Differences between JCC and JDBC drivers: from
the International Informix Users Group.
-
developerWorks Information Management zone: Learn more about DB2. Find technical documentation, how-to articles, education, downloads, product information, and more.
-
Stay current with developerWorks
technical events and webcasts.
Get products and technologies
-
Build your next development project with
IBM
trial software, available for download directly from developerWorks.
-
Read about and download the DayTrader sample application from the Apace Software
Foundation.
Discuss
- Participate in the discussion forum.
-
Participate in developerWorks blogs and get involved in the developerWorks community.

Dhanshri Kudgavkar works for the Interoperability team, ISL, India. She has extensive experience with IDS behaviors and features.
Comments (Undergoing maintenance)







