Actually OpenJPA plug-in property takes care such that one can use mneomonics rather than implementation class name. Also the plug-in can configure the concrete implementation if it has bean style methods
So instead of <property name='openjpa.AuditManagerImpl" value="com.mypackage.MyAuditManager"/> One can write <property name="openjpa.AuditManager" value="trigger(query=false,table=true)"/> where "trigger" is a mnemonic for actual implementation class com.mypackage.MyAuditManager. And com.mypackage.MyAuditManager has bean style getter/setters setQuery(boolean) and setTable(boolean) OpenJPA's configuration/product derivation framework wires all these up during bootstrap such that com.mypackage.MyAuditManager" can be packaged in a separate jar (with possible dependency on some specific JDBC driver etc) *without* core OpenJPA libraries being aware of it. ----- Pinaki -- View this message in context: http://openjpa.208410.n2.nabble.com/JPA-for-portable-database-management-tp5134215p5153706.html Sent from the OpenJPA Users mailing list archive at Nabble.com.