Hello, I'm planning an application for Lotus Domino that (hopefully) will be ported to Tomcat/Struts too (MySQL/PostgreSQL). I'm trying to apply J2EE DAO Pattern to hide db specific stuff (testing the concept). J2EE DAO Pattern implies:
package dao; import java.sql.Connection; import dao.interfaces.*; import dao.mysql.*; public class MySQLDAOFactory extends DAOFactory { private static final String DRIVER = "org.gjt.mm.mysql.Driver"; private static final String DBURL = "jdbc:mysql://localhost:3306/somedb"; public static UnifiedConnection getConnection() { // how to access Struts connection pooling? } public Object1DAO getObject1DAO() { return new MySQLObject1DAO(); } public Object2DAO getObject2DAO() { return new MySQLObject2DAO(); } } How do I access Struts connection pooling from data access layer? Is it even possible to implement getConnection at dao level in Struts framework? In Struts action I would like to write: Business business = new Business(pk); // create business object and load data from db which calls the constructor: public Business(String pk) { DAOFactory factory = DAOFactory.getDAOFactory(DAOFactory.MySQL); this.dao = factory.getObject1DAO(); this.data = (Object1VO) dao.load(pk); } But mayby I'm forced to write something like: DAOFactory factory = DAOFactory.getDAOFactory(DAOFactory.MySQL); factory.setConnection( new JDBCConnection( struts_pooled_conn ) ); Business business = new Business(factory, pk); // does this brake layer skipping rule? Or should I create the connected DAO object in Struts action and pass it to the business object? Isn't it braking the layer skipping rule also? I want to keep my business objects as neutral as possible as they are reused in a completely different platform. Btw, I cannot use JDBC to access Lotus Domino (for reasons out of scope) so I must do something like UnifiedConnection that is being extended by different connection types (JDBCConnection, DominoConnection). I'm sorry if this has been asked and answered previously, I just couldn't find any suitable as Domino makes it more tricky I guess... Many TIA, Jan --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]