You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(94) |
Sep
(205) |
Oct
(139) |
Nov
(144) |
Dec
(252) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(44) |
Feb
(3) |
Mar
|
Apr
(32) |
May
(40) |
Jun
(24) |
Jul
(4) |
Aug
(20) |
Sep
(10) |
Oct
(61) |
Nov
(86) |
Dec
(79) |
2005 |
Jan
(82) |
Feb
(124) |
Mar
(9) |
Apr
(123) |
May
(125) |
Jun
(115) |
Jul
(35) |
Aug
(111) |
Sep
(62) |
Oct
(82) |
Nov
(77) |
Dec
(167) |
2006 |
Jan
(31) |
Feb
(29) |
Mar
(8) |
Apr
(16) |
May
(11) |
Jun
(104) |
Jul
(4) |
Aug
(115) |
Sep
(37) |
Oct
(2) |
Nov
(4) |
Dec
(6) |
2007 |
Jan
(2) |
Feb
(1) |
Mar
|
Apr
(2) |
May
(3) |
Jun
|
Jul
(3) |
Aug
(1) |
Sep
|
Oct
|
Nov
(2) |
Dec
|
2008 |
Jan
|
Feb
(3) |
Mar
(5) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(5) |
Sep
(1) |
Oct
(1) |
Nov
(4) |
Dec
(1) |
2009 |
Jan
|
Feb
|
Mar
|
Apr
(9) |
May
(1) |
Jun
(4) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2010 |
Jan
|
Feb
|
Mar
(5) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(3) |
Oct
|
Nov
|
Dec
|
From: Konstantin P. <ko...@us...> - 2006-06-21 19:36:09
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-qtags In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20753/plugin-qtags Added Files: pom.xml Log Message: started work on maven-2 build --- NEW FILE: pom.xml --- <?xml version="1.0" encoding="UTF-8"?> <project> <parent> <artifactId>xdoclet-plugins</artifactId> <groupId>xdoclet-plugins</groupId> <version>1.0.4-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>xdoclet-plugin-qtags</artifactId> <name>xdoclet-plugin-qtags</name> <build> <plugins> <plugin> <artifactId>maven2-xdoclet2-plugin</artifactId> <configuration> <configs> <config> <plugin>org.xdoclet.plugin.qtags.impl.QTagImplPlugin</plugin> <includes>**/Qtags*.java</includes> </config> <config> <plugin>org.xdoclet.plugin.qtags.impl.QTagImplPlugin</plugin> <includes>**/Qtags*.java</includes> </config> </configs> </configuration> <executions> </executions> </plugin> </plugins> </build> </project> |
From: Konstantin P. <ko...@us...> - 2006-06-21 19:36:01
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-qtags/src/test/java/org/xdoclet/plugin/qtags/impl In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20753/plugin-qtags/src/test/java/org/xdoclet/plugin/qtags/impl Modified Files: QTagImplPluginTestCase.java QTagLibraryPluginTestCase.java Log Message: started work on maven-2 build Index: QTagImplPluginTestCase.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-qtags/src/test/java/org/xdoclet/plugin/qtags/impl/QTagImplPluginTestCase.java,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** QTagImplPluginTestCase.java 31 May 2005 11:28:58 -0000 1.12 --- QTagImplPluginTestCase.java 21 Jun 2006 19:35:58 -0000 1.13 *************** *** 27,31 **** } ! protected URL getTestSource() throws IOException { return getResourceRelativeToThisPackage("test/FooBarTag.java"); } --- 27,31 ---- } ! protected URL getTestSource() { return getResourceRelativeToThisPackage("test/FooBarTag.java"); } Index: QTagLibraryPluginTestCase.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-qtags/src/test/java/org/xdoclet/plugin/qtags/impl/QTagLibraryPluginTestCase.java,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** QTagLibraryPluginTestCase.java 31 May 2005 11:28:58 -0000 1.10 --- QTagLibraryPluginTestCase.java 21 Jun 2006 19:35:58 -0000 1.11 *************** *** 6,11 **** package org.xdoclet.plugin.qtags.impl; - import java.io.IOException; - import java.net.URL; --- 6,9 ---- *************** *** 15,19 **** import org.generama.VelocityTemplateEngine; import org.generama.WriterMapper; - import org.xdoclet.AbstractJavaGeneratingPluginTestCase; --- 13,16 ---- *************** *** 23,31 **** */ public class QTagLibraryPluginTestCase extends AbstractJavaGeneratingPluginTestCase { ! protected URL getExpected() throws IOException { return getResourceRelativeToThisPackage("test/TagLibrary.java"); } ! protected URL getTestSource() throws IOException { return getResourceRelativeToThisPackage("test/FooBarTag.java"); } --- 20,28 ---- */ public class QTagLibraryPluginTestCase extends AbstractJavaGeneratingPluginTestCase { ! protected URL getExpected() { return getResourceRelativeToThisPackage("test/TagLibrary.java"); } ! protected URL getTestSource(){ return getResourceRelativeToThisPackage("test/FooBarTag.java"); } |
From: Konstantin P. <ko...@us...> - 2006-06-14 19:59:41
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-hibernate/src/main/java/org/xdoclet/plugin/hibernate In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv18337/plugin-hibernate/src/main/java/org/xdoclet/plugin/hibernate Modified Files: Class.jelly Added Files: Query.jelly Log Message: fixed XDP-178 , refactored queries to separate jelly template --- NEW FILE: Query.jelly --- <?xml version="1.0" encoding="UTF-8"?> <j:jelly xmlns:j="jelly:core"> <j:forEach var="query" items="${queryHolder.getTagsByName('hibernate.query',true)}"> <query name="${query.name_}" cacheable="${query.cacheable}" cache-region="${query.cacheRegion}"> <j:if test="${(query.representation != null) and (query.representation != '')}"> <representation name="${query.representation}"/> </j:if> <![CDATA[${query.query}]]> </query> </j:forEach> </j:jelly> Index: Class.jelly =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-hibernate/src/main/java/org/xdoclet/plugin/hibernate/Class.jelly,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** Class.jelly 17 Sep 2005 15:57:41 -0000 1.24 --- Class.jelly 14 Jun 2006 19:58:39 -0000 1.25 *************** *** 160,186 **** </class> ! <!-- queries todo: refactor it --> ! <j:forEach var="query" items="${metadata.getTagsByName('hibernate.query',true)}"> ! <query name="${query.name_}" cacheable="${query.cacheable}" cache-region="${query.cacheRegion}"> ! <j:if test="${!empty(query.representation)}"> ! <representation name="${query.representation}"/> ! </j:if> ! <![CDATA[${query.query}]]> ! </query> ! </j:forEach> ! <j:forEach var="subclass" items="${plugin.getSubclasses(metadata,'hibernate.subclass')}"> ! <j:forEach var="query" items="${subclass.getTagsByName('hibernate.query',false)}"> ! <query name="${query.name_}" cacheable="${query.cacheable}" cache-region="${query.cacheRegion}"><![CDATA[${query.query}]]></query> ! </j:forEach> </j:forEach> ! <j:forEach var="subclass" items="${plugin.getSubclasses(metadata,'hibernate.joined-subclass')}"> ! <j:forEach var="query" items="${subclass.getTagsByName('hibernate.query',false)}"> ! <query name="${query.name_}" cacheable="${query.cacheable}" cache-region="${query.cacheRegion}"><![CDATA[${query.query}]]></query> ! </j:forEach> </j:forEach> ! <j:forEach var="subclass" items="${plugin.getSubclasses(metadata,'hibernate.union-subclass')}"> ! <j:forEach var="query" items="${subclass.getTagsByName('hibernate.query',false)}"> ! <query name="${query.name_}" cacheable="${query.cacheable}" cache-region="${query.cacheRegion}"><![CDATA[${query.query}]]></query> ! </j:forEach> </j:forEach> --- 160,177 ---- </class> ! <!-- basic queries --> ! <j:set var="queryHolder" value="${metadata}"/> ! <j:import uri="/Query.jelly" inherit="true"/> ! <!-- subclass queries --> ! <j:forEach var="queryHolder" items="${plugin.getSubclasses(metadata,'hibernate.subclass')}"> ! <j:import uri="/Query.jelly" inherit="true"/> </j:forEach> ! <!-- joined subclass queries --> ! <j:forEach var="queryHolder" items="${plugin.getSubclasses(metadata,'hibernate.joined-subclass')}"> ! <j:import uri="/Query.jelly" inherit="true"/> </j:forEach> ! <!-- union subclass queries --> ! <j:forEach var="queryHolder" items="${plugin.getSubclasses(metadata,'hibernate.union-subclass')}"> ! <j:import uri="/Query.jelly" inherit="true"/> </j:forEach> |
From: Ive H. <hel...@us...> - 2006-06-12 13:47:28
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-ejb/src/main/java/org/xdoclet/plugin/ejb/entity In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv30382/plugin-ejb/src/main/java/org/xdoclet/plugin/ejb/entity Modified Files: ValueObjectPlugin.java Log Message: Lazy load beanResolver & relationManager to ensure all TagLibraries are registered beforehand Index: ValueObjectPlugin.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-ejb/src/main/java/org/xdoclet/plugin/ejb/entity/ValueObjectPlugin.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** ValueObjectPlugin.java 12 Jun 2006 06:52:18 -0000 1.4 --- ValueObjectPlugin.java 12 Jun 2006 13:47:25 -0000 1.5 *************** *** 88,96 **** * Resolver of beans by name */ ! private final EjbBeanResolver beanResolver; /** * Relation manager */ ! private final RelationManager relationManager; /** Cache for value object resolver */ --- 88,97 ---- * Resolver of beans by name */ ! private EjbBeanResolver beanResolver; ! /** * Relation manager */ ! private RelationManager relationManager; /** Cache for value object resolver */ *************** *** 116,121 **** setFilereplace("ValueObject"); super.setMultioutput(true); - beanResolver = ejbUtils.createEjbBeanResolver(getOriginalMetadata()); - relationManager = ejbUtils.createRelationManager(getOriginalMetadata()); //try { --- 117,120 ---- *************** *** 1092,1096 **** // it's treatment as such, or should be ignored // Maybe just check if is a EjbUtils.METADATA_METHOD_RELATION_FIELD ! Relation relation = relationManager.getRelationFor(method, javaClass); if ((relation != null) || --- 1091,1095 ---- // it's treatment as such, or should be ignored // Maybe just check if is a EjbUtils.METADATA_METHOD_RELATION_FIELD ! Relation relation = getRelationManager().getRelationFor(method, javaClass); if ((relation != null) || *************** *** 1124,1128 **** String relationEjbName = relation.getRightEJBName(); ! relationEjb = beanResolver.findEjbByName(relationEjbName); collectionType = relation.getLeftMethod().getReturns(); } else { --- 1123,1127 ---- String relationEjbName = relation.getRightEJBName(); ! relationEjb = getBeanResolver().findEjbByName(relationEjbName); collectionType = relation.getLeftMethod().getReturns(); } else { *************** *** 1510,1512 **** --- 1509,1534 ---- } } + + /** + * Returns the beanResolver, lazily loaded to allow all plugins to register + * their tags before the beanResolver is created for the first time. + */ + public final EjbBeanResolver getBeanResolver() { + if (beanResolver == null) { + beanResolver = ejbUtils.createEjbBeanResolver(getOriginalMetadata()); + } + return beanResolver; + } + + /** + * Returns the relationManager, lazily loaded to allow all plugins to register + * their tags before the relationManager is created for the first time. + */ + public final RelationManager getRelationManager() { + if (relationManager == null) { + relationManager = ejbUtils.createRelationManager(getOriginalMetadata()); + } + return relationManager; + } + } |
From: Ive H. <hel...@us...> - 2006-06-12 11:26:07
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-ejb/src/main/java/org/xdoclet/plugin/ejb/qtags In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv19478/plugin-ejb/src/main/java/org/xdoclet/plugin/ejb/qtags Modified Files: EjbFinderTag.java Log Message: Added max-elements attribute Index: EjbFinderTag.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-ejb/src/main/java/org/xdoclet/plugin/ejb/qtags/EjbFinderTag.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** EjbFinderTag.java 7 Sep 2005 01:13:08 -0000 1.8 --- EjbFinderTag.java 12 Jun 2006 11:26:04 -0000 1.9 *************** *** 73,75 **** --- 73,83 ---- */ String getViewType(); + + /** + * Returns the maximum number of elements that this finder should + * return. + * + * Note that this is only used by container specific plugins. + */ + Integer getMaxElements(); } \ No newline at end of file |
From: Ive H. <hel...@us...> - 2006-06-12 09:03:06
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic/ejb In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv15940/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic/ejb Modified Files: WeblogicEjbUtils.java WeblogicCmpUtils.java Log Message: Removed trace-info Index: WeblogicCmpUtils.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic/ejb/WeblogicCmpUtils.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** WeblogicCmpUtils.java 12 Jun 2006 06:54:50 -0000 1.1 --- WeblogicCmpUtils.java 12 Jun 2006 09:03:02 -0000 1.2 *************** *** 53,60 **** */ public Relation[] getRelationships(Collection metadata) { - System.out.println( "getRelationships called" ); - long start = System.currentTimeMillis(); RelationManager relationManager = ejbUtils.createRelationManager(metadata); - System.out.println( " .. got relationMgr (" + (System.currentTimeMillis() - start) + ")" ); Relation[] relations = relationManager.getRelations(); --- 53,57 ---- *************** *** 62,66 **** relations[i] = ensureColumnMapTagsRight(relations[i]); } - System.out.println( " .. inversed" ); return relations; --- 59,62 ---- *************** *** 120,135 **** } - // public String getKeyColumn(Relation relation, WeblogicColumnMapTag tag) { - // String keyColumn = tag.getKeyColumn(); - // if (keyColumn == null) { - // throw new Error("Guessing the key column not implemented yet"); - // } - // return keyColumn; - // } - // - // public String getForeignKeyColumn(Relation relation, WeblogicColumnMapTag tag) { - // String keyColumn = tag.getForeignKeyColumn(); - // } - /** * Returns true if this Relation represents a many-to-many relationship --- 116,119 ---- *************** *** 138,148 **** */ public boolean isMany2Many(Relation relation) { boolean many2many = relation.isLeftMany() && relation.isRightMany(); ! log.debug("isMany2Many for relation " + relation.getName() + " returns " + many2many); return many2many; } protected DocletTag[] getAllColumnMapsFor(Relation relation, boolean left) { ! log.debug("getAllColumnMapsFor " + relation); DocletTag[] result; --- 122,134 ---- */ public boolean isMany2Many(Relation relation) { + boolean db = log.isDebugEnabled(); boolean many2many = relation.isLeftMany() && relation.isRightMany(); ! if (db) log.debug("isMany2Many for relation " + relation.getName() + " returns " + many2many); return many2many; } protected DocletTag[] getAllColumnMapsFor(Relation relation, boolean left) { ! boolean db = log.isDebugEnabled(); ! if (db) log.debug("getAllColumnMapsFor " + relation); DocletTag[] result; Index: WeblogicEjbUtils.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic/ejb/WeblogicEjbUtils.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** WeblogicEjbUtils.java 12 Jun 2006 06:54:50 -0000 1.1 --- WeblogicEjbUtils.java 12 Jun 2006 09:03:02 -0000 1.2 *************** *** 1,6 **** package org.xdoclet.plugin.weblogic.ejb; - import java.util.Collection; - import org.xdoclet.plugin.ejb.EjbConfig; import org.xdoclet.plugin.ejb.EjbUtils; --- 1,4 ---- *************** *** 41,80 **** } - //TODO: delete all below - - public Collection getCMPBeans(Collection metadata) { - System.out.println("getCMPBeans called"); - Collection collection = super.getCMPBeans(metadata); - System.out.println("getCMPBeans done"); - return collection; - } - - public Collection getCMPFields(JavaClass clazz) { - System.out.print("getCMPFields called for " + clazz.getName()); - Collection collection = super.getCMPFields(clazz); - System.out.println(" .. done"); - return collection; - } - - public boolean shouldGenerate(Object metadata) { - System.out.print("shouldGenerate called for " + ((JavaClass)metadata).getName()); - boolean result = super.shouldGenerate(metadata); - if (result) - System.out.println(" .. done"); - else - System.out.println("\r\n ****************************** FALSE !!!"); - return result; - } - - public String getEjbName(JavaClass clazz) { - System.out.print("getEjbName called for " + clazz.getName()); - String x = super.getEjbName(clazz); - System.out.println(" .. done"); - return x; - } - - - public void sayHello(int i) { - System.out.println("hello " + i); - } } --- 39,41 ---- |
From: Ive H. <hel...@us...> - 2006-06-12 07:03:39
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/merge In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv17126/testapp-ejb/src/main/merge Added Files: weblogic-cmp-rdbms-relationships.xml weblogic-security-role-assignment.xml weblogic-run-as-role-assignment.xml weblogic-enterprise-beans.xml weblogic-cmp-rdbms-beans.xml Log Message: To test merging weblogic specific files --- NEW FILE: weblogic-run-as-role-assignment.xml --- <run-as-role-assignment> <role-name>test</role-name> <run-as-principal-name>test</run-as-principal-name> </run-as-role-assignment> --- NEW FILE: weblogic-cmp-rdbms-relationships.xml --- <weblogic-rdbms-relation> <relation-name>test</relation-name> <weblogic-relationship-role> <relationship-role-name>test</relationship-role-name> <relationship-role-map> <column-map> <foreign-key-column>TEST_FK_COL</foreign-key-column> <key-column>TEST_PK_COL</key-column> </column-map> </relationship-role-map> </weblogic-relationship-role> </weblogic-rdbms-relation> --- NEW FILE: weblogic-enterprise-beans.xml --- <weblogic-enterprise-bean> <ejb-name>Test</ejb-name> <stateless-session-descriptor /> <jndi-name>ndi.TestRemote</jndi-name> </weblogic-enterprise-bean> --- NEW FILE: weblogic-security-role-assignment.xml --- <security-role-assignment> <role-name>test</role-name> <externally-defined/> </security-role-assignment> --- NEW FILE: weblogic-cmp-rdbms-beans.xml --- <weblogic-rdbms-bean> <ejb-name>Test</ejb-name> <data-source-jndi-name>testapp-ejb.datasource</data-source-jndi-name> <table-map> <table-name>ACCOUNT_T</table-name> </table-map> </weblogic-rdbms-bean> |
From: Ive H. <hel...@us...> - 2006-06-12 07:03:14
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/beans In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv17016/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/beans Modified Files: TransferReceiverBean.java BaseClientBean.java AccountBean.java ClientBean.java CompanyClientBean.java TransferBean.java Log Message: Added some WebLogic specific tags & added some missing attributes (required to create weblogic xml's) to EJB-tags Index: BaseClientBean.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/beans/BaseClientBean.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** BaseClientBean.java 13 Dec 2005 03:55:38 -0000 1.2 --- BaseClientBean.java 12 Jun 2006 07:03:08 -0000 1.3 *************** *** 14,21 **** * XDoclet plugin. Vendor-specific tags should be added herein. * ! * @ejb.bean name="xxx" generate="false" * @ejb.pk-xxx implements="org.xdoclet.testapp.ejb.interfaces.Dummy" * * @author Diogo Quintela * @version $Revision$ */ --- 14,30 ---- * XDoclet plugin. Vendor-specific tags should be added herein. * ! * @ejb.bean name="xxx" generate="false" jndi-name="jndi.ClientRemote" local-jndi-name="jndi.ClientLocal" * @ejb.pk-xxx implements="org.xdoclet.testapp.ejb.interfaces.Dummy" * + * @weblogic.cache + * max-beans-in-cache = "1" + * max-queries-in-cache = "2" + * idle-timeout-seconds = "3" + * read-timeout-seconds = "4" + * concurrency-strategy="A" + * cache-between-transactions = "true" + * * @author Diogo Quintela + * @author Ive Hellemans * @version $Revision$ */ *************** *** 25,28 **** --- 34,41 ---- * @ejb.relation name="all-accounts" role-name="admin" target-ejb="Account" * + * @weblogic.column-map + * foreign-key-column="FK_COL" + * key-column="PK_COL" + * * @return Collection of {@link AccountLocal} */ *************** *** 31,35 **** /** * @ejb.interface-method view-type="both" ! * @ejb.persistence-field * @ejb.pk-field * @return the account number --- 44,48 ---- /** * @ejb.interface-method view-type="both" ! * @ejb.persistence-field column-name="IDENTITY_NUMBER" * @ejb.pk-field * @return the account number Index: TransferReceiverBean.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/beans/TransferReceiverBean.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** TransferReceiverBean.java 3 May 2006 19:18:38 -0000 1.5 --- TransferReceiverBean.java 12 Jun 2006 07:03:08 -0000 1.6 *************** *** 15,23 **** * * @author Diogo Quintela * * @ejb.bean name="TransferReceiverBean" type="Stateless" transaction-type="Container" message-selector="abc" * acknowledge-mode="Auto-acknowledge" destination-type="javax.jms.Queue" * destination-jndi-name="dest/jndi/queue" connection-factory-jndi-name="jndi/conn/factory" ! * subscription-durability="NonDurable" * * @ejb.activation-config-property name="dumbName1" value="dumbValue1" --- 15,24 ---- * * @author Diogo Quintela + * @author Ive Hellemans * * @ejb.bean name="TransferReceiverBean" type="Stateless" transaction-type="Container" message-selector="abc" * acknowledge-mode="Auto-acknowledge" destination-type="javax.jms.Queue" * destination-jndi-name="dest/jndi/queue" connection-factory-jndi-name="jndi/conn/factory" ! * subscription-durability="NonDurable" jndi-name="jndi.TransferReceiver" * * @ejb.activation-config-property name="dumbName1" value="dumbValue1" Index: ClientBean.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/beans/ClientBean.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** ClientBean.java 7 Jun 2006 01:44:13 -0000 1.4 --- ClientBean.java 12 Jun 2006 07:03:08 -0000 1.5 *************** *** 18,23 **** * @ejb.interface local-pattern="{0}LocalIFace" pattern="{0}IFace" * @ejb.transaction type="Supports" ! * * @author Diogo Quintela * @version $Revision$ */ --- 18,25 ---- * @ejb.interface local-pattern="{0}LocalIFace" pattern="{0}IFace" * @ejb.transaction type="Supports" ! * @ejb.persistence table-name="CLIENT_T" ! * * @author Diogo Quintela + * @author Ive Hellemans * @version $Revision$ */ *************** *** 26,29 **** --- 28,33 ---- * @ejb.interface-method view-type="local" * @ejb.relation name="user-accounts" role-name="user" + * + * @weblogic.column-map foreign-key-column="USER_FK" key-column="IDENTITY_NUMBER" * * @return Collection of {@link AccountLocal} Index: TransferBean.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/beans/TransferBean.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** TransferBean.java 11 Oct 2005 09:22:26 -0000 1.2 --- TransferBean.java 12 Jun 2006 07:03:08 -0000 1.3 *************** *** 18,27 **** * XDoclet plugin. Vendor-specific tags should be added herein. * ! * @ejb.bean name="Transfer" view-type="all" * @ejb.interface generate="local,remote,service-endpoint" * * @author Diogo Quintela */ public class TransferBean implements SessionBean { /** * @ejb.interface-method --- 18,43 ---- * XDoclet plugin. Vendor-specific tags should be added herein. * ! * @ejb.bean name="Transfer" view-type="all" jndi-name="jndi.TransferRemote" local-jndi-name="jndi.TransferLocal" * @ejb.interface generate="local,remote,service-endpoint" * + * @weblogic.enable-call-by-reference True + * @weblogic.pool max-beans-in-free-pool = 10 initial-beans-in-free-pool = 10 + * @weblogic.clustering + * home-is-clusterable = True + * home-load-algorithm = x + * home-call-router-class-name = y + * use-serverside-stubs = false + * stateless-bean-is-clusterable = true + * stateless-bean-load-algorithm = a + * stateless-bean-call-router-class-name = b + * @weblogic.resource-description + * res-ref-name = "jdbc/datasource" + * jndi-name = "testapp-ejb.datasource" + * * @author Diogo Quintela + * @author Ive Hellemans */ public class TransferBean implements SessionBean { + /** * @ejb.interface-method Index: CompanyClientBean.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/beans/CompanyClientBean.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** CompanyClientBean.java 13 Dec 2005 03:55:38 -0000 1.2 --- CompanyClientBean.java 12 Jun 2006 07:03:08 -0000 1.3 *************** *** 15,19 **** * XDoclet plugin. Vendor-specific tags should be added herein. * ! * @ejb.bean name="CompanyClient" generate="true" use-soft-locking="true" * @ejb.value-object name="Normal" * @ejb.value-object name="Medium" match="medium" --- 15,19 ---- * XDoclet plugin. Vendor-specific tags should be added herein. * ! * @ejb.bean name="CompanyClient" generate="true" use-soft-locking="true" jndi-name="jndi.CompanyClientRemote" local-jndi-name="jndi.CompanyClientLocal" * @ejb.value-object name="Normal" * @ejb.value-object name="Medium" match="medium" *************** *** 22,26 **** --- 22,31 ---- * @ejb.value-object name="Light" match="light" synchronization="none" * + * @weblogic.lock-order 1 + * @weblogic.instance-lock-order AccessOrder + * @weblogic.use-select-for-update true + * * @author Diogo Quintela + * @author Ive Hellemans * @version $Revision$ */ *************** *** 44,47 **** --- 49,55 ---- * @ejb.value-object-field match="mediumStrict" aggregate="org.xdoclet.testapp.ejb.util.AccountValueObject" aggregate-name="myAggrName" * @ejb.value-object-field match="mediumFullClone" aggregate="org.xdoclet.testapp.ejb.util.AccountValueObject" aggregate-name="myAggrName" + * + * @weblogic.relation group-name="groupA" + * @weblogic.column-map foreign-key-column="NUMBER_FK" key-column="NUMBER" * * @return Collection of {@link AccountLocal} Index: AccountBean.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/beans/AccountBean.java,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** AccountBean.java 7 Jun 2006 01:44:13 -0000 1.13 --- AccountBean.java 12 Jun 2006 07:03:08 -0000 1.14 *************** *** 13,19 **** --- 13,21 ---- * @author Aslak Hellesøy * @author Diogo Quintela + * @author Ive Hellemans * @version $Revision$ * * @ejb.bean generate="true" name="Account" type="CMP" use-soft-locking="true" primkey-field="number" + * jndi-name="jndi.AccountRemote" local-jndi-name="jndi.AccountLocal" * * @ejb.pk-removed class="com.abc.AccountPK" pattern="Test{0}TestPK" package="com.my.test.package" *************** *** 22,26 **** * @ejb.finder view-type="local" description="finderDesc1" signature="java.util.Collection findAll()" * unchecked="true" role-names="myRole1" query="my EJBQL 1" result-type-mapping="Local" ! * transaction-type="Supports" method-intf="LocalHome" * @ejb.finder view-type="remote" signature="java.util.Collection findAll(int[])" unchecked="false" * role-names="myRole2" query="my EJBQL 2" result-type-mapping="Remote" transaction-type="Required" --- 24,28 ---- * @ejb.finder view-type="local" description="finderDesc1" signature="java.util.Collection findAll()" * unchecked="true" role-names="myRole1" query="my EJBQL 1" result-type-mapping="Local" ! * transaction-type="Supports" method-intf="LocalHome" max-elements="100" * @ejb.finder view-type="remote" signature="java.util.Collection findAll(int[])" unchecked="false" * role-names="myRole2" query="my EJBQL 2" result-type-mapping="Remote" transaction-type="Required" *************** *** 28,31 **** --- 30,34 ---- * @ejb.finder view-type="both" description="finderDesc3" * signature="java.util.Collection findOther(java.lang.String param1,java.lang.Integer param2)" + * query="SELECT OBJECT(o) FROM Account o WHERE o.param1 = ?1 and o.param2 = ?2 and o.id <> 5" * unchecked="true" role-names="myRole3" * @ejb.finder view-type="both" description="findWithHighestBalance" signature="Object findWithHighestBalance()" *************** *** 35,40 **** * * @ejb.interface extends="org.xdoclet.testapp.ejb.interfaces.Dummy" ! * * @ejb.value-object name="Account" */ public abstract class AccountBean implements EntityBean { --- 38,65 ---- * * @ejb.interface extends="org.xdoclet.testapp.ejb.interfaces.Dummy" ! * ! * @ejb.persistence table-name="ACCOUNT_T" ! * * @ejb.value-object name="Account" + * + * @weblogic.cache-ref + * cache-name = "A" + * idle-timeout-seconds = "1" + * read-timeout-seconds = "2" + * concurrency-strategy="B" + * cache-between-transactions = "true" + * estimated-bean-size = 3 + * @weblogic.clustering + * home-is-clusterable = true + * home-load-algorithm = x + * home-call-router-class-name = y + * use-serverside-stubs = false + * @weblogic.automatic-key-generation + * generator-type="ORACLE" + * generator-name="MY_SEQ" + * key-cache-size="1" + * @weblogic.enable-dynamic-queries + * @weblogic.data-source-name testapp-ejb.datasource + * @weblogic.delay-database-insert-until ejbPostCreate */ public abstract class AccountBean implements EntityBean { *************** *** 45,48 **** --- 70,76 ---- * @ejb.permission role-names="admin" view-type="both" * + * @weblogic.relation join-table-name = "USER_ACCOUNTS" + * @weblogic.column-map foreign-key-column="ACCOUNT_FK" key-column="NUMBER" + * * @return Collection of {@link ClientLocal} */ *************** *** 51,55 **** /** * @ejb.interface-method view-type="both" ! * @ejb.persistence-field * @ejb.permission role-names="user-role" method-intf="Remote" * --- 79,83 ---- /** * @ejb.interface-method view-type="both" ! * @ejb.persistence-field column-name="NUMBER_COL" * @ejb.permission role-names="user-role" method-intf="Remote" * *************** *** 63,67 **** * * @ejb.interface-method view-type="both" ! * @ejb.persistence-field * * @return the account type --- 91,95 ---- * * @ejb.interface-method view-type="both" ! * @ejb.persistence-field column-name="TYPE_COL" * * @return the account type |
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/interfaces In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv16475/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/interfaces Modified Files: AccountLocalHome.java TransferRemoteHome.java AccountRemoteHome.java TransferLocalHome.java Log Message: Changed jndi-name Index: AccountLocalHome.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/interfaces/AccountLocalHome.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** AccountLocalHome.java 24 Jan 2006 20:46:35 -0000 1.2 --- AccountLocalHome.java 12 Jun 2006 07:02:13 -0000 1.3 *************** *** 17,21 **** extends javax.ejb.EJBLocalHome { public static final String COMP_NAME="java:comp/env/ejb/AccountLocal"; ! public static final String JNDI_NAME="AccountLocal"; org.xdoclet.testapp.ejb.interfaces.AccountLocal create(java.lang.String pk) throws javax.ejb.CreateException; --- 17,21 ---- extends javax.ejb.EJBLocalHome { public static final String COMP_NAME="java:comp/env/ejb/AccountLocal"; ! public static final String JNDI_NAME="jndi.AccountLocal"; org.xdoclet.testapp.ejb.interfaces.AccountLocal create(java.lang.String pk) throws javax.ejb.CreateException; Index: TransferRemoteHome.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/interfaces/TransferRemoteHome.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** TransferRemoteHome.java 24 Jan 2006 20:46:35 -0000 1.2 --- TransferRemoteHome.java 12 Jun 2006 07:02:13 -0000 1.3 *************** *** 17,21 **** extends javax.ejb.EJBHome { public static final String COMP_NAME="java:comp/env/ejb/TransferRemote"; ! public static final String JNDI_NAME="TransferRemote"; org.xdoclet.testapp.ejb.interfaces.TransferRemote create() throws javax.ejb.CreateException, java.rmi.RemoteException; --- 17,21 ---- extends javax.ejb.EJBHome { public static final String COMP_NAME="java:comp/env/ejb/TransferRemote"; ! public static final String JNDI_NAME="jndi.TransferRemote"; org.xdoclet.testapp.ejb.interfaces.TransferRemote create() throws javax.ejb.CreateException, java.rmi.RemoteException; Index: TransferLocalHome.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/interfaces/TransferLocalHome.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** TransferLocalHome.java 24 Jan 2006 20:46:35 -0000 1.2 --- TransferLocalHome.java 12 Jun 2006 07:02:13 -0000 1.3 *************** *** 16,20 **** public interface TransferLocalHome extends javax.ejb.EJBLocalHome { public static final String COMP_NAME = "java:comp/env/ejb/TransferLocal"; ! public static final String JNDI_NAME = "TransferLocal"; org.xdoclet.testapp.ejb.interfaces.TransferLocal create() throws javax.ejb.CreateException; --- 16,20 ---- public interface TransferLocalHome extends javax.ejb.EJBLocalHome { public static final String COMP_NAME = "java:comp/env/ejb/TransferLocal"; ! public static final String JNDI_NAME = "jndi.TransferLocal"; org.xdoclet.testapp.ejb.interfaces.TransferLocal create() throws javax.ejb.CreateException; Index: AccountRemoteHome.java =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/src/main/java/org/xdoclet/testapp/ejb/interfaces/AccountRemoteHome.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** AccountRemoteHome.java 24 Jan 2006 20:46:35 -0000 1.2 --- AccountRemoteHome.java 12 Jun 2006 07:02:13 -0000 1.3 *************** *** 17,21 **** extends javax.ejb.EJBHome { public static final String COMP_NAME="java:comp/env/ejb/AccountRemote"; ! public static final String JNDI_NAME="AccountRemote"; org.xdoclet.testapp.ejb.interfaces.AccountRemote create(java.lang.String pk) throws javax.ejb.CreateException, java.rmi.RemoteException; --- 17,21 ---- extends javax.ejb.EJBHome { public static final String COMP_NAME="java:comp/env/ejb/AccountRemote"; ! public static final String JNDI_NAME="jndi.AccountRemote"; org.xdoclet.testapp.ejb.interfaces.AccountRemote create(java.lang.String pk) throws javax.ejb.CreateException, java.rmi.RemoteException; |
From: Ive H. <hel...@us...> - 2006-06-12 07:00:59
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv15500/testapp-ejb Modified Files: maven.xml Log Message: Added weblogic plugins & verbose option Index: maven.xml =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/maven.xml,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** maven.xml 7 Jun 2006 01:44:13 -0000 1.15 --- maven.xml 12 Jun 2006 07:00:56 -0000 1.16 *************** *** 45,82 **** --- 45,107 ---- <component classname="org.xdoclet.plugin.ejb.interfaces.RemoteInterfacePlugin" + verbose="true" destdir="${basedir}/target/java" /> <component classname="org.xdoclet.plugin.ejb.interfaces.RemoteHomeInterfacePlugin" + verbose="true" force="true" destdir="${basedir}/target/java" /> <component classname="org.xdoclet.plugin.ejb.interfaces.LocalInterfacePlugin" + verbose="true" force="true" destdir="${basedir}/target/java" /> <component classname="org.xdoclet.plugin.ejb.interfaces.LocalHomeInterfacePlugin" + verbose="true" force="true" destdir="${basedir}/target/java" /> <component classname="org.xdoclet.plugin.ejb.interfaces.ServiceEndpointPlugin" + verbose="true" force="true" destdir="${basedir}/target/java" /> <component classname="org.xdoclet.plugin.ejb.entity.LookupObjectPlugin" + verbose="true" force="true" destdir="${basedir}/target/java" /> <component classname="org.xdoclet.plugin.ejb.entity.PrimaryKeyClassPlugin" + verbose="true" force="true" destdir="${basedir}/target/java" /> <component classname="org.xdoclet.plugin.ejb.entity.ValueObjectPlugin" + verbose="true" force="true" destdir="${basedir}/target/java" /> <component classname="org.xdoclet.plugin.ejb.descriptor.EjbJarXmlPlugin" + verbose="true" force="true" destdir="${basedir}/target/classes/META-INF" /> + <component + classname="org.xdoclet.plugin.weblogic.ejb.descriptor.WeblogicEjbJarXmlPlugin" + description="A Description" + verbose="true" force="true" + mergeDir="${basedir}/src/main/merge" + destdir="${basedir}/target/classes/META-INF" + /> + <component + classname="org.xdoclet.plugin.weblogic.ejb.descriptor.WeblogicCmpRdbmsJarXmlPlugin" + description="A Description" + dataSourceJndiName="default.jndi.name" + databaseType="ORACLE" + verbose="true" force="true" + mergeDir="${basedir}/src/main/merge" + destdir="${basedir}/target/classes/META-INF" + /> </xdoclet> </goal> |
From: Ive H. <hel...@us...> - 2006-06-12 07:00:38
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv15435/testapp-ejb Modified Files: project.xml Log Message: Added plugin-weblogic dependency Index: project.xml =================================================================== RCS file: /cvsroot/xdoclet-plugins/xdoclet-plugins/testapp-ejb/project.xml,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** project.xml 9 Dec 2005 00:35:18 -0000 1.11 --- project.xml 12 Jun 2006 07:00:36 -0000 1.12 *************** *** 24,27 **** --- 24,33 ---- <version>${pom.currentVersion}</version> </dependency> + + <dependency> + <groupId>${pom.groupId}</groupId> + <artifactId>xdoclet-plugin-weblogic</artifactId> + <version>${pom.currentVersion}</version> + </dependency> </dependencies> |
From: Ive H. <hel...@us...> - 2006-06-12 06:54:59
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic/ejb/descriptor In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12277/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic/ejb/descriptor Added Files: WeblogicEjbJarXmlPlugin.java WeblogicCmpRdbmsJarXmlPlugin.java WeblogicCmpRdbmsJarXmlPlugin.jelly WeblogicEjbJarXmlPlugin.jelly Log Message: Initial Revision --- NEW FILE: WeblogicEjbJarXmlPlugin.java --- package org.xdoclet.plugin.weblogic.ejb.descriptor; import java.io.File; import java.text.MessageFormat; import java.util.HashMap; import java.util.Map; import org.generama.JellyTemplateEngine; import org.generama.QDoxCapableMetadataProvider; import org.generama.WriterMapper; import org.generama.defaults.XMLOutputValidator; import org.xdoclet.plugin.ejb.AbstractEjbJarXmlPlugin; import org.xdoclet.plugin.ejb.EjbConfig; import org.xdoclet.plugin.ejb.EjbRuntime; import org.xdoclet.plugin.ejb.EjbUtils; import org.xdoclet.plugin.ejb.interfaces.LocalHomeInterfacePlugin; import org.xdoclet.plugin.ejb.interfaces.RemoteHomeInterfacePlugin; import org.xdoclet.plugin.ejb.util.QDoxCachedMetadataProvider; import org.xdoclet.plugin.weblogic.WebLogicVersion; import org.xdoclet.plugin.weblogic.ejb.WeblogicEjbUtils; import org.xdoclet.plugin.weblogic.qtags.TagLibrary; import com.thoughtworks.qdox.model.AbstractJavaEntity; import com.thoughtworks.qdox.model.JavaClass; /** * @author Ive Hellemans * @version $Revision$ */ public class WeblogicEjbJarXmlPlugin extends AbstractEjbJarXmlPlugin { /** Description to be added to the file. */ private String description = "Generated by XDoclet2"; /** Default name for generated file */ private String fileName = "weblogic-ejb-jar.xml"; private WeblogicEjbUtils ejbUtils = null; public WeblogicEjbJarXmlPlugin(JellyTemplateEngine jellyTemplateEngine, //QDoxCachedMetadataProvider metadataProvider, WriterMapper writerMapper, EjbConfig config) { super(jellyTemplateEngine, /* metadataProvider, */ writerMapper, config); //Disable multi-output super.setMultioutput(false); this.ejbUtils = new WeblogicEjbUtils(config); //Register tags new TagLibrary(metadataProvider); //Register schemas Map schemas = WebLogicVersion.fillEntityResolverMap(new HashMap()); setOutputValidator(new XMLOutputValidator(schemas)); } protected void populateContextMap(Map map) { super.populateContextMap(map); map.put("ejbUtil", ejbUtils); map.put("version", getWeblogicVersion()); } /** * Don't let multioutput be changed */ public void setMultioutput(boolean multioutput) { throw new RuntimeException("Can't set multioutput for plugin"); } /** * Setter for fileName property * * @param fileName The value for the property * * @throws NullPointerException if fileName == null */ public void setFilename(String fileName) { if (fileName == null) { throw new NullPointerException(); } this.fileName = fileName; } /** * Getter or the fileName property. */ public String getFileName() { return this.fileName; } /** * Utility method called from jelly script to resolve a mergeFile reference * * @param mergeFile The mergeFile to look for * @param clazz JavaClass name for name expansion * * @return A File for mergeFile */ public File getMergeFile(String mergeFile, JavaClass clazz) { if (true) throw new RuntimeException("wordt toch aangeroepen :-)"); //TODO remove return getMergeFile(expandFileName(mergeFile, clazz)); } public String expandFileName(String mergeFile, JavaClass clazz) { return MessageFormat.format(mergeFile, new String[] {clazz.getName()}); } public boolean shouldGenerate(Object metadata) { return ejbUtils.shouldGenerate((JavaClass)metadata); } public WebLogicVersion getWeblogicVersion() { return WebLogicVersion.get(WebLogicVersion.WEBLOGIC_9_1_EJB); } /** * Overrides pluggin start. Used for late setting of generated file name, * in case the user whishes to change it */ public void start() { setFilereplace(fileName); super.start(); } /** * @return Returns the description. */ public String getDescription() { return description; } /** * @param description The description to set. */ public void setDescription(String description) { this.description = description; } public LocalHomeInterfacePlugin getLocalHomeInterfacePlugin() { return EjbRuntime.getLocalHomeInterfacePlugin(); } public RemoteHomeInterfacePlugin getRemoteHomeInterfacePlugin() { return EjbRuntime.getRemoteHomeInterfacePlugin(); } /** * Returns the jndiName of the given bean, reading the jndi-name * property of the ejb.bean tag, and using a default value if this * attribute is not set. * * @param clazz The target class * @return The jndi-name */ public String getJndiName(JavaClass clazz) { String jndiName = ejbUtils.getNamedParameter( (AbstractJavaEntity)clazz, "ejb.bean", "jndi-name", null); if (jndiName == null) jndiName = ejbUtils.getJndiName(clazz, EjbUtils.REMOTE); return jndiName; } /** * Returns the local JNDI name of the given bean, reading the * local-jndi-name property of the ejb.bean tag, and using a default * value if this attribute is not set. * * @param clazz The target class * @return The local JNDI name */ public String getLocalJndiName(JavaClass clazz) { String jndiName = ejbUtils.getNamedParameter( (AbstractJavaEntity)clazz, "ejb.bean", "local-jndi-name", null); if (jndiName == null) jndiName = ejbUtils.getJndiName(clazz, EjbUtils.LOCAL); return jndiName; } } --- NEW FILE: WeblogicEjbJarXmlPlugin.jelly --- <?xml version="1.0" encoding="UTF-8"?> <j:jelly xmlns:j="jelly:core" xmlns:x="jelly:xml" xmlns:jsl="jelly:jsl"> <x:element URI="${version.ns}" name="weblogic-ejb-jar"> <x:attribute URI="${version.xsiNs}" name="xsi:schemaLocation" trim="true"> ${version.schemaLocation} </x:attribute> <x:replaceNamespace toURI="${version.ns}"> <j:if test="${!empty(plugin.description)}"> <description>${plugin.description}</description> </j:if> <j:forEach var="class" items="${ejbUtil.getBeans(metadata)}"> <j:if test="${ejbUtil.shouldGenerate(class)}"> <weblogic-enterprise-bean> <ejb-name>${ejbUtil.getEjbName(class)}</ejb-name> <j:if test="${ejbUtil.isEntityBean(class)}"> <entity-descriptor> <!-- weblogic.cache --> <j:set var="wlCacheTag" value="${class.getTagByName('weblogic.cache', true)}"/> <j:if test="${wlCacheTag != null}"> <entity-cache> <j:if test="${!empty(wlCacheTag.maxBeansInCache)}"> <max-beans-in-cache>${wlCacheTag.maxBeansInCache}</max-beans-in-cache> </j:if> <j:if test="${!empty(wlCacheTag.maxQueriesInCache)}"> <max-queries-in-cache>${wlCacheTag.maxQueriesInCache}</max-queries-in-cache> </j:if> <j:if test="${!empty(wlCacheTag.idleTimeoutSeconds)}"> <idle-timeout-seconds>${wlCacheTag.idleTimeoutSeconds}</idle-timeout-seconds> </j:if> <j:if test="${!empty(wlCacheTag.readTimeoutSeconds)}"> <read-timeout-seconds>${wlCacheTag.readTimeoutSeconds}</read-timeout-seconds> </j:if> <j:if test="${!empty(wlCacheTag.concurrencyStrategy)}"> <concurrency-strategy>${wlCacheTag.concurrencyStrategy}</concurrency-strategy> </j:if> <j:if test="${!empty(wlCacheTag.cacheBetweenTransactions)}"> <cache-between-transactions>${wlCacheTag.cacheBetweenTransactions}</cache-between-transactions> </j:if> </entity-cache> </j:if> <!-- weblogic.cache-ref --> <j:set var="wlCacheRefTag" value="${class.getTagByName('weblogic.cache-ref', true)}"/> <j:if test="${wlCacheRefTag != null}"> <entity-cache-ref> <j:if test="${!empty(wlCacheRefTag.cacheName)}"> <entity-cache-name>${wlCacheRefTag.cacheName}</entity-cache-name> </j:if> <j:if test="${!empty(wlCacheRefTag.idleTimeoutSeconds)}"> <idle-timeout-seconds>${wlCacheRefTag.idleTimeoutSeconds}</idle-timeout-seconds> </j:if> <j:if test="${!empty(wlCacheRefTag.readTimeoutSeconds)}"> <read-timeout-seconds>${wlCacheRefTag.readTimeoutSeconds}</read-timeout-seconds> </j:if> <j:if test="${!empty(wlCacheRefTag.concurrencyStrategy)}"> <concurrency-strategy>${wlCacheRefTag.concurrencyStrategy}</concurrency-strategy> </j:if> <j:if test="${!empty(wlCacheRefTag.cacheBetweenTransactions)}"> <cache-between-transactions>${wlCacheRefTag.cacheBetweenTransactions}</cache-between-transactions> </j:if> <j:if test="${!empty(wlCacheRefTag.estimatedBeanSize)}"> <estimated-bean-size>${wlCacheRefTag.estimatedBeanSize}</estimated-bean-size> </j:if> </entity-cache-ref> </j:if> <!-- TODO Persistence? --> <persistence> <persistence-use> <type-identifier>WebLogic_CMP_RDBMS</type-identifier> <type-version>6.0</type-version> <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage> </persistence-use> </persistence> <!-- entity-clustering --> <j:set var="wlClusteringTag" value="${class.getTagByName('weblogic.clustering', true)}"/> <j:if test="${wlClusteringTag != null}"> <entity-clustering> <j:if test="${!empty(wlClusteringTag.homeIsClusterable)}"> <home-is-clusterable>${wlClusteringTag.homeIsClusterable}</home-is-clusterable> </j:if> <j:if test="${!empty(wlClusteringTag.homeLoadAlgorithm)}"> <home-load-algorithm>${wlClusteringTag.homeLoadAlgorithm}</home-load-algorithm> </j:if> <j:if test="${!empty(wlClusteringTag.homeCallRouterClassName)}"> <home-call-router-class-name>${wlClusteringTag.homeCallRouterClassName}</home-call-router-class-name> </j:if> <j:if test="${!empty(wlClusteringTag.useServersideStubs)}"> <use-serverside-stubs>${wlClusteringTag.useServersideStubs}</use-serverside-stubs> </j:if> </entity-clustering> </j:if> <!-- enable-dynamic-queries --> <j:set var="wlEnableDynQueriesTag" value="${class.getTagByName('weblogic.enable-dynamic-queries', true)}"/> <j:if test="${wlEnableDynQueriesTag != null}"> <enable-dynamic-queries>${ejbUtil.getNamedParameter(wlEnableDynQueriesTag, 'value', 'true')}</enable-dynamic-queries> </j:if> </entity-descriptor> </j:if> <j:if test="${ejbUtil.isMessageDrivenBean(class)}"> <x:comment>MDB support is not implemented yet</x:comment> </j:if> <j:if test="${ejbUtil.isStateLess(class)}"> <stateless-session-descriptor> <!-- weblogic.pool --> <j:set var="wlPoolTag" value="${class.getTagByName('weblogic.pool', true)}"/> <j:if test="${wlPoolTag != null}"> <pool> <j:if test="${!empty(wlPoolTag.maxBeansInFreePool)}"> <max-beans-in-free-pool>${wlPoolTag.maxBeansInFreePool}</max-beans-in-free-pool> </j:if> <j:if test="${!empty(wlPoolTag.initialBeansInFreePool)}"> <initial-beans-in-free-pool>${wlPoolTag.initialBeansInFreePool}</initial-beans-in-free-pool> </j:if> </pool> </j:if> <!-- TODO timer-descriptor not implemented for now --> <!-- stateless-clustering --> <j:set var="wlClusteringTag" value="${class.getTagByName('weblogic.clustering', true)}"/> <j:if test="${wlClusteringTag != null}"> <stateless-clustering> <j:if test="${!empty(wlClusteringTag.homeIsClusterable)}"> <home-is-clusterable>${wlClusteringTag.homeIsClusterable}</home-is-clusterable> </j:if> <j:if test="${!empty(wlClusteringTag.homeLoadAlgorithm)}"> <home-load-algorithm>${wlClusteringTag.homeLoadAlgorithm}</home-load-algorithm> </j:if> <j:if test="${!empty(wlClusteringTag.homeCallRouterClassName)}"> <home-call-router-class-name>${wlClusteringTag.homeCallRouterClassName}</home-call-router-class-name> </j:if> <j:if test="${!empty(wlClusteringTag.useServersideStubs)}"> <use-serverside-stubs>${wlClusteringTag.useServersideStubs}</use-serverside-stubs> </j:if> <j:if test="${!empty(wlClusteringTag.statelessBeanIsClusterable)}"> <stateless-bean-is-clusterable>${wlClusteringTag.statelessBeanIsClusterable}</stateless-bean-is-clusterable> </j:if> <j:if test="${!empty(wlClusteringTag.statelessBeanLoadAlgorithm)}"> <stateless-bean-load-algorithm>${wlClusteringTag.statelessBeanLoadAlgorithm}</stateless-bean-load-algorithm> </j:if> <j:if test="${!empty(wlClusteringTag.statelessBeanCallRouterClassName)}"> <stateless-bean-call-router-class-name>${wlClusteringTag.statelessBeanCallRouterClassName}</stateless-bean-call-router-class-name> </j:if> </stateless-clustering> </j:if> </stateless-session-descriptor> </j:if> <!-- TODO add transaction-descriptor, iiop-security-descriptor --> <j:forEach var="reference" items="${ejbUtil.findTagsByName(class,'weblogic.resource-description')}"> <j:set var="refTag" value="${reference.tag}"/> <resource-description> <res-ref-name>${refTag.resRefName}</res-ref-name> <j:if test="${!empty(refTag.jndiName)}"> <jndi-name>${refTag.jndiName}</jndi-name> </j:if> <j:if test="${!empty(refTag.resourceLink)}"> <resource-link>${refTag.resourceLink}</resource-link> </j:if> </resource-description> </j:forEach> <!-- TODO weblogic:resource-env-description weblogic:ejb-reference-description weblogic:resource-env-description weblogic:ejb-local-reference-description --> <!-- enable-call-by-reference --> <j:set var="wlEnableCallByRefTag" value="${class.getTagByName('weblogic.enable-call-by-reference', true)}"/> <j:if test="${wlEnableCallByRefTag != null}"> <enable-call-by-reference>${ejbUtil.getNamedParameter(wlEnableCallByRefTag, 'value', 'true')}</enable-call-by-reference> </j:if> <!-- TODO add network-access-point, clients-on-same-server, run-as-principal-name, create-as-principal-name, remove-as-principal-name, passivate-as-principal-name --> <j:if test="${ejbUtil.shouldHaveJndiName(class)}"> <jndi-name>${plugin.getJndiName(class)}</jndi-name> </j:if> <j:if test="${ejbUtil.shouldHaveLocalJndiName(class)}"> <local-jndi-name>${plugin.getLocalJndiName(class)}</local-jndi-name> </j:if> <!-- TODO add dispatch-policy, remote-client-timeout --> </weblogic-enterprise-bean> </j:if> </j:forEach> <!-- merge weblogic-enterprise-beans.xml --> <j:set var="mergeFile" value="${plugin.getMergeFile('weblogic-enterprise-beans.xml')}"/> <j:choose> <j:when test="${mergeFile.exists()}"> <j:import file="${mergeFile.path}" inherit="true"/> </j:when> <j:otherwise> <x:comment trim="true">To add beans for which you have deployment descriptor info, add a file to your XDoclet merge directory called weblogic-enterprise-beans.xml that contains the weblogic-enterprise-bean markup for those beans.</x:comment> </j:otherwise> </j:choose> <!-- merge weblogic-security-role-assignment.xml --> <!-- TODO Create a tag for this? --> <j:set var="mergeFile" value="${plugin.getMergeFile('weblogic-security-role-assignment.xml')}"/> <j:choose> <j:when test="${mergeFile.exists()}"> <j:import file="${mergeFile.path}" inherit="true"/> </j:when> <j:otherwise> <x:comment trim="true">To add a security-role-assignment section, add a file to your XDoclet merge directory called weblogic-security-role-assignment.xml that contains the security-role-assignment markup.</x:comment> </j:otherwise> </j:choose> <!-- Merge weblogic-run-as-role-assignment.xml --> <!-- TODO Create a tag for this? --> <j:set var="mergeFile" value="${plugin.getMergeFile('weblogic-run-as-role-assignment.xml')}"/> <j:choose> <j:when test="${mergeFile.exists()}"> <j:import file="${mergeFile.path}" inherit="true"/> </j:when> <j:otherwise> <x:comment trim="true">To add a run-as-role-assignment section, add a file to your XDoclet merge directory called weblogic-run-as-role-assignment.xml that contains the run-as-role-assignment markup.</x:comment> </j:otherwise> </j:choose> <!-- TODO: Implement security-permission --> <x:comment>Missing implementation of security-permission</x:comment> <!-- TODO transaction-isolation message-destination-descriptor idempotent-methods retry-methods-on-rollback enable-bean-class-redeploy disable-warning work-manager weblogic-compatibility --> </x:replaceNamespace> </x:element> </j:jelly> --- NEW FILE: WeblogicCmpRdbmsJarXmlPlugin.jelly --- <?xml version="1.0" encoding="UTF-8"?> <j:jelly xmlns:j="jelly:core" xmlns:x="jelly:xml" xmlns:jsl="jelly:jsl"> <x:element URI="${version.ns}" name="weblogic-rdbms-jar"> <x:attribute URI="${version.xsiNs}" name="xsi:schemaLocation" trim="true"> ${version.schemaLocation} </x:attribute> <x:replaceNamespace toURI="${version.ns}"> <j:forEach var="class" items="${ejbUtil.getCMPBeans(metadata)}"> <weblogic-rdbms-bean> <ejb-name>${ejbUtil.getEjbName(class)}</ejb-name> <data-source-jndi-name>${plugin.getDatasSourceJndiName(class)}</data-source-jndi-name> <!-- TODO unknown-primary-key-field --> <table-map> <table-name>${cmpUtil.getTableNameFor(class)}</table-name> <j:forEach var="method" items="${ejbUtil.getCMPFields(class)}"> <field-map> <cmp-field>${method.propertyName}</cmp-field> <dbms-column>${cmpUtil.getColumnFor(method)}</dbms-column> </field-map> </j:forEach> </table-map> <!-- TODO field-group --> <!-- TODO relationship-caching --> <!-- TODO sql-shape --> <!-- weblogic-query --> <j:forEach var="finderTag" items="${class.getTagsByName('ejb.finder')}"> <weblogic-query> <j:if test="${!empty(finderTag.description)}"> <description>${finderTag.description}</description> </j:if> <j:scope> <j:set var="method" value="${ejbUtil.getFinderMethodBySignature(finderTag.signature)}" /> <query-method> <method-name>${method.name}</method-name> <method-params> <j:forEach var="param" items="${method.parameters}"> <method-param>${param.type}</method-param> </j:forEach> </method-params> </query-method> <j:if test="${!empty(finderTag.query)}"> <ejb-ql-query> <weblogic-ql><![CDATA[${finderTag.query}]]></weblogic-ql> </ejb-ql-query> </j:if> <j:if test="${!empty(finderTag.maxElements)}"> <max-elements>${finderTag.maxElements}</max-elements> </j:if> </j:scope> </weblogic-query> </j:forEach> <!-- weblogic.delay-database-insert-until --> <j:set var="wlDelayTag" value="${class.getTagByName('weblogic.delay-database-insert-until', true)}"/> <j:if test="${wlDelayTag != null}"> <delay-database-insert-until>${wlDelayTag.value}</delay-database-insert-until> </j:if> <!-- use-select-for-update --> <j:set var="wlSelectForUpdateTag" value="${class.getTagByName('weblogic.use-select-for-update', true)}"/> <j:if test="${wlSelectForUpdateTag != null}"> <use-select-for-update>${wlSelectForUpdateTag.value}</use-select-for-update> </j:if> <!-- lock-order --> <j:set var="wlLockOrderTag" value="${class.getTagByName('weblogic.lock-order', true)}"/> <j:if test="${wlLockOrderTag != null}"> <lock-order>${wlLockOrderTag.value}</lock-order> </j:if> <!-- instance-lock-order --> <j:set var="wlInstanceLockOrderTag" value="${class.getTagByName('weblogic.instance-lock-order', true)}"/> <j:if test="${wlInstanceLockOrderTag != null}"> <instance-lock-order>${wlInstanceLockOrderTag.value}</instance-lock-order> </j:if> <!-- automatic-key-generation --> <j:set var="wlKeyGenerationTag" value="${class.getTagByName('weblogic.automatic-key-generation', true)}"/> <j:if test="${wlKeyGenerationTag != null}"> <automatic-key-generation> <j:if test="${!empty(wlKeyGenerationTag.generatorType)}"> <generator-type>${wlKeyGenerationTag.generatorType}</generator-type> </j:if> <j:if test="${!empty(wlKeyGenerationTag.generatorName)}"> <generator-name>${wlKeyGenerationTag.generatorName}</generator-name> </j:if> <j:if test="${!empty(wlKeyGenerationTag.keyCacheSize)}"> <key-cache-size>${wlKeyGenerationTag.keyCacheSize}</key-cache-size> </j:if> </automatic-key-generation> </j:if> <!-- TODO check-exists-on-method --> <!-- TODO cluster-invalidation-disabled --> </weblogic-rdbms-bean> </j:forEach> <!-- Merge weblogic-cmp-rdbms-beans.xml --> <j:set var="mergeFile" value="${plugin.getMergeFile('weblogic-cmp-rdbms-beans.xml')}"/> <j:choose> <j:when test="${mergeFile.exists()}"> <j:import file="${mergeFile.path}" inherit="true"/> </j:when> <j:otherwise> <x:comment trim="true">To add weblogic relationships for beans not managed by XDoclet, add a file to your XDoclet merge directory called weblogic-cmp-rdbms-beans.xml that contains the weblogic-rdbms-bean markups for those beans.</x:comment> </j:otherwise> </j:choose> <!-- weblogic-rdbms-relation --> <j:forEach var="relation" items="${cmpUtil.getRelationships(metadata)}"> <weblogic-rdbms-relation> <relation-name>${relation.name}</relation-name> <j:if test="${cmpUtil.isMany2Many(relation)}"> <table-name>${cmpUtil.getJoinTableNameFor(relation)}</table-name> </j:if> <weblogic-relationship-role> <relationship-role-name>${relation.leftRoleName}</relationship-role-name> <j:set var="groupName" value="${cmpUtil.getLeftGroupNameFor(relation)}"/> <j:if test="${!empty(groupname)}"> <group-name>${groupName}</group-name> </j:if> <relationship-role-map> <j:forEach var="wlColumnMapTag" items="${cmpUtil.getLeftColumnMapsFor(relation)}"> <column-map> <foreign-key-column>${wlColumnMapTag.foreignKeyColumn}</foreign-key-column> <key-column>${wlColumnMapTag.keyColumn}</key-column> </column-map> </j:forEach> </relationship-role-map> <!-- TODO db-cascade-delete --> <!-- TODO enable-query-caching --> </weblogic-relationship-role> <j:if test="${cmpUtil.isMany2Many(relation)}"> <weblogic-relationship-role> <relationship-role-name>${relation.rightRoleName}</relationship-role-name> <j:set var="groupName" value="${cmpUtil.getRightGroupNameFor(relation)}"/> <j:if test="${!empty(groupname)}"> <group-name>${groupName}</group-name> </j:if> <relationship-role-map> <j:forEach var="wlColumnMapTag" items="${cmpUtil.getRightColumnMapsFor(relation)}"> <column-map> <foreign-key-column>${wlColumnMapTag.foreignKeyColumn}</foreign-key-column> <key-column>${wlColumnMapTag.keyColumn}</key-column> </column-map> </j:forEach> </relationship-role-map> <!-- TODO db-cascade-delete --> <!-- TODO enable-query-caching --> </weblogic-relationship-role> </j:if> </weblogic-rdbms-relation> </j:forEach> <!-- Merge weblogic-cmp-rdbms-relationships.xml --> <j:set var="mergeFile" value="${plugin.getMergeFile('weblogic-cmp-rdbms-relationships.xml')}"/> <j:choose> <j:when test="${mergeFile.exists()}"> <j:import file="${mergeFile.path}" inherit="true"/> </j:when> <j:otherwise> <x:comment trim="true">To add weblogic relationships for beans not managed by XDoclet, add a file to your XDoclet merge directory called weblogic-cmp-rdbms-relationships.xml that contains the weblogic-rdbms-relation markups for those beans.</x:comment> </j:otherwise> </j:choose> <!-- order-database-operations --> <j:if test="${!empty(plugin.getOrderDatabaseOperations())}"> <order-database-operations>${plugin.getOrderDatabaseOperations()}</order-database-operations> </j:if> <!-- enable-batch-operations --> <j:if test="${!empty(plugin.getEnableBatchOperations())}"> <enable-batch-operations>${plugin.getEnableBatchOperations()}</enable-batch-operations> </j:if> <!-- create-default-dbms-tables --> <j:if test="${!empty(plugin.getCreateDefaultDbmsTables())}"> <create-default-dbms-tables>${plugin.getCreateDefaultDbmsTables()}</create-default-dbms-tables> </j:if> <!-- validate-db-schema-with --> <j:if test="${!empty(plugin.getValidateDbSchemaWith())}"> <validate-db-schema-with>${plugin.getValidateDbSchemaWith()}</validate-db-schema-with> </j:if> <!-- weblogic.database-type --> <database-type>${plugin.getDatabaseType()}</database-type> <!-- default-dbms-tables-ddl --> <j:if test="${!empty(plugin.getDefaultDbmsTablesDdl())}"> <default-dbms-tables-ddl>${plugin.getDefaultDbmsTablesDdl()}</default-dbms-tables-ddl> </j:if> <!-- TODO compatibility --> </x:replaceNamespace> </x:element> </j:jelly> --- NEW FILE: WeblogicCmpRdbmsJarXmlPlugin.java --- package org.xdoclet.plugin.weblogic.ejb.descriptor; import java.io.File; import java.text.MessageFormat; import java.util.HashMap; import java.util.Map; import org.generama.JellyTemplateEngine; import org.generama.QDoxCapableMetadataProvider; import org.generama.WriterMapper; import org.generama.defaults.XMLOutputValidator; import org.xdoclet.plugin.ejb.AbstractEjbJarXmlPlugin; import org.xdoclet.plugin.ejb.EjbConfig; import org.xdoclet.plugin.ejb.EjbRuntime; import org.xdoclet.plugin.ejb.descriptor.EjbJarXmlPlugin; import org.xdoclet.plugin.ejb.util.QDoxCachedMetadataProvider; import org.xdoclet.plugin.weblogic.WebLogicVersion; import org.xdoclet.plugin.weblogic.ejb.WeblogicCmpUtils; import org.xdoclet.plugin.weblogic.ejb.WeblogicEjbUtils; import org.xdoclet.plugin.weblogic.qtags.TagLibrary; import com.thoughtworks.qdox.model.JavaClass; /** * @author Ive Hellemans * @version $Revision$ */ public class WeblogicCmpRdbmsJarXmlPlugin extends AbstractEjbJarXmlPlugin { /** Description to be added to the file. */ private String description = "Generated by XDoclet2"; /** Description to be added to the file. */ private String dataSourceJndiName = "no default data source set and no datasource defined forthis bean"; /** Database type (ORACLE etc). */ private String databaseType; /** Default name for generated file */ private String fileName = "weblogic-cmp-rdbms-jar.xml"; /** Whether or not db operations should be ordered. */ private Boolean orderDatabaseOperations; /** Whether or not batch operations should be supported. */ private Boolean enableBatchOperations; /** Whether or not default tables should be created. */ private String createDefaultDbmsTables; /** @see #getDefaultDbmsTablesDdl() */ private String defaultDbmsTablesDdl; /** @see #getValidateDbSchemaWith() */ private String validateDbSchemaWith; /** Utility classes. */ private WeblogicEjbUtils ejbUtils = null; private WeblogicCmpUtils cmpUtils = null; public WeblogicCmpRdbmsJarXmlPlugin(JellyTemplateEngine jellyTemplateEngine, //QDoxCachedMetadataProvider metadataProvider, WriterMapper writerMapper, EjbConfig config) { super(jellyTemplateEngine, //config.getMetadataProvider(), writerMapper, config); //Disable multi-output super.setMultioutput(false); //Initialise the utils this.ejbUtils = new WeblogicEjbUtils(config); this.cmpUtils = new WeblogicCmpUtils(this.ejbUtils); //Register tags new TagLibrary(metadataProvider); //Register schemas Map schemas = WebLogicVersion.fillEntityResolverMap(new HashMap()); setOutputValidator(new XMLOutputValidator(schemas)); } /** * @return Returns the databasetype. */ public String getDatabaseType() { return databaseType; } /** * @param databasetype The databasetype to set. */ public void setDatabasetype(String databasetype) { this.databaseType = databasetype; } /** * Don't let multioutput be changed */ public void setMultioutput(boolean multioutput) { throw new RuntimeException("Can't set multioutput for plugin"); } /** * Setter for fileName property * * @param fileName The value for the property * * @throws NullPointerException if fileName == null */ public void setFilename(String fileName) { if (fileName == null) { throw new NullPointerException(); } this.fileName = fileName; } /** * Getter or the fileName property. */ public String getFileName() { return this.fileName; } /** * @return Returns the description. */ public String getDescription() { return description; } /** * @param description The description to set. */ public void setDescription(String description) { this.description = description; } /** * @return Returns the datasourcejndiname. */ public String getDatasSourceJndiName(JavaClass clazz) { return cmpUtils.getDataSourceJndiName(clazz, dataSourceJndiName); } /** * @return Returns the default datasourcejndiname - if set */ public String getDataSourceJndiName() { return dataSourceJndiName; } /** * Sets the default value for <data-source-jndi-name>. * * @param datasourcejndiname The datasourcejndiname to set. */ public void setDatasourcejndiname(String datasourcejndiname) { this.dataSourceJndiName = datasourcejndiname; } public String getCreateDefaultDbmsTables() { return createDefaultDbmsTables; } public void setCreatedefaultdbmstables(String createdefaultdbmstables) { this.createDefaultDbmsTables = createdefaultdbmstables; } /** * Specifies the DDL file name to which the EJB container writes the * table creation scripts. */ public String getDefaultDbmsTablesDdl() { return defaultDbmsTablesDdl; } /** * @see #getDefaultDbmsTablesDdl() */ public void setDefaultdbmstablesddl(String defaultDbmsTablesDdl) { this.defaultDbmsTablesDdl = defaultDbmsTablesDdl; } /** * Specifies how the container verifies whether the database table contains * all of the columns that the bean's deployment descriptor contains. */ public String getValidateDbSchemaWith() { return validateDbSchemaWith; } /** * @see #getValidateDbSchemaWith() */ public void setValidatedbschemawith(String validatedbschemawith) { this.validateDbSchemaWith = validatedbschemawith; } public Boolean getEnableBatchOperations() { return enableBatchOperations; } public void setEnablebatchoperations(Boolean enablebatchoperations) { this.enableBatchOperations = enablebatchoperations; } public Boolean getOrderDatabaseOperations() { return orderDatabaseOperations; } public void setOrderdatabaseoperations(Boolean orderdatabaseoperations) { this.orderDatabaseOperations = orderdatabaseoperations; } public boolean shouldGenerate(Object metadata) { return ejbUtils.shouldGenerate((JavaClass)metadata); } /** * Utility method called from jelly script to resolve a mergeFile reference * * @param mergeFile The mergeFile to look for * @param clazz JavaClass name for name expansion * * @return A File for mergeFile */ public File getMergeFile(String mergeFile, JavaClass clazz) { if (true) throw new RuntimeException("wordt toch aangeroepen :-)"); //TODO remove return getMergeFile(expandFileName(mergeFile, clazz)); } protected String expandFileName(String mergeFile, JavaClass clazz) { return MessageFormat.format(mergeFile, new String[] {clazz.getName()}); } public EjbJarXmlPlugin getEjbJarXmlPlugin() { return EjbRuntime.getEjbJarXmlPlugin(); } protected WebLogicVersion getWeblogicVersion() { return WebLogicVersion.get(WebLogicVersion.WEBLOGIC_9_1_CMP_RDMBS); } protected WeblogicEjbUtils getWeblogicEjbUtils() { return ejbUtils; } protected WeblogicCmpUtils getWeblogicCmpUtils() { return cmpUtils; } /* * @see org.generama.Plugin#populateContextMap(java.util.Map) */ protected void populateContextMap(Map map) { super.populateContextMap(map); map.put("ejbUtil", getWeblogicEjbUtils()); map.put("cmpUtil", getWeblogicCmpUtils()); map.put("version", getWeblogicVersion()); } /** * Overrides pluggin start. Used for late setting of generated file name, * in case the user whishes to change it */ public void start() { setFilereplace(fileName); super.start(); } } |
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic/qtags In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12277/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic/qtags Added Files: WeblogicEnableDynamicQueriesTag.java WeblogicInstanceLockOrderTag.java WeblogicTargetColumnMap.java WeblogicEnableCallByReferenceTag.java WeblogicPersistenceTag.java WeblogicRelationTag.java WeblogicResourceDescriptionTag.java WeblogicUseSelectForUpdateTag.java WeblogicTransactionDescriptorTag.java WeblogicClusteringTag.java WeblogicDelayDatabaseInsertUntilTag.java WeblogicCacheTag.java WeblogicAutomaticKeyGenerationTag.java WeblogicColumnMapTag.java WeblogicDataSourceNameTag.java WeblogicLockOrderTag.java WeblogicPoolTag.java WeblogicCacheRefTag.java Log Message: Initial Revision --- NEW FILE: WeblogicTransactionDescriptorTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tag which allows setting the values inside a <transaction-descriptor>. * * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicTransactionDescriptorTag extends DocletTag { Integer getTransTimeoutSeconds(); } --- NEW FILE: WeblogicPoolTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tag which allows specifying WebLogic specific pool-elated settings (the * pool element within the declaration of an entity bean, a session bean or a * message driven bean. * * @qtags.location class * @qtags.once * * <P>$Id$ * @version $Revision$ $Date$ * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicPoolTag extends DocletTag { /** Define a value for the max beans in free pool setting. */ Integer getMaxBeansInFreePool(); /** Define a value for the initial number of beans in the free pool. */ Integer getInitialBeansInFreePool(); } --- NEW FILE: WeblogicEnableDynamicQueriesTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Allows setting the <enable-dynamic-queries> element inside an <entity-descriptor>. * * Usage: * @weblogic.enable-dynamic-queries --> defaults to true * @weblogic.enable-dynamic-queries value="true" * @weblogic.enable-dynamic-queries value="false" * * @qtags.location class * @qtags.once * * @version $Revision$ $Date$ * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicEnableDynamicQueriesTag extends DocletTag { Boolean getValue_(); } --- NEW FILE: WeblogicPersistenceTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tag which allows setting tyhe values related to the * * Note: the current version doens't allow changing the values for the <persistence-use>-element. * * @qtags.location class * @qtags.once * * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicPersistenceTag extends DocletTag { /** * The name of the method to call to check whether or not the bean was modified */ boolean getIsModifiedMethodName(); boolean getDelayUpdatesUntilEndOfTx(); boolean getFindersLoadBean(); } --- NEW FILE: WeblogicTargetColumnMap.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * This Tag allows setting the values for a <column-map> inside an * weblogic-cmp-rdbms-jar.xml file, form the 'wrong' side of the * relationship. This tag is mostly usefull in case of * uni-directional relationships. * * @qtags.location method * * @author Ive Hellemans */ public interface WeblogicTargetColumnMap extends DocletTag { String getForeignKeyColumn(); String getKeyColumn(); } --- NEW FILE: WeblogicColumnMapTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * This Tag allows setting the values for a <column-map> inside an * weblogic-cmp-rdbms-jar.xml file. * * @qtags.location method * * @author Ive Hellemans */ public interface WeblogicColumnMapTag extends DocletTag { String getForeignKeyColumn(); String getKeyColumn(); } --- NEW FILE: WeblogicDelayDatabaseInsertUntilTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tag which allows setting the <delay-database-insert-until> inside the * weblogic-cmp-rdbms-jar.xml file. * * @qtags.location class * @qtags.once * * @qtags.allowed-value ejbCreate * @qtags.allowed-value ejbPostCreate * @qtags.allowed-value commit * * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicDelayDatabaseInsertUntilTag extends DocletTag { } --- NEW FILE: WeblogicAutomaticKeyGenerationTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tags which allows defining an automatic-key-generation element inside the * weblogic-cmp-rdbms-jar.xml. * * @qtags.location class * @qtags.once * * @version $Id$ * @author Ive Hellemans */ public interface WeblogicAutomaticKeyGenerationTag extends DocletTag { /** * The generator type * * @qtags.required * * @qtags.allowed-value ORACLE * @qtags.allowed-value SQL_SERVER * @qtags.allowed-value NAMED_SEQUENCE_TABLE */ String getGeneratorType(); /** * The name of the generator */ String getGeneratorName(); /** * The cache size */ Integer getKeyCacheSize(); } --- NEW FILE: WeblogicDataSourceNameTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tag which allows setting the <data-source-name> inside the weblogic-cmp-rdbms-jar.xml file. * * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicDataSourceNameTag extends DocletTag { } --- NEW FILE: WeblogicInstanceLockOrderTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tag which allows setting the instance-lock-order element in the * weblogic-cmp-rdbms-jar.xml file * * @qtags.location class * @qtags.once * * @qtags.allowed-value AccessOrder * @qtags.allowed-value ValueOrder * * @version $Id$ * @author Ive Hellemans */ public interface WeblogicInstanceLockOrderTag extends DocletTag { } --- NEW FILE: WeblogicEnableCallByReferenceTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Allows to set the enable-call-by-reference flag. * * Usage: * @weblogic.enable-call-by-reference --> defaults to true * @weblogic.enable-call-by-reference value="true" * @weblogic.enable-call-by-reference value="false" * * @qtags.location class * @qtags.once * * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicEnableCallByReferenceTag extends DocletTag { Boolean getValue_(); } --- NEW FILE: WeblogicCacheTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tags which allows defining the values to be placed in: <UL> * <LI>the <entity-cache> inside an <entity-descriptor> </LI> * <LI>the <stateful-session-cache> tag inside a <stateful-session-descriptor> </LI> * </UL> * * Note: this tag ins't called WebLogicEntityCacheRefTag for backwards compatibility. * * <P>$Id$ * @version $Revision$ $Date$ * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicCacheTag extends DocletTag { Integer getMaxBeansInCache(); Integer getMaxQueriesInCache(); Integer getIdleTimeoutSeconds(); Integer getReadTimeoutSeconds(); String getConcurrencyStrategy(); String getCacheBetweenTransactions(); } --- NEW FILE: WeblogicRelationTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * @qtags.location method * * @version $Revision$ $Date$ * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicRelationTag extends DocletTag { /** * Returns the name of the join-table, used for many-to-many * relations. */ String getJoinTableName(); /** * Returns the name of the group to which this relation belongs. */ String getGroupName(); /** * When set, the db-cascade-delete flag is set for this relationship. * * @qtags.allowed-value true */ Boolean getDbCascadeDelete(); } --- NEW FILE: WeblogicClusteringTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * This Tag allows changing the behavior of beans in a WebLogic cluster. * * Implementation note: this class contains both common and type specific tags. The latter * are ignored for bean of another type. It might have been cleaner to put these attributes * subclasses, but the current approach keeps the tags backwards compatible. * * Compatibility note: the attribute for generating <stateless-bean-methods-are-idempotent> * information is no longer supported as this option no longer exists. * * @qtags.location class * @qtags.once * * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicClusteringTag extends DocletTag { Boolean getHomeIsClusterable(); String getHomeLoadAlgorithm(); String getHomeCallRouterClassName(); Boolean getUseServersideStubs(); Boolean getStatelessBeanIsClusterable(); String getStatelessBeanLoadAlgorithm(); String getStatelessBeanCallRouterClassName(); //boolean getStatelessBeanMethodsAreIdempotent(); } --- NEW FILE: WeblogicCacheRefTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tags which allows defining the values to be placed in the <entity-cache-ref> tag * inside an <entity-descriptor> * * Note: this tag ins't called WebLogicEntityCacheRefTag for backwards compatibility * * @qtags.location class * @qtags.once * * <P>$Id$ * @version $Revision$ $Date$ * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicCacheRefTag extends DocletTag { //TODO think about changing this to be more in line with the weblogic XSD // splitting between EntityCache & SessionCache etc. /** * @qtags.required */ String getCacheName(); Integer getIdleTimeoutSeconds(); Integer getReadTimeoutSeconds(); String getConcurrencyStrategy(); /** * Whether or not to cache values between transactions. Defaults to false. * * @qtags.default false */ boolean getCacheBetweenTransactions(); Integer getEstimatedBeanSize(); } --- NEW FILE: WeblogicLockOrderTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tag which allows setting the lock-order element in the * weblogic-cmp-rdbms-jar.xml file * * @qtags.location class * @qtags.once * * @version $Id$ * @author Ive Hellemans */ public interface WeblogicLockOrderTag extends DocletTag { } --- NEW FILE: WeblogicUseSelectForUpdateTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tag which allows setting the instance-lock-order element in the * weblogic-cmp-rdbms-jar.xml file * * @qtags.location class * @qtags.once * * @qtags.allowed-value true * @qtags.allowed-value false * * @version $Id$ * @author Ive Hellemans */ public interface WeblogicUseSelectForUpdateTag extends DocletTag { } --- NEW FILE: WeblogicResourceDescriptionTag.java --- package org.xdoclet.plugin.weblogic.qtags; import com.thoughtworks.qdox.model.DocletTag; /** * Tags which allows setting the values for a <resource-description>. * * @author <a href="mailto:Ive...@sw...">Ive Hellemans</A> */ public interface WeblogicResourceDescriptionTag extends DocletTag { String getResRefName(); String getJndiName(); String getResourceLink(); } |
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb/descriptor/expected In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12277/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb/descriptor/expected Added Files: weblogic-cmp-rdbms-jar-v91.xml weblogic-ejb-jar-v91.xml Log Message: Initial Revision --- NEW FILE: weblogic-ejb-jar-v91.xml --- <?xml version="1.0" encoding="ISO-8859-1"?> <weblogic-ejb-jar xmlns="http://www.bea.com/ns/weblogic/90" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/90/weblogic-ejb-jar.xsd"> <description>a description</description> <weblogic-enterprise-bean> <ejb-name>Account</ejb-name> <entity-descriptor> <entity-cache-ref> <entity-cache-name>A</entity-cache-name> <idle-timeout-seconds>1</idle-timeout-seconds> <read-timeout-seconds>2</read-timeout-seconds> <concurrency-strategy>B</concurrency-strategy> <cache-between-transactions>true</cache-between-transactions> <estimated-bean-size>3</estimated-bean-size> </entity-cache-ref> <persistence> <persistence-use> <type-identifier>WebLogic_CMP_RDBMS</type-identifier> <type-version>6.0</type-version> <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage> </persistence-use> </persistence> <entity-clustering> <home-is-clusterable>true</home-is-clusterable> <home-load-algorithm>x</home-load-algorithm> <home-call-router-class-name>y</home-call-router-class-name> <use-serverside-stubs>false</use-serverside-stubs> </entity-clustering> <enable-dynamic-queries>true</enable-dynamic-queries> </entity-descriptor> <jndi-name>jndi.AccountRemote</jndi-name> <local-jndi-name>jndi.AccountLocal</local-jndi-name> </weblogic-enterprise-bean> <weblogic-enterprise-bean> <ejb-name>Client</ejb-name> <entity-descriptor> <entity-cache> <max-beans-in-cache>1</max-beans-in-cache> <max-queries-in-cache>2</max-queries-in-cache> <idle-timeout-seconds>3</idle-timeout-seconds> <read-timeout-seconds>4</read-timeout-seconds> <concurrency-strategy>A</concurrency-strategy> <cache-between-transactions>true</cache-between-transactions> </entity-cache> <persistence> <persistence-use> <type-identifier>WebLogic_CMP_RDBMS</type-identifier> <type-version>6.0</type-version> <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage> </persistence-use> </persistence> </entity-descriptor> <jndi-name>ClientRemote</jndi-name> <local-jndi-name>ClientLocal</local-jndi-name> </weblogic-enterprise-bean> <weblogic-enterprise-bean> <ejb-name>CompanyClient</ejb-name> <entity-descriptor> <entity-cache> <max-beans-in-cache>1</max-beans-in-cache> <max-queries-in-cache>2</max-queries-in-cache> <idle-timeout-seconds>3</idle-timeout-seconds> <read-timeout-seconds>4</read-timeout-seconds> <concurrency-strategy>A</concurrency-strategy> <cache-between-transactions>true</cache-between-transactions> </entity-cache> <persistence> <persistence-use> <type-identifier>WebLogic_CMP_RDBMS</type-identifier> <type-version>6.0</type-version> <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage> </persistence-use> </persistence> </entity-descriptor> <jndi-name>jndi.CompanyClientRemote</jndi-name> <local-jndi-name>jndi.CompanyClientLocal</local-jndi-name> </weblogic-enterprise-bean> <weblogic-enterprise-bean> <ejb-name>Transfer</ejb-name> <stateless-session-descriptor> <pool> <max-beans-in-free-pool>10</max-beans-in-free-pool> <initial-beans-in-free-pool>10</initial-beans-in-free-pool> </pool> <stateless-clustering> <home-is-clusterable>true</home-is-clusterable> <home-load-algorithm>x</home-load-algorithm> <home-call-router-class-name>y</home-call-router-class-name> <use-serverside-stubs>false</use-serverside-stubs> <stateless-bean-is-clusterable>true</stateless-bean-is-clusterable> <stateless-bean-load-algorithm>a</stateless-bean-load-algorithm> <stateless-bean-call-router-class-name>b</stateless-bean-call-router-class-name> </stateless-clustering> </stateless-session-descriptor> <resource-description> <res-ref-name>jdbc/datasource</res-ref-name> <jndi-name>testapp-ejb.datasource</jndi-name> </resource-description> <enable-call-by-reference>true</enable-call-by-reference> <jndi-name>jndi.TransferRemote</jndi-name> <local-jndi-name>jndi.TransferLocal</local-jndi-name> </weblogic-enterprise-bean> <weblogic-enterprise-bean> <ejb-name>TransferReceiverBean</ejb-name> <!--MDB support is not implemented yet--> <jndi-name>jndi.TransferReceiver</jndi-name> </weblogic-enterprise-bean> </weblogic-ejb-jar> --- NEW FILE: weblogic-cmp-rdbms-jar-v91.xml --- <?xml version="1.0" encoding="ISO-8859-1"?> <weblogic-rdbms-jar xmlns="http://www.bea.com/ns/weblogic/90" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/90/weblogic-rdbms20-persistence.xsd"> <weblogic-rdbms-bean> <ejb-name>Account</ejb-name> <data-source-jndi-name>testapp-ejb.datasource</data-source-jndi-name> <table-map> <table-name>ACCOUNT_T</table-name> <field-map> <cmp-field>number</cmp-field> <dbms-column>NUMBER_COL</dbms-column> </field-map> <field-map> <cmp-field>type</cmp-field> <dbms-column>TYPE_COL</dbms-column> </field-map> </table-map> <weblogic-query> <description>finderDesc1</description> <query-method> <method-name>findAll</method-name> <method-params/> </query-method> <ejb-ql-query> <weblogic-ql><![CDATA[my EJBQL 1]]></weblogic-ql> </ejb-ql-query> <max-elements>100</max-elements> </weblogic-query> <weblogic-query> <query-method> <method-name>findAll</method-name> <method-params> <method-param>int[]</method-param> </method-params> </query-method> <ejb-ql-query> <weblogic-ql><![CDATA[my EJBQL 2]]></weblogic-ql> </ejb-ql-query> </weblogic-query> <weblogic-query> <description>finderDesc3</description> <query-method> <method-name>findOther</method-name> <method-params> <method-param>java.lang.String</method-param> <method-param>java.lang.Integer</method-param> </method-params> </query-method> <ejb-ql-query> <weblogic-ql><![CDATA[SELECT OBJECT(o) FROM Account o WHERE o.param1 = ?1 and o.param2 = ?2 and o.id <> 5]]></weblogic-ql> </ejb-ql-query> </weblogic-query> <weblogic-query> <description>findWithHighestBalance</description> <query-method> <method-name>findWithHighestBalance</method-name> <method-params/> </query-method> </weblogic-query> <delay-database-insert-until>ejbPostCreate</delay-database-insert-until> <automatic-key-generation> <generator-type>ORACLE</generator-type> <generator-name>MY_SEQ</generator-name> <key-cache-size>1</key-cache-size> </automatic-key-generation> </weblogic-rdbms-bean> <weblogic-rdbms-bean> <ejb-name>Client</ejb-name> <data-source-jndi-name>testapp-ejb.datasource</data-source-jndi-name> <table-map> <table-name>CLIENT_T</table-name> <field-map> <cmp-field>identityNumber</cmp-field> <dbms-column>IDENTITY_NUMBER</dbms-column> </field-map> </table-map> </weblogic-rdbms-bean> <weblogic-rdbms-bean> <ejb-name>CompanyClient</ejb-name> <data-source-jndi-name>testapp-ejb.datasource</data-source-jndi-name> <table-map> <table-name>table-name attribute of ejb.persistence not set</table-name> <field-map> <cmp-field>companyNumber</cmp-field> <dbms-column>column-name attribute of ejb.persistence-field not set</dbms-column> </field-map> <field-map> <cmp-field>companyName</cmp-field> <dbms-column>column-name attribute of ejb.persistence-field not set</dbms-column> </field-map> <field-map> <cmp-field>companyFiscalNumber</cmp-field> <dbms-column>column-name attribute of ejb.persistence-field not set</dbms-column> </field-map> <field-map> <cmp-field>companyOwnerName</cmp-field> <dbms-column>column-name attribute of ejb.persistence-field not set</dbms-column> </field-map> <field-map> <cmp-field>identityNumber</cmp-field> <dbms-column>IDENTITY_NUMBER</dbms-column> </field-map> </table-map> <use-select-for-update>true</use-select-for-update> <lock-order>1</lock-order> <instance-lock-order>AccessOrder</instance-lock-order> </weblogic-rdbms-bean> <weblogic-rdbms-relation> <relation-name>all-accounts-Client</relation-name> <weblogic-relationship-role> <relationship-role-name>admin</relationship-role-name> <relationship-role-map> <column-map> <foreign-key-column>FK_COL</foreign-key-column> <key-column>PK_COL</key-column> </column-map> </relationship-role-map> </weblogic-relationship-role> </weblogic-rdbms-relation> <weblogic-rdbms-relation> <relation-name>all-accounts-CompanyClient</relation-name> <weblogic-relationship-role> <relationship-role-name>admin</relationship-role-name> <relationship-role-map> <column-map> <foreign-key-column>FK_COL</foreign-key-column> <key-column>PK_COL</key-column> </column-map> </relationship-role-map> </weblogic-relationship-role> </weblogic-rdbms-relation> <weblogic-rdbms-relation> <relation-name>company-main-account</relation-name> <weblogic-relationship-role> <relationship-role-name>anyrole1</relationship-role-name> <relationship-role-map> <column-map> <foreign-key-column>NUMBER_FK</foreign-key-column> <key-column>NUMBER</key-column> </column-map> </relationship-role-map> </weblogic-relationship-role> </weblogic-rdbms-relation> <weblogic-rdbms-relation> <relation-name>user-accounts</relation-name> <table-name>USER_ACCOUNTS</table-name> <weblogic-relationship-role> <relationship-role-name>user</relationship-role-name> <relationship-role-map> <column-map> <foreign-key-column>USER_FK</foreign-key-column> <key-column>IDENTITY_NUMBER</key-column> </column-map> </relationship-role-map> </weblogic-relationship-role> <weblogic-relationship-role> <relationship-role-name>admin</relationship-role-name> <relationship-role-map> <column-map> <foreign-key-column>ACCOUNT_FK</foreign-key-column> <key-column>NUMBER</key-column> </column-map> </relationship-role-map> </weblogic-relationship-role> </weblogic-rdbms-relation> <order-database-operations>true</order-database-operations> <enable-batch-operations>false</enable-batch-operations> <create-default-dbms-tables>Disabled</create-default-dbms-tables> <validate-db-schema-with>TableQuery</validate-db-schema-with> <database-type>ORACLE</database-type> <default-dbms-tables-ddl>c:/tables.ddl</default-dbms-tables-ddl> </weblogic-rdbms-jar> |
From: Ive H. <hel...@us...> - 2006-06-12 06:54:54
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12277/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic Added Files: WebLogicVersion.java Log Message: Initial Revision --- NEW FILE: WebLogicVersion.java --- package org.xdoclet.plugin.weblogic; import java.util.HashMap; import java.util.Map; /** * @author Ive Hellemans * @version $Revision$ */ public class WebLogicVersion { public static final String WEBLOGIC_9_1_EJB = "9.1 EJB"; public static final String WEBLOGIC_9_1_CMP_RDMBS = "9.1 CMP RDBMS"; private static Map versionMap = new HashMap(); private String publicId; private String systemId; private String ns; private String xsdLocation; private boolean isDtd; private String xsiNs; private double version; static { versionMap.put(WEBLOGIC_9_1_EJB, new WebLogicVersion(9.1, "http://www.bea.com/ns/weblogic/90", "http://www.w3.org/2001/XMLSchema-instance" , "http://www.bea.com/ns/weblogic/90/weblogic-ejb-jar.xsd")); versionMap.put(WEBLOGIC_9_1_CMP_RDMBS, new WebLogicVersion(9.1, "http://www.bea.com/ns/weblogic/90", "http://www.w3.org/2001/XMLSchema-instance" , "http://www.bea.com/ns/weblogic/90/weblogic-rdbms20-persistence.xsd")); } /** * Usable for DTDs. * * Not used for now, usable for DTDs when older versions are added. * private WebLogicVersion(double version, String publicId, String systemId) { this.version = version; this.publicId = publicId; this.systemId = systemId; this.isDtd = true; } */ /** * Usable for XSDs. */ private WebLogicVersion(double version, String ns, String xsiNs, String xsdLocation) { this.version = version; this.ns = ns; this.xsiNs = xsiNs; this.xsdLocation = xsdLocation; this.isDtd = false; } public static WebLogicVersion get(String version) { return (WebLogicVersion) versionMap.get(version); } public boolean greaterOrEquals(String ver) { return greaterOrEquals(Double.parseDouble(ver)); } public boolean greaterOrEquals(double ver) { return ver <= getVersion(); } public boolean equals(String ver) { return equals(Double.parseDouble(ver)); } public boolean equals(double ver) { return ver == getVersion(); } /** * Utility method to get the online reference for DTD/XSD */ private static String getLocationUrl(String version) { WebLogicVersion ejbVer = get(version); if (ejbVer == null) { throw new IllegalStateException(); } return ejbVer.isDtd() ? ejbVer.getSystemId() : ejbVer.getXsdLocation(); } public String getPublicId() { return this.publicId; } public String getSchemaLocation() { if (this.ns == null || this.xsdLocation == null) { return null; } return this.ns + " " + this.xsdLocation; } public String getSystemId() { return this.systemId; } public String getNs() { return this.ns; } public String getXsdLocation() { return this.xsdLocation; } public boolean isDtd() { return this.isDtd; } public String getXsiNs() { return this.xsiNs; } public String getJ2eeNs() { return "http://java.sun.com/xml/ns/j2ee"; } public double getVersion() { return this.version; } public static Map fillEntityResolverMap(Map dtds) { Class clz = WebLogicVersion.class; dtds.put(getLocationUrl(WEBLOGIC_9_1_EJB), clz.getResource("xsd/weblogic-ejb-jar-91.xsd")); dtds.put(getLocationUrl(WEBLOGIC_9_1_CMP_RDMBS), clz.getResource("xsd/weblogic-rdbms20-persistence.xsd")); // Referenced by http://www.bea.com/ns/weblogic/90 dtds.put("http://www.bea.com/ns/weblogic/90/weblogic-j2ee.xsd", clz.getResource("xsd/weblogic-j2ee.xsd")); dtds.put("http://java.sun.com/xml/ns/j2ee/j2ee_1_4.xsd", clz.getResource("xsd/j2ee_1_4.xsd")); dtds.put("http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd", clz.getResource("xsd/ejb-jar_2_1.xsd")); // Referenced by http://java.sun.com/xml/ns/j2ee/j2ee_1_4.xsd dtds.put("http://www.w3.org/2001/xml.xsd", clz.getResource("xsd/xml.xsd")); // Referenced by http://www.w3.org/2001/xml.xsd dtds.put("http://www.w3.org/2001/XMLSchema.dtd", clz.getResource("xsd/XMLSchema.dtd")); // Referenced by http://www.w3.org/2001/XMLSchema.dtd dtds.put("http://www.w3.org/2001/datatypes.dtd", clz.getResource("xsd/datatypes.dtd")); // Referenced by http://java.sun.com/xml/ns/j2ee/j2ee_1_4.xsd dtds.put("http://www.ibm.com/webservices/xsd/j2ee_web_services_client_1_1.xsd", clz.getResource("xsd/j2ee_web_services_client_1_1.xsd")); return dtds; } } |
From: Ive H. <hel...@us...> - 2006-06-12 06:54:54
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12277/plugin-weblogic/src/test/java Added Files: log4j.properties Log Message: Initial Revision --- NEW FILE: log4j.properties --- # log4j properties for testing puproses # Set root logger level to DEBUG and its only appender to A1. #log4j.rootLogger=INFO, A1 log4j.rootLogger=ALL, A1 # A1 is set to be a ConsoleAppender. log4j.appender.A1=org.apache.log4j.ConsoleAppender # A1 uses PatternLayout. log4j.appender.A1.layout=org.apache.log4j.PatternLayout log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n log4j.category.org.apache.commons=OFF #log4j.category.org.xdoclet.plugin.ejb=DEBUG #log4j.category.org.xdoclet.plugin.qtags=DEBUG |
From: Ive H. <hel...@us...> - 2006-06-12 06:54:54
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12277/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb Added Files: AbstractWeblogicEjbXmlPluginTestCase.java Log Message: Initial Revision --- NEW FILE: AbstractWeblogicEjbXmlPluginTestCase.java --- package org.xdoclet.plugin.weblogic.ejb; import java.io.File; import java.io.IOException; import java.net.URL; import org.generama.MetadataProvider; import org.generama.tests.AbstractXMLGeneratingPluginTestCase; import org.xdoclet.QDoxMetadataProvider; /** * * * @author Ive Hellemans * @version $Revision$ */ public abstract class AbstractWeblogicEjbXmlPluginTestCase extends AbstractXMLGeneratingPluginTestCase { /* * @see org.generama.tests.AbstractPluginTestCase#createMetadataProvider() */ protected MetadataProvider createMetadataProvider() throws IOException { String basedir = System.getProperty("xdoclet.weblogic.home"); assertNotNull(basedir); URL reader = new File(basedir + "/../testapp-ejb/src/main/java").toURL(); return new QDoxMetadataProvider(new File(reader.getPath())); } /** * Subclasses should return the EJB version for which the test should be run. * * @return One of the versions available in WeblogicVersion */ protected abstract String getWeblogicVersion(); /** * Subclasses should return the EJB version for which the test should be run. * * @return One of the versions available in EjbVersion */ protected abstract String getEjbVersion(); } |
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb/descriptor In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12277/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb/descriptor Added Files: AbstractWeblogicCmpRdbmsJarXmlPluginTestCase.java AbstractWeblogicEjbJarXmlPluginTestCase.java Log Message: Initial Revision --- NEW FILE: AbstractWeblogicEjbJarXmlPluginTestCase.java --- /* * Copyright (c) 2006 * XDoclet Team * All rights reserved. */ package org.xdoclet.plugin.weblogic.ejb.descriptor; import org.generama.JellyTemplateEngine; import org.generama.MetadataProvider; import org.generama.Plugin; import org.generama.WriterMapper; import org.xdoclet.QDoxMetadataProvider; import org.xdoclet.plugin.ejb.EjbConfig; import org.xdoclet.plugin.ejb.util.QDoxCachedMetadataProvider; import org.xdoclet.plugin.weblogic.ejb.AbstractWeblogicEjbXmlPluginTestCase; import org.xdoclet.plugin.weblogic.ejb.descriptor.WeblogicEjbJarXmlPlugin; /** * @author Ive Hellemans * @version $Revision$ */ public abstract class AbstractWeblogicEjbJarXmlPluginTestCase extends AbstractWeblogicEjbXmlPluginTestCase { /* * @see org.generama.tests.AbstractPluginTestCase#createPlugin(org.generama.MetadataProvider, org.generama.WriterMapper) */ protected Plugin createPlugin(MetadataProvider metadataProvider, WriterMapper writerMapper) throws Exception { QDoxMetadataProvider qdoxMetadataProvider = (QDoxMetadataProvider) metadataProvider; EjbConfig config = new EjbConfig(qdoxMetadataProvider, writerMapper); config.setVersion(getEjbVersion()); WeblogicEjbJarXmlPlugin plugin = new WeblogicEjbJarXmlPlugin( new JellyTemplateEngine(), //new QDoxCachedMetadataProvider(qdoxMetadataProvider), writerMapper, config); plugin.setDescription("a description"); plugin.setForce(true); return plugin; } } --- NEW FILE: AbstractWeblogicCmpRdbmsJarXmlPluginTestCase.java --- /* * Copyright (c) 2006 * XDoclet Team * All rights reserved. */ package org.xdoclet.plugin.weblogic.ejb.descriptor; import org.generama.JellyTemplateEngine; import org.generama.MetadataProvider; import org.generama.Plugin; import org.generama.WriterMapper; import org.xdoclet.QDoxMetadataProvider; import org.xdoclet.plugin.ejb.EjbConfig; import org.xdoclet.plugin.ejb.util.QDoxCachedMetadataProvider; import org.xdoclet.plugin.weblogic.ejb.AbstractWeblogicEjbXmlPluginTestCase; import org.xdoclet.plugin.weblogic.ejb.descriptor.WeblogicCmpRdbmsJarXmlPlugin; /** * @author Ive Hellemans * @version $Revision$ */ public abstract class AbstractWeblogicCmpRdbmsJarXmlPluginTestCase extends AbstractWeblogicEjbXmlPluginTestCase { /* * @see org.generama.tests.AbstractPluginTestCase#createPlugin(org.generama.MetadataProvider, org.generama.WriterMapper) */ protected Plugin createPlugin(MetadataProvider metadataProvider, WriterMapper writerMapper) throws Exception { QDoxMetadataProvider qdoxMetadataProvider = (QDoxMetadataProvider) metadataProvider; EjbConfig config = new EjbConfig(qdoxMetadataProvider, writerMapper); config.setVersion(getEjbVersion()); WeblogicCmpRdbmsJarXmlPlugin plugin = new WeblogicCmpRdbmsJarXmlPlugin(new JellyTemplateEngine(), // config.getCachedMetadataProvider(), writerMapper, config); plugin.setCreatedefaultdbmstables("Disabled"); plugin.setDatabasetype("ORACLE"); plugin.setDatasourcejndiname("testapp-ejb.datasource"); plugin.setEnablebatchoperations(Boolean.FALSE); plugin.setForce(true); plugin.setOrderdatabaseoperations(Boolean.TRUE); plugin.setValidatedbschemawith("TableQuery"); plugin.setDefaultdbmstablesddl("c:/tables.ddl"); return plugin; } } |
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb/descriptor/v91 In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12277/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb/descriptor/v91 Added Files: WeblogicCmpRdbmsJarXmlPluginTestCase.java WeblogicEjbJarXmlPluginTestCase.java Log Message: Initial Revision --- NEW FILE: WeblogicCmpRdbmsJarXmlPluginTestCase.java --- /* * Copyright (c) 2006 * XDoclet Team * All rights reserved. */ package org.xdoclet.plugin.weblogic.ejb.descriptor.v91; import java.io.IOException; import java.net.URL; import org.xdoclet.plugin.ejb.EjbVersion; import org.xdoclet.plugin.weblogic.WebLogicVersion; import org.xdoclet.plugin.weblogic.ejb.descriptor.AbstractWeblogicCmpRdbmsJarXmlPluginTestCase; /** * @author Ive Hellemans */ public class WeblogicCmpRdbmsJarXmlPluginTestCase extends AbstractWeblogicCmpRdbmsJarXmlPluginTestCase { protected URL getExpected() throws IOException { return getResourceRelativeToThisPackage("../expected/weblogic-cmp-rdbms-jar-v91.xml"); } protected String getWeblogicVersion() { return WebLogicVersion.WEBLOGIC_9_1_CMP_RDMBS; } protected String getEjbVersion() { return EjbVersion.EJB_2_1; } } --- NEW FILE: WeblogicEjbJarXmlPluginTestCase.java --- /* * Copyright (c) 2006 * XDoclet Team * All rights reserved. */ package org.xdoclet.plugin.weblogic.ejb.descriptor.v91; import java.io.IOException; import java.net.URL; import org.xdoclet.plugin.ejb.EjbVersion; import org.xdoclet.plugin.weblogic.WebLogicVersion; import org.xdoclet.plugin.weblogic.ejb.descriptor.AbstractWeblogicEjbJarXmlPluginTestCase; /** * @author Ive Hellemans */ public class WeblogicEjbJarXmlPluginTestCase extends AbstractWeblogicEjbJarXmlPluginTestCase { protected URL getExpected() throws IOException { return getResourceRelativeToThisPackage("../expected/weblogic-ejb-jar-v91.xml"); } protected String getWeblogicVersion() { return WebLogicVersion.WEBLOGIC_9_1_EJB; } protected String getEjbVersion() { return EjbVersion.EJB_2_1; } } |
From: Ive H. <hel...@us...> - 2006-06-12 06:54:53
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic/ejb In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12277/plugin-weblogic/src/main/java/org/xdoclet/plugin/weblogic/ejb Added Files: WeblogicEjbUtils.java WeblogicCmpUtils.java Log Message: Initial Revision --- NEW FILE: WeblogicCmpUtils.java --- package org.xdoclet.plugin.weblogic.ejb; import java.util.Collection; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.xdoclet.plugin.ejb.Relation; import org.xdoclet.plugin.ejb.RelationManager; import org.xdoclet.plugin.weblogic.qtags.TagLibrary; import com.thoughtworks.qdox.model.DocletTag; import com.thoughtworks.qdox.model.JavaClass; import com.thoughtworks.qdox.model.JavaMethod; /** * Contains some utility methods which simplify working * with the Weblogic specific relation related parameters. * * @author Ive Hellemans * @version $Revision$ */ public class WeblogicCmpUtils { /** The logging object */ protected static Log log = LogFactory.getLog(WeblogicCmpUtils.class); /** The WeblogicEjbUtils used to perfomr standard ejb related stuff. */ protected WeblogicEjbUtils ejbUtils; public WeblogicCmpUtils(WeblogicEjbUtils ejbUtils) { this.ejbUtils = ejbUtils; } public String getDataSourceJndiName(JavaClass clazz, String def) { DocletTag tag = clazz.getTagByName("weblogic.data-source-name"); return tag == null ? def : tag.getValue(); } public String getColumnFor(JavaMethod method) { String result = method.getNamedParameter("ejb.persistence-field", "column-name"); return result == null ? "column-name attribute of ejb.persistence-field not set" : result; } public String getTableNameFor(JavaClass clazz) { String result = clazz.getNamedParameter("ejb.persistence", "table-name"); return result == null ? "table-name attribute of ejb.persistence not set" : result; } /** * Returns a collection of Relation objects. */ public Relation[] getRelationships(Collection metadata) { System.out.println( "getRelationships called" ); long start = System.currentTimeMillis(); RelationManager relationManager = ejbUtils.createRelationManager(metadata); System.out.println( " .. got relationMgr (" + (System.currentTimeMillis() - start) + ")" ); Relation[] relations = relationManager.getRelations(); for (int i = 0; i < relations.length; i++) { relations[i] = ensureColumnMapTagsRight(relations[i]); } System.out.println( " .. inversed" ); return relations; } /** * Returns the name of the join-table-name for a many to many relationship. * * @param relation * @return */ public String getJoinTableNameFor(Relation relation) { String leftJoinTableName = relation.getLeftMethod().getNamedParameter( TagLibrary.WEBLOGIC_RELATION, "join-table-name"); String rightJoinTableName = null; String joinTableName = leftJoinTableName; // do some sanity checking if (leftJoinTableName == null && relation.getRightMethod() != null) { rightJoinTableName = relation.getRightMethod().getNamedParameter( TagLibrary.WEBLOGIC_RELATION, "join-table-name"); joinTableName = rightJoinTableName; } if (leftJoinTableName != null && rightJoinTableName != null) { throw new Error("join-table-name defined on both sides !"); } if (leftJoinTableName == null && rightJoinTableName == null) { throw new Error("join-table-name must be defined for many-to-many relation [" + relation.getName() + "]"); } return joinTableName; } /** * Returns the left group name for this relationship. */ public String getLeftGroupNameFor(Relation relation) { if (relation.getLeftMethod() != null) { return relation.getLeftMethod().getNamedParameter( TagLibrary.WEBLOGIC_RELATION, "group-name"); } return null; } /** * Returns the right group name for this relationship. When not set, * the group name of the left side is returned (to support unidirectional * relationships) */ public String getRightGroupNameFor(Relation relation) { if (relation.getRightMethod() != null) { return relation.getRightMethod().getNamedParameter( TagLibrary.WEBLOGIC_RELATION, "group-name"); } else { return getLeftGroupNameFor(relation); } } // public String getKeyColumn(Relation relation, WeblogicColumnMapTag tag) { // String keyColumn = tag.getKeyColumn(); // if (keyColumn == null) { // throw new Error("Guessing the key column not implemented yet"); // } // return keyColumn; // } // // public String getForeignKeyColumn(Relation relation, WeblogicColumnMapTag tag) { // String keyColumn = tag.getForeignKeyColumn(); // } /** * Returns true if this Relation represents a many-to-many relationship * @param relation * @return */ public boolean isMany2Many(Relation relation) { boolean many2many = relation.isLeftMany() && relation.isRightMany(); log.debug("isMany2Many for relation " + relation.getName() + " returns " + many2many); return many2many; } protected DocletTag[] getAllColumnMapsFor(Relation relation, boolean left) { log.debug("getAllColumnMapsFor " + relation); DocletTag[] result; JavaMethod methodA; JavaMethod methodB; if (left) { methodA = relation.getLeftMethod(); methodB = relation.getRightMethod(); } else { methodA = relation.getRightMethod(); methodB = relation.getLeftMethod(); } if (methodA != null) { // bidirectional result = methodA.getTagsByName( TagLibrary.WEBLOGIC_COLUMN_MAP, true); } else { // unidirectional result = methodB.getTagsByName( TagLibrary.WEBLOGIC_TARGET_COLUMN_MAP, true); } return result; } public DocletTag[] getLeftColumnMapsFor(Relation relation) { return getAllColumnMapsFor(relation, true); } public DocletTag[] getRightColumnMapsFor(Relation relation) { return getAllColumnMapsFor(relation, false); } /** * Makes sure the column-map tags are on the right side and * target-column-map tags left. */ protected Relation ensureColumnMapTagsRight(Relation relation) { boolean db = log.isDebugEnabled(); boolean rightHasTargetColumnMapTags = false; boolean leftHasColumnMapTags = false; if (relation.getLeftMethod() != null) { rightHasTargetColumnMapTags = relation.getLeftMethod().getTagByName("weblogic.target-column-map") != null; } if (relation.getRightMethod() != null) { leftHasColumnMapTags = relation.getRightMethod().getTagByName( TagLibrary.WEBLOGIC_COLUMN_MAP) != null; } if (rightHasTargetColumnMapTags || leftHasColumnMapTags) { if (db) log.debug("Reversing relationship " + relation.getName()); return relation.reverse(); } else { if (db) log.debug("Not Reversing relationship " + relation.getName()); return relation; } } } --- NEW FILE: WeblogicEjbUtils.java --- package org.xdoclet.plugin.weblogic.ejb; import java.util.Collection; import org.xdoclet.plugin.ejb.EjbConfig; import org.xdoclet.plugin.ejb.EjbUtils; import com.thoughtworks.qdox.model.JavaClass; /** * Extension of the EjbUtils class which provides additional support * for Weblogic specific things * * @author Ive Hellemans * @version $Revision$ */ public class WeblogicEjbUtils extends EjbUtils { public WeblogicEjbUtils() { super(); } public WeblogicEjbUtils(EjbConfig config) { super(config); } /** * Returns true if this bean should have a jndi-name. */ public boolean shouldHaveJndiName(JavaClass clazz) { return hasFlag(getViewType(clazz), REMOTE) || isMessageDrivenBean(clazz); } /** * Returns true if this bean should have a local-jndi-name. */ public boolean shouldHaveLocalJndiName(JavaClass clazz) { return hasFlag(getViewType(clazz), LOCAL) && !isMessageDrivenBean(clazz); } //TODO: delete all below public Collection getCMPBeans(Collection metadata) { System.out.println("getCMPBeans called"); Collection collection = super.getCMPBeans(metadata); System.out.println("getCMPBeans done"); return collection; } public Collection getCMPFields(JavaClass clazz) { System.out.print("getCMPFields called for " + clazz.getName()); Collection collection = super.getCMPFields(clazz); System.out.println(" .. done"); return collection; } public boolean shouldGenerate(Object metadata) { System.out.print("shouldGenerate called for " + ((JavaClass)metadata).getName()); boolean result = super.shouldGenerate(metadata); if (result) System.out.println(" .. done"); else System.out.println("\r\n ****************************** FALSE !!!"); return result; } public String getEjbName(JavaClass clazz) { System.out.print("getEjbName called for " + clazz.getName()); String x = super.getEjbName(clazz); System.out.println(" .. done"); return x; } public void sayHello(int i) { System.out.println("hello " + i); } } |
From: Ive H. <hel...@us...> - 2006-06-12 06:54:53
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12277/plugin-weblogic Added Files: maven.xml project.xml project.properties .cvsignore Log Message: Initial Revision --- NEW FILE: .cvsignore --- target velocity.log* maven.log* junit*.properties *.ipr *.iws *.iml lib --- NEW FILE: maven.xml --- <project default="main"> </project> --- NEW FILE: project.properties --- xdoclet.qtags.namespace = weblogic xdoclet.qtags.generate = true xdoclet.weblogic.home = ${basedir} maven.junit.sysproperties = xdoclet.weblogic.home maven.mode.online=false # maven.test.skip=true --- NEW FILE: project.xml --- <?xml version="1.0" encoding="UTF-8"?> <project> <extend>${basedir}/../project.xml</extend> <artifactId>xdoclet-plugin-weblogic</artifactId> <name>xdoclet-plugin-weblogic</name> <developers> <developer> <name>Ive Hellemans</name> <id>none</id> <email>Iv.Hellemans (at) hiquality dot be</email> <organization/> <roles> <role>Developer</role> </roles> </developer> </developers> <dependencies> <dependency> <groupId>geronimo-spec</groupId> <artifactId>geronimo-spec-ejb</artifactId> <version>2.1-rc4</version> </dependency> <!-- build time only --> <dependency> <groupId>${pom.groupId}</groupId> <artifactId>xdoclet-plugin-qtags</artifactId> <version>${pom.currentVersion}</version> </dependency> <dependency> <groupId>${pom.groupId}</groupId> <artifactId>xdoclet-plugin-ejb</artifactId> <version>${pom.currentVersion}</version> </dependency> </dependencies> </project> |
From: Ive H. <hel...@us...> - 2006-06-12 06:54:44
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12126/plugin-weblogic/src/test/java/org/xdoclet/plugin Log Message: Directory /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin added to the repository |
From: Ive H. <hel...@us...> - 2006-06-12 06:54:43
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12126/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb Log Message: Directory /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb added to the repository |
From: Ive H. <hel...@us...> - 2006-06-12 06:54:41
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb/descriptor/v91 In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12126/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb/descriptor/v91 Log Message: Directory /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic/ejb/descriptor/v91 added to the repository |
From: Ive H. <hel...@us...> - 2006-06-12 06:54:41
|
Update of /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12126/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic Log Message: Directory /cvsroot/xdoclet-plugins/xdoclet-plugins/plugin-weblogic/src/test/java/org/xdoclet/plugin/weblogic added to the repository |