Documentation
DBPrism Connection Cache
Common
Name  Values  Default Value  Explanation 
Manager.class  A valid fully qualified class name  com.prism.utils.JdbcDBPrismConnectionImpl  A valid class name which implements a particular Connection Cache Algorithm. This parameter is mandatory from DBPrism 1.2.0+ . There are three Connection Cache implementations available in this version: com.prism.utils.JdbcDBPrismConnectionCacheImpl, com.prism.utils.JndiDBPrismConnectionCacheImpl and com.prism.oracle.JTADBPrismConnectionCacheImpl.  
Name  Values  Default Value  Explanation 
Manager.timeout  A valid integer in second   600  Timeout off unused connection in second, after this the connection is closed  

Transaction Support
Name  Values  Default Value  Explanation 
Manager.TxEnable  true/false  false  Enable/Disable Transaction support by url demarcation  
Name  Values  Default Value  Explanation 
Manager.TxNames  A space separated list of transaction names  empty  List of space separated TX names. For example "fly demo".  

Transaction Definitions
Name  Values  Default Value  Explanation 
txName.BeginURI  a valid URI  empty  URL who acts as a begin of the transaction, ej: /servlet/plsql/demo_pkg.Begin_URL  
Name  Values  Default Value  Explanation 
txName.CommitURI  a valid URI  empty  URL who acts as a commit of the transaction, ej: /servlet/plsql/demo_pkg.Commit_URL  
Name  Values  Default Value  Explanation 
txName.RollBackURI  a valid URI  empty  URL who acts as a rollback of the transaction, ej: /servlet/plsql/demo_pkg.RollBack_URL  
Name  Values  Default Value  Explanation 
txName.BelongTo  a ; separeted list of valid URI  empty  URIs who belong to the transaction, ej: /servlet/plsql/demo_pkg.*;/servlet/plsql/demo_otherpkg.*  
Name  Values  Default Value  Explanation 
txName.TimeOut  a valid positive number  500  Time out in second after the transaction is automatically rolled back  
Using the Resource Manager, you associate URIs with the operations on
transactions (begin, commit, and rollback). When a user invokes one of these URIs,
the corresponding transaction operation is performed by the ResourceManager.
These URIs can be mapped to stored procedures that
display appropriate pages to the user. For example, the begin transaction URI
could display to the user a list of items to add to his or her shopping cart, the
commit transaction URI could display to the user a list of purchased items, and
the rollback transaction URI could display to the user a page that asks if he wants
to drop the existing shopping cart and start another one.

Between the begin and the commit or rollback URI, the user invokes other URIs that
call procedures to perform some action on the database. These procedures might or
might not belong to a transaction. If the URI belongs to a transaction, the actions
performed by that procedure would be committed or rolled back when the transaction
ends. If the URI does not belong to the transaction, it is not affected by the
transaction, and Prism treats it as a regular request (changes made by that URI are
committed upon completion).
URIs belonging to a transaction usually invoke procedures
within a package.

The sequence of URIs for a stored procedures within the database when invoked
would look like the following:

-- begin a transaction
http://host:port/servlet/demo/test.txn_begin

-- the first operation in the transaction
http://host:port/servlet/demo/test.txn_update1

-- the second operation in the transaction
http://host:port/servlet/demo/test.txn_update2

-- some more operations

-- commit the transaction
http://host:port/servlet/demo/test.txn_commit

utils.JdbcDBPrismConnectionCacheImpl formerly ResourceManager
Name  Values  Default Value  Explanation 
Manager.minconnections  A valid integer value from 0 to n  Minimal numbers of active connections to a database  
Name  Values  Default Value  Explanation 
Manager.maxconnections  A valid integer value from minconnections to n  20  Maximun numbers of active connections to a database  

oracle.JTADBPrismConnectionCacheImpl

Note This Connection Cache implementation has indepent parameters for every DAD definition defined into DAD section.

Name  Values  Default Value  Explanation 
Manager.dad.MinLimit  A valid integer value from 0 to MaxLimit  Minimal numbers of active connections for this dad.  
Name  Values  Default Value  Explanation 
Manager.dad.MaxLimit  A valid integer value from 0 to n  20  Maximal numbers of active connections for this dad.  
Name  Values  Default Value  Explanation 
Manager.dad.LoginTimeout  A valid integer value from 0 to n  60  How many seconds wait for adquiring a particular connection.  
Name  Values  Default Value  Explanation 
Manager.dad.CacheScheme  A valid cache scheme  FixedWait  OracleConnectionCacheImpl class supports three connection cache schemes. Dynamic In this scheme, you can create new pooled connections above and beyond the maximum limit, but each one is automatically closed and freed as soon as the logical connection instance that it provided is no longer in use. FixedNoWait In this scheme, the maximum limit cannot be exceeded Requests for connection when the maximum has already been reached will return an error page. FixedWait Same as the "fixed with no wait" scheme except that a request for a new connection will wait if the limit for the number of connection has been reached. In this case, the connection request waits until another client releases a connection.  

oracle.JndiDBPrismConnectionCacheImpl

Note This Connection Cache implementation provides a simple way to use JNDI datasources defined into [OC4J_HOME]/config/data-sources.xml file. DBPrism will try to lookup a DataSource defintion for every DAD defined into global.alias parameter.

NoteAbout parameters into DAD section

Name  Values  Default Value  Explanation 
dad.dbusername/dad.dbpassword  Any valid string for username and password  empty string  This parameter is unused by this Connection Cache implementation, but if you left it in blank DBPrism will try to connect in dynamic mode, that is DBPrism will prompt the username and password through a browser popup. In the other hand using dynamic mode DBPrism will force to the JNDI DataSources to work in dedication connection mode affecting the performance. To use username and password defined into JNDI Datasources fills dad.username and dad.password with any string values.  
Name  Values  Default Value  Explanation 
dad.connectString  Ignored  Ignored  DBPrism ignores this parameter due to its defined into the DataSource parameter.  

NoteThis implementation do not support Transactions, it is planed for production release.




DBPrism / DBPrism CMS Copyright © 1999/2002 - Marcelo F. Ochoa. All Rights Reserved.