After successfully signing onto WOW, you should see the main screen for Web Object Wizard:
Before creating an application, a database connection must be defined. This connection can be to any database that is compatible with WOW.
To setup the new connection, click on either the Setup Connections link in the side steps panel or the Connections button in the toolbar. Then, click on the Create Connection button below the list of connections to bring up a screen similar to this:
Connection Spec
JDBC Driver (Required Field) - The type of JDBC you will be using to connect to the database. This specifies the specific class that you will use to access the database.
AS/400 Native - Use when your data resides on the AS/400 and your application runs directly on the AS/400.
AS/400 Remote - Use when your data resides on the AS/400 and your application server does not run on the AS/400.
AS/400 Command & Program Call - For future support.
DB2 (Local) - Use when your data resides in DB2 and your application runs on the same server that contains DB2.
DB2 (Remote) - Use when your data resides in DB2 and your application runs on a different server.
MS Access/Excel (ODBC) - Use when your data resides in an Excel spreadsheet or a MS Access database connected through a System DSN.
MySQL - Use when your data resides in MySQL.
PostgreSQL - Use when your data resides in PostgreSQL.
ORACLE (Remote) - Use when your data resides in ORACLE.
SQL Server - Use when your data resides in Microsoft's SQL Server.
Alias (Required Field) - Any text which uniquely identifies the database connection. Entries should be easily associated with the connection being created. The maximum entry is 50 characters. The Connection Alias is used when looking up field descriptors and normally should not be edited after its creation.
URL (Required Field) - The URL of the JDBC database to be connected to. This URL will be specific to the type of database you are connecting to. This URL is where your database information is located.
Properties - Specific properties that are set in the specific connection you have created. Refer to each JDBC driver for more information.
User ID (Required Field) - An ID that will be used to connect to a specific database. This must be a valid user ID for the database that you will be connecting to. All database operations will be executed through this user ID.
Password (Required Field) - The password which corresponds to the user ID used to connect to a specific database. This must be a valid password for the user ID you are using. If the password changes or expires on the target database, the WOW password entry must be updated and the connection must be restarted.
Options
View Advanced Settings - Shows the Advanced settings section.
Auto Verify - Automatically verifies the connection settings by attempting to connect to the database upon insertion. This will return an error if it is unable to connect.
Advanced
Min. Connections (Required Field) - The number of connections that will be created when the application first starts up. The maximum value is 10. The default value is 2.
Max Connections (Required Field) - The maximum number of simultaneous connections allowed for the database connection. The maximum number of connections used can have a significant effect on the performance of the system; the number will vary based on the power of the system. The default value is 10.
Orphan Timeout (Required Field) - The maximum number of seconds that a database transaction is allowed to take. When a database transaction takes longer than the allocated time, it is terminated and the connection is made available for a new transaction. This prevents a database transaction from hanging and permanently tying up a connection.
Clean Up Timeout (Required Field) - After the specified amount of seconds, the program will close and reopen its connection. Many databases only allow connections to remain open for a certain amount of time. This setting helps ensure that a connection will not time out, and if such occurs, it will be reopened.
Connection Class - Used to enhance or modify the connection using a java class. For example, a java class could be written that changes the theme or header when running against test data rather than live data.
Security Considerations
The user profile or user id supplied on a WOW connection entry is used to access the target database for all users of the application. For proper security, the user profile used should be configured with the minimum required rights. For example, if an application is just a reporting application over "accounts payable" tables, the user profile used should have only READ access to the specific tables required. This will enforce constraints and ensure only authorized data is shown and prevent unauthorized edits and updates. Security and authorization rights are set up differently for each type of database.
An alternative to a DB connection pool is a "personal connection" pool.
Refer to the page Securing Application for more details on security.
How Connection Pools Work
Connection pooling has become the standard for middle-ware database drivers. The process of creating a connection, always an expensive, time-consuming operation, is multiplied in these environments where a large number of users are accessing the database in short, unconnected operations. Creating connections over and over in these environments is simply too expensive.
The transaction profile for Web applications, probably the most common application in use today, is that of a large number of users performing short, discrete database operations. These applications usually perform work centered around creating a web page that will be sent back to the user's browser. Transactions are generally short-lived, and user sessions are often limited in time.
A connection pool operates by performing the work of creating connections ahead of time, In the case of a JDBC connection pool, a pool of Connection objects is created at the time the application server (or some other server) starts. These objects are then managed by a pool manager that disperses connections as they are requested by clients and returns them to the pool when it determines the client is finished with the Connection object. A great deal of housekeeping is involved in managing these connections. When a WOW Operation is executed, an unused connection from the pool is checked out, SQL is executed using the Connection, and then the Connection is returned to the available pool.