From: Vance K. <va...@us...> - 2007-05-07 13:32:33
|
User: vancek Date: 07/05/07 06:32:34 Modified: andromda-ejb3/src/site changes.xml andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades EJB3OperationFacadeLogicImpl.java andromda-ejb3/src/test/expected cartridge-output.zip andromda-ejb3/src/site/axdoc howto9.xml andromda-ejb3/src/main/resources/templates/ejb3 EntityEmbeddable.vsl andromda-ejb3/src/main/uml EJB3MetafacadeModel.xml.zip Added: andromda-ejb3/src/site/axdoc namespace.xml profile.xml Log: jira ejb-53 - remove embeddable when explicitly defining mapped superclass Revision Changes Path 1.17 +7 -0 cartridges/andromda-ejb3/src/site/changes.xml Index: changes.xml =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/site/changes.xml,v retrieving revision 1.16 retrieving revision 1.17 diff -u -w -r1.16 -r1.17 --- changes.xml 29 Apr 2007 13:45:06 -0000 1.16 +++ changes.xml 7 May 2007 13:32:30 -0000 1.17 @@ -462,6 +462,13 @@ To add more than one cascade property, simply comma separate the types when setting the value of the @andromda.hibernate.cascade tagged value. </action> + <action dev="vancek" due-to="khwalk" type="fix"> + JIRA EJB-53 - When a modelled entity with a MappedSuperclass stereotype has an association to another + entity, the association definition in this other entity is incorrectly named. The resolution is to + avoid appending Embeddable to the mapped superclass and don't apply a naming pattern when a mapped superclass + is explicity modelled. It is fine to apply this naming pattern when this is not explicitly modelled and + instance scoped operations exist on the entity and a mapped superclass is generated. + </action> </release> </body> </document> \ No newline at end of file 1.7 +19 -3 cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3OperationFacadeLogicImpl.java Index: EJB3OperationFacadeLogicImpl.java =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3OperationFacadeLogicImpl.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -w -r1.6 -r1.7 --- EJB3OperationFacadeLogicImpl.java 11 Aug 2006 05:49:46 -0000 1.6 +++ EJB3OperationFacadeLogicImpl.java 7 May 2007 13:32:30 -0000 1.7 @@ -30,9 +30,9 @@ */ protected boolean handleIsBusinessOperation() { - return !this.hasStereotype(EJB3Profile.STEREOTYPE_CREATE_METHOD) && - !this.hasStereotype(EJB3Profile.STEREOTYPE_FINDER_METHOD) && - !this.hasStereotype(EJB3Profile.STEREOTYPE_SELECT_METHOD); + return !this.isCreateMethod() && + !this.isFinderMethod() && + !this.isSelectMethod(); } /** @@ -44,6 +44,22 @@ } /** + * @see org.andromda.cartridges.ejb3.metafacades.EJB3OperationFacadeLogic#handleIsCreateMethod() + */ + protected boolean handleIsCreateMethod() + { + return this.hasStereotype(EJB3Profile.STEREOTYPE_CREATE_METHOD); + } + + /** + * @see org.andromda.cartridges.ejb3.metafacades.EJB3OperationFacadeLogic#handleIsFinderMethod() + */ + protected boolean handleIsFinderMethod() + { + return this.hasStereotype(EJB3Profile.STEREOTYPE_FINDER_METHOD) || this.isQuery(); + } + + /** * @see org.andromda.cartridges.ejb3.metafacades.EJB3OperationFacadeLogic#handleIsPrePersist() */ protected boolean handleIsPrePersist() 1.9 +44 -41 cartridges/andromda-ejb3/src/test/expected/cartridge-output.zip <<Binary file>> 1.5 +53 -38 cartridges/andromda-ejb3/src/site/axdoc/howto9.xml Index: howto9.xml =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/site/axdoc/howto9.xml,v retrieving revision 1.4 retrieving revision 1.5 diff -u -w -r1.4 -r1.5 --- howto9.xml 17 Feb 2007 14:09:09 -0000 1.4 +++ howto9.xml 7 May 2007 13:32:32 -0000 1.5 @@ -30,9 +30,9 @@ <subsection name="Non Interhiting Entities"> <p> In a mapped superclass scenario, an entity inherits from a superclass that has persistent state - and mapping information, but the super class isn't an entity and is not mapped to a relation table. + and mapping information, but the super class is NOT an entity and is not mapped to a relation table. This is the strategy employed by the EJB3 cartridge when generating non-inheriting entities if - <code>instance</code> scoped operations are modelled on the entity. + <code>instance</code> scoped operations exist on the entity. </p> <p> A mapped superclass is generated containing @@ -41,16 +41,47 @@ and relationship mapping information exists in the mapped superclass. The mapped superclass is regenerated on every run, however the subclass is not. </p> + <p class="highlight"> + Until we declare entity pojos via orm.xml instead of annotations, the inheriting subclass + in the latter scenario will require manual modifications if you change certain metamodel + tags. + </p> </subsection> <a name="Mapped_Superclasses"/> <subsection name="Mapped Superclasses"> <p> - To explicity defined an entity as a mapped superclass, model the - <![CDATA[<<MappedSuperclass>>]]> stereotype on the root entity. + To explicity define an entity as a mapped superclass, model the + <![CDATA[<<MappedSuperclass>>]]> stereotype on the root entity. In the past, you had to + model the <![CDATA[<<Entity>>]]> stereotype as well on this class, but this is no longer + necessary if you are using the latest cartridge source. + </p> + <p class="highlight"> + If you do not want to model the <![CDATA[<<Entity>>]]> stereotype as well - in theory, a mapped + superclass is NOT an entity and it doesn't make sense for this stereotype to exist - you must + also disable the following two constraints in your <code>andromda.xml</code> by adding the following + <b>constraints</b> section. Rest assured that by disabling these constraints, your are not + vulnerable to modelling flaws, since the constraints that exist on the <i>EJB3EntityFacade</i> will + enforce these constraints. +<source language="xml"><![CDATA[ + <repository name="netBeansMDR"> + <models> + <model> + <uri>${model.uri}</uri> + <moduleSearchLocations> + <location patterns="**/*.xml.zip">${settings.localRepository}/org/andromda/profiles/</location> + </moduleSearchLocations> + <constraints enforceAll="true"> + <constraint enforce="false">org::andromda::metafacades::uml::Entity::entities can only generalize other entities</constraint> + <constraint enforce="false">org::andromda::metafacades::uml::Entity::entity must have at least one primary key</constraint> + </constraints> + </model> + </models> + </repository> +]]></source> </p> <p class="highlight"> - You must explicity define your identifiers either in the mapped superclass or in the inheriting - subclass entities. + In this case, you must explicity define your identifiers either in the mapped superclass or in + the inheriting subclass entity. </p> <p> The following is an example of this type of inheritance where the <code>Vehicle</code> mapped @@ -68,7 +99,7 @@ </p> <p> <ul> - <li class="gen"><a class="changed" href="howto/org/andromda/test/howto9/a/VehicleEmbeddable.java"><code>VehicleEmbeddable.java</code></a></li> + <li class="gen"><a class="changed" href="howto/org/andromda/test/howto9/a/Vehicle.java"><code>Vehicle.java</code></a></li> <li class="gen"><a class="changed" href="howto/org/andromda/test/howto9/a/CarEmbeddable.java"><code>CarEmbeddable.java</code></a></li> <li class="impl"><a class="changed" href="howto/org/andromda/test/howto9/a/Car.java"><code>Car.java</code></a></li> <li class="gen"><a href="howto/org/andromda/test/howto9/a/CarType.java"><code>CarType.java</code></a></li> @@ -91,45 +122,29 @@ </ul> </p> <p> - It's worthwhile to note that only a <code>VehicleEmbeddable</code> class is generated which - contains all the mapping information. + It's worthwhile to note that only a <code>Vehicle</code> class is generated which + contains all the mapping information. In this case, because the <code>Vehicle</code> class + was explicitly defined as a mapped superclass, the naming pattern does NOT append + <code>Embeddable</code> to the class name. This class is regenerated every time AndroMDA runs; any manual changes to this - class is overwritten. + class will be overwritten. </p> <p> - A <code>CarEmbeddable</code> mapped superclass with all mapping information - is generated and a <code>Car</code> implementation entity classes. Remember that this only happens - if the entity contains <code>instance</code> scoped operations. + The process also generates a <code>CarEmbeddable</code> mapped superclass, containing all + mapping information, along with an extending <code>Car</code> implementation entity class. + Remember that this only happens if the entity contains <code>instance</code> scoped operations. + The naming pattern here dictates that <code>Embeddable</code> is appended to the mapped superclass. + Remember this is NOT the case when you explicitly define the a mapped superclass. </p> <p> - The the Person entity operates under the normal EJB3 cartridge + The Person entity operates under normal EJB3 cartridge guidelines since there is no inheritance hierarchy for this entity. Therefore, only a - <code>Person</code> class is generated and should not be modified. + <code>Person</code> class is generated and should not be modified since it will be overwritten + during the next build. </p> - <p> + <p class="highlight"> If you are going to enable manageable entities, you must ONLY enable - your identifiers in the subclass and not the parent mapped superclass. Furthermore, you must - also disable - the following two constraints in your <code>andromda.xml</code> by adding the following - <b>constraints</b> section. Rest assured that by disabling these constraints, your are not - vulnerable to modelling flaws, since the constraints on the <i>EJB3EntityFacade</i> will - enforce these constraints. -<source language="xml"><![CDATA[ - <repository name="netBeansMDR"> - <models> - <model> - <uri>${model.uri}</uri> - <moduleSearchLocations> - <location patterns="**/*.xml.zip">${settings.localRepository}/org/andromda/profiles/</location> - </moduleSearchLocations> - <constraints enforceAll="true"> - <constraint enforce="false">org::andromda::metafacades::uml::Entity::entities can only generalize other entities</constraint> - <constraint enforce="false">org::andromda::metafacades::uml::Entity::entity must have at least one primary key</constraint> - </constraints> - </model> - </models> - </repository> -]]></source> + your identifiers in the subclass and not the parent mapped superclass. </p> </subsection> <a name="Single_Table_Strategy"/> 1.1 cartridges/andromda-ejb3/src/site/axdoc/namespace.xml Index: namespace.xml =================================================================== <?xml version="1.0" encoding="UTF-8"?> <document><properties><title>AndroMDA EJB3 Cartridge Namespace</title></properties><body> <section name="AndroMDA EJB3 Cartridge Namespace Components"><ul> <li>cartridge</li> <li>metafacades</li> <li>profile</li> </ul></section> <section name="AndroMDA EJB3 Cartridge Namespace Properties"><div class="namespacePropertyGroup"><a name="Cache" class="namespacePropertyGroup">Cache</a><ul><li><a href="#hibernateAssociationCache" title="Optional, defaults to 'TRANSACTIONAL'">hibernateAssociationCache</a></li><li><a href="#hibernateCacheProvider" title="Optional, no default value available">hibernateCacheProvider</a></li><li><a href="#hibernateEnableAssociationsCache" title="Optional, defaults to 'false'">hibernateEnableAssociationsCache</a></li><li><a href="#hibernateEnableCache" title="Optional, defaults to 'false'">hibernateEnableCache</a></li><li><a href="#hibernateEntityCache" title="Optional, defaults to 'TRANSACTIONAL'">hibernateEntityCache</a></li><li><a href="#hibernateTreecacheMbeanObject" title="Optional, no default value available">hibernateTreecacheMbeanObject</a></li><li><a href="#hibernateUseQueryCache" title="Optional, defaults to 'false'">hibernateUseQueryCache</a></li><li><a href="#useDefaultCacheRegion" title="Optional, defaults to 'false'">useDefaultCacheRegion</a></li></ul></div><div class="namespacePropertyGroup"><a name="Clustering" class="namespacePropertyGroup">Clustering</a><ul><li><a href="#enableClustering" title="Optional, defaults to 'false'">enableClustering</a></li></ul></div><div class="namespacePropertyGroup"><a name="DAO Properties" class="namespacePropertyGroup">DAO Properties</a><ul><li><a href="#daoBaseNamePattern" title="Optional, defaults to '{0}DaoBase'">daoBaseNamePattern</a></li><li><a href="#daoDefaultExceptionNamePattern" title="Optional, defaults to '{0}DaoException'">daoDefaultExceptionNamePattern</a></li><li><a href="#daoImplementationNamePattern" title="Optional, defaults to '{0}DaoImpl'">daoImplementationNamePattern</a></li><li><a href="#daoInheritanceEnabled" title="Optional, defaults to 'false'">daoInheritanceEnabled</a></li><li><a href="#daoNamePattern" title="Optional, defaults to '{0}Dao'">daoNamePattern</a></li><li><a href="#enableDaoPropertiesCreateMethod" title="Optional, defaults to 'true'">enableDaoPropertiesCreateMethod</a></li></ul></div><div class="namespacePropertyGroup"><a name="Entity Properties" class="namespacePropertyGroup">Entity Properties</a><ul><li><a href="#entityAggregationCascade" title="Optional, no default value available">entityAggregationCascade</a></li><li><a href="#entityCompositeCascade" title="Optional, no default value available">entityCompositeCascade</a></li><li><a href="#entityDefaultCascade" title="Optional, defaults to 'NONE'">entityDefaultCascade</a></li><li><a href="#entityDefaultEnumLiteralColumnLength" title="Optional, defaults to '20'">entityDefaultEnumLiteralColumnLength</a></li><li><a href="#entityDefaultGeneratorAllocationSize" title="Optional, defaults to '1'">entityDefaultGeneratorAllocationSize</a></li><li><a href="#entityDefaultGeneratorInitialValue" title="Optional, defaults to '1'">entityDefaultGeneratorInitialValue</a></li><li><a href="#entityDefaultGeneratorType" title="Optional, defaults to 'AUTO'">entityDefaultGeneratorType</a></li><li><a href="#entityDefaultTemporalType" title="Optional, defaults to 'TIMESTAMP'">entityDefaultTemporalType</a></li><li><a href="#entityDiscriminatorColumnName" title="Optional, defaults to 'TYPE'">entityDiscriminatorColumnName</a></li><li><a href="#entityDiscriminatorType" title="Optional, defaults to 'STRING'">entityDiscriminatorType</a></li><li><a href="#entityGenericFinders" title="Optional, defaults to 'true'">entityGenericFinders</a></li><li><a href="#entityInheritanceStrategy" title="Optional, defaults to 'SINGLE_TABLE'">entityInheritanceStrategy</a></li><li><a href="#entityViewType" title="Optional, defaults to 'local'">entityViewType</a></li></ul></div><div class="namespacePropertyGroup"><a name="JDBC" class="namespacePropertyGroup">JDBC</a><ul><li><a href="#connectionUrl" title="Optional, no default value available">connectionUrl</a></li><li><a href="#dataSource" title="Optional, no default value available">dataSource</a></li><li><a href="#dataSourceName" title="Optional, no default value available">dataSourceName</a></li><li><a href="#driver" title="Optional, no default value available">driver</a></li><li><a href="#entityManagerJTADataSource" title="Optional, defaults to 'java:/DefaultDS'">entityManagerJTADataSource</a></li><li><a href="#entityManagerName" title="Optional, no default value available">entityManagerName</a></li><li><a href="#hibernateDialect" title="Optional, defaults to 'org.hibernate.dialect.MySQLDialect'">hibernateDialect</a></li><li><a href="#hibernateHbm2DDLAuto" title="Optional, defaults to 'update'">hibernateHbm2DDLAuto</a></li><li><a href="#hibernateJdbcBatchSize" title="Optional, no default value available">hibernateJdbcBatchSize</a></li><li><a href="#hibernateJdbcFetchSize" title="Optional, no default value available">hibernateJdbcFetchSize</a></li><li><a href="#hibernateJdbcUseScrollableResultSet" title="Optional, no default value available">hibernateJdbcUseScrollableResultSet</a></li><li><a href="#hibernateJdbcUseStreamsForBinary" title="Optional, no default value available">hibernateJdbcUseStreamsForBinary</a></li><li><a href="#hibernateMaxFetchDepth" title="Optional, no default value available">hibernateMaxFetchDepth</a></li><li><a href="#hibernateShowSql" title="Optional, no default value available">hibernateShowSql</a></li><li><a href="#jarFiles" title="Optional, no default value available">jarFiles</a></li><li><a href="#password" title="Optional, no default value available">password</a></li><li><a href="#username" title="Optional, no default value available">username</a></li></ul></div><div class="namespacePropertyGroup"><a name="MDB Properties" class="namespacePropertyGroup">MDB Properties</a><ul><li><a href="#messageDrivenDestinationType" title="Optional, defaults to 'javax.jms.Queue'">messageDrivenDestinationType</a></li><li><a href="#messageDrivenTopicSubscriptionDurability" title="Optional, defaults to 'NonDurable'">messageDrivenTopicSubscriptionDurability</a></li></ul></div><div class="namespacePropertyGroup"><a name="Name Patterns" class="namespacePropertyGroup">Name Patterns</a><ul><li><a href="#defaultServiceExceptionNamePattern" title="Optional, defaults to '{0}Exception'">defaultServiceExceptionNamePattern</a></li><li><a href="#embeddedValueImplementationNamePattern" title="Optional, defaults to '{0}Impl'">embeddedValueImplementationNamePattern</a></li><li><a href="#entityCompositePrimaryKeyNamePattern" title="Optional, defaults to '{0}PK'">entityCompositePrimaryKeyNamePattern</a></li><li><a href="#entityEmbeddableNamePattern" title="Optional, defaults to '{0}Embeddable'">entityEmbeddableNamePattern</a></li><li><a href="#entityImplementationNamePattern" title="Optional, defaults to '{0}Impl'">entityImplementationNamePattern</a></li><li><a href="#entityListenerNamePattern" title="Optional, defaults to '{0}Listener'">entityListenerNamePattern</a></li><li><a href="#entityNamePattern" title="Optional, defaults to '{0}'">entityNamePattern</a></li><li><a href="#implementationOperationNamePattern" title="Optional, defaults to 'handle{0}'">implementationOperationNamePattern</a></li><li><a href="#interceptorNamePattern" title="Optional, defaults to '{0}'">interceptorNamePattern</a></li><li><a href="#jndiNamePrefix" title="Optional, no default value available">jndiNamePrefix</a></li><li><a href="#labelCollectionNamePattern" title="Optional, defaults to '{0}Labels'">labelCollectionNamePattern</a></li><li><a href="#labelSingleNamePattern" title="Optional, defaults to '{0}Label'">labelSingleNamePattern</a></li><li><a href="#manageableCreateExceptionNamePattern" title="Optional, defaults to '{0}CreateManageableException'">manageableCreateExceptionNamePattern</a></li><li><a href="#manageableDeleteExceptionNamePattern" title="Optional, defaults to '{0}DeleteManageableException'">manageableDeleteExceptionNamePattern</a></li><li><a href="#manageableReadExceptionNamePattern" title="Optional, defaults to '{0}ReadManageableException'">manageableReadExceptionNamePattern</a></li><li><a href="#manageableServiceBaseNamePattern" title="Optional, defaults to '{0}Base'">manageableServiceBaseNamePattern</a></li><li><a href="#manageableUpdateExceptionNamePattern" title="Optional, defaults to '{0}UpdateManageableException'">manageableUpdateExceptionNamePattern</a></li><li><a href="#messageDrivenDurableSubscriptionIdPattern" title="Optional, defaults to '{0}SubscriptionId'">messageDrivenDurableSubscriptionIdPattern</a></li><li><a href="#messageDrivenImplementationNamePattern" title="Optional, defaults to '{0}MDBBeanImpl'">messageDrivenImplementationNamePattern</a></li><li><a href="#messageDrivenListenerNamePattern" title="Optional, defaults to '{0}Listener'">messageDrivenListenerNamePattern</a></li><li><a href="#messageDrivenNamePattern" title="Optional, defaults to '{0}MDBBean'">messageDrivenNamePattern</a></li><li><a href="#messageDrivenTestNamePattern" title="Optional, defaults to '{0}Test'">messageDrivenTestNamePattern</a></li><li><a href="#messageDrivenTestPackageNamePattern" title="Optional, defaults to '{0}.test'">messageDrivenTestPackageNamePattern</a></li><li><a href="#serviceBaseNamePattern" title="Optional, defaults to '{0}Base'">serviceBaseNamePattern</a></li><li><a href="#serviceDelegateNamePattern" title="Optional, defaults to '{0}Delegate'">serviceDelegateNamePattern</a></li><li><a href="#serviceImplementationNamePattern" title="Optional, defaults to '{0}BeanImpl'">serviceImplementationNamePattern</a></li><li><a href="#serviceInterfaceNamePattern" title="Optional, defaults to '{0}'">serviceInterfaceNamePattern</a></li><li><a href="#serviceListenerNamePattern" title="Optional, defaults to '{0}Listener'">serviceListenerNamePattern</a></li><li><a href="#serviceLocalInterfaceNamePattern" title="Optional, defaults to '{0}Local'">serviceLocalInterfaceNamePattern</a></li><li><a href="#serviceNamePattern" title="Optional, defaults to '{0}Bean'">serviceNamePattern</a></li><li><a href="#serviceOperationTestNamePattern" title="Optional, defaults to 'test{0}'">serviceOperationTestNamePattern</a></li><li><a href="#serviceRemoteInterfaceName" title="Optional, defaults to '{0}Remote'">serviceRemoteInterfaceName</a></li><li><a href="#serviceTestNamePattern" title="Optional, defaults to '{0}Test'">serviceTestNamePattern</a></li><li><a href="#serviceTestPackageNamePattern" title="Optional, defaults to '{0}.test'">serviceTestPackageNamePattern</a></li><li><a href="#webServiceInterfaceNamePattern" title="Optional, defaults to '{0}WSInterface'">webServiceInterfaceNamePattern</a></li></ul></div><div class="namespacePropertyGroup"><a name="Other Properties" class="namespacePropertyGroup">Other Properties</a><ul><li><a href="#allowDefaultServiceException" title="Optional, defaults to 'true'">allowDefaultServiceException</a></li><li><a href="#associationCollectionType" title="Optional, defaults to 'set'">associationCollectionType</a></li><li><a href="#associationEndCollectionIndexName" title="Optional, no default value available">associationEndCollectionIndexName</a></li><li><a href="#associationEndCollectionIndexType" title="Optional, defaults to 'datatype::String'">associationEndCollectionIndexType</a></li><li><a href="#compositionDefinesEagerLoading" title="Optional, defaults to 'true'">compositionDefinesEagerLoading</a></li><li><a href="#defaultCollectionInterface" title="Optional, defaults to 'java.util.Set'">defaultCollectionInterface</a></li><li><a href="#ejb3TypeMappingsUri" title="Optional, defaults to 'Hibernate'">ejb3TypeMappingsUri</a></li><li><a href="#ejb3TypesPackage" title="Optional, defaults to 'org.andromda.ejb3'">ejb3TypesPackage</a></li><li><a href="#javaTypeConversionIgnoreList" title="Optional, no default value available">javaTypeConversionIgnoreList</a></li><li><a href="#listTypeImplementation" title="Optional, defaults to 'java.util.ArrayList'">listTypeImplementation</a></li><li><a href="#manageableServiceLocatorName" title="Optional, defaults to 'ManageableServiceLocator'">manageableServiceLocatorName</a></li><li><a href="#mapTypeImplementation" title="Optional, defaults to 'java.util.HashMap'">mapTypeImplementation</a></li><li><a href="#parameterRequiredCheck" title="Optional, defaults to 'true'">parameterRequiredCheck</a></li><li><a href="#persistenceContainerName" title="Optional, defaults to 'jboss'">persistenceContainerName</a></li><li><a href="#persistenceContextUnitName" title="Optional, no default value available">persistenceContextUnitName</a></li><li><a href="#persistenceProviderExtensions" title="Optional, defaults to 'none'">persistenceProviderExtensions</a></li><li><a href="#queryUseNamedParameters" title="Optional, defaults to 'true'">queryUseNamedParameters</a></li><li><a href="#seamEnabled" title="Optional, defaults to 'false'">seamEnabled</a></li><li><a href="#setTypeImplementation" title="Optional, defaults to 'java.util.TreeSet'">setTypeImplementation</a></li><li><a href="#specificCollectionInterfaces" title="Optional, defaults to 'false'">specificCollectionInterfaces</a></li><li><a href="#transactionType" title="Optional, defaults to 'REQUIRED'">transactionType</a></li><li><a href="#valueObjectName" title="Optional, defaults to '{0}'">valueObjectName</a></li><li><a href="#valueObjectPackage" title="Optional, defaults to '{0}'">valueObjectPackage</a></li><li><a href="#xmlEncoding" title="Optional, defaults to 'UTF-8'">xmlEncoding</a></li></ul></div><div class="namespacePropertyGroup"><a name="Outlet Properties" class="namespacePropertyGroup">Outlet Properties</a><div class="namespacePropertyGroupDocumentation"><documentation> Defines the locations to which output is generated. </documentation></div><ul><li><a href="#application-config" title="Required">application-config</a></li><li><a href="#application-metainf" title="Required">application-metainf</a></li><li><a href="#commons" title="Required">commons</a></li><li><a href="#dao-impls" title="Required">dao-impls</a></li><li><a href="#daos" title="Required">daos</a></li><li><a href="#entity-beans" title="Required">entity-beans</a></li><li><a href="#entity-config" title="Required">entity-config</a></li><li><a href="#entity-impls" title="Required">entity-impls</a></li><li><a href="#message-driven-beans" title="Required">message-driven-beans</a></li><li><a href="#message-driven-impls" title="Required">message-driven-impls</a></li><li><a href="#services" title="Required">services</a></li><li><a href="#session-beans" title="Required">session-beans</a></li><li><a href="#session-config" title="Required">session-config</a></li><li><a href="#session-impls" title="Required">session-impls</a></li><li><a href="#test-config" title="Required">test-config</a></li><li><a href="#test-impls" title="Required">test-impls</a></li><li><a href="#tests" title="Required">tests</a></li><li><a href="#user-types" title="Required">user-types</a></li></ul></div><div class="namespacePropertyGroup"><a name="Security Properties" class="namespacePropertyGroup">Security Properties</a><ul><li><a href="#manageableRolesAllowed" title="Optional, defaults to 'Admin'">manageableRolesAllowed</a></li><li><a href="#securityRealm" title="Optional, no default value available">securityRealm</a></li></ul></div><div class="namespacePropertyGroup"><a name="Service Properties" class="namespacePropertyGroup">Service Properties</a><ul><li><a href="#serviceLocatorName" title="Optional, defaults to 'ServiceLocator'">serviceLocatorName</a></li><li><a href="#serviceViewType" title="Optional, defaults to 'remote'">serviceViewType</a></li></ul></div><div class="namespacePropertyGroup"><a name="Transactions" class="namespacePropertyGroup">Transactions</a><ul><li><a href="#hibernateTransactionAutoCloseSession" title="Optional, no default value available">hibernateTransactionAutoCloseSession</a></li><li><a href="#hibernateTransactionFlushBeforeCompletion" title="Optional, no default value available">hibernateTransactionFlushBeforeCompletion</a></li><li><a href="#hibernateTransactionManagerLookupClass" title="Optional, no default value available">hibernateTransactionManagerLookupClass</a></li></ul></div><div class="namespacePropertyGroup"><a name="WebService Properties" class="namespacePropertyGroup">WebService Properties</a><ul><li><a href="#webServiceContextRoot" title="Required">webServiceContextRoot</a></li><li><a href="#webServiceDefaultParameterStyle" title="Optional, defaults to 'wrapped'">webServiceDefaultParameterStyle</a></li><li><a href="#webServiceDefaultStyle" title="Optional, defaults to 'rpc'">webServiceDefaultStyle</a></li><li><a href="#webServiceDefaultUse" title="Optional, defaults to 'literal'">webServiceDefaultUse</a></li><li><a href="#webServiceEnabled" title="Required">webServiceEnabled</a></li><li><a href="#webServiceNamespacePattern" title="Optional, defaults to 'http://{0}/{1}'">webServiceNamespacePattern</a></li><li><a href="#webServiceQualifiedNameLocalPartPattern" title="Optional, defaults to '{0}'">webServiceQualifiedNameLocalPartPattern</a></li><li><a href="#webServiceReverseNamespace" title="Optional, defaults to 'false'">webServiceReverseNamespace</a></li><li><a href="#webServiceUrlPattern" title="Required">webServiceUrlPattern</a></li></ul></div><p> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="services" class="namespacePropertyTitle">services</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location to which all service classes (including the service locator(s)) will be generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="entity-beans" class="namespacePropertyTitle">entity-beans</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The directory to which Entity POJOs are generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="entity-impls" class="namespacePropertyTitle">entity-impls</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location to which Entity POJO implementation files are generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="entity-config" class="namespacePropertyTitle">entity-config</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location where the persistence XML descriptor is generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="session-beans" class="namespacePropertyTitle">session-beans</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The directory to which Session Bean files are generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="session-impls" class="namespacePropertyTitle">session-impls</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The directory to which Session Bean implementation files are generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="session-config" class="namespacePropertyTitle">session-config</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location where the ejb-jar.xml XML descriptor is generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="daos" class="namespacePropertyTitle">daos</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location to which EJB3 DAOs, and any support classes are generated. <p> Please <strong>NOTE</strong> that the dao implementation classes will also be generated to this location when <strong>no operations</strong> are present on the entity with <em>classifier scope</em>. </p> </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="dao-impls" class="namespacePropertyTitle">dao-impls</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location to which EJB3 DAO implementation classes will be generated (if there are any classifier scoped business operations modeled on any entity). <p> Please <strong>NOTE</strong> that the dao implementation classes will be generated to the <em>daos</em> outlet when <strong>no operations</strong> are present on the entity with <em>classifier scope</em>. </p> </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="application-config" class="namespacePropertyTitle">application-config</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location where the application specific XML descriptors are generated. i.e the application login-config.xml descriptor. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="application-metainf" class="namespacePropertyTitle">application-metainf</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location where the application specific XML descriptors that are packaged in the ear file are generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="message-driven-beans" class="namespacePropertyTitle">message-driven-beans</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The directory to which Message Driven Bean files are generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="message-driven-impls" class="namespacePropertyTitle">message-driven-impls</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The directory to which Message Driven Bean implementation files are generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="commons" class="namespacePropertyTitle">commons</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The directory to which common classes for session beans, entity POJOs or MDB are generated </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="user-types" class="namespacePropertyTitle">user-types</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location to which user-types such as enumeration are generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="test-config" class="namespacePropertyTitle">test-config</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location where the JBoss Embedded/Microcontainer configuration files are generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="tests" class="namespacePropertyTitle">tests</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location where auto generated session bean test classes are generated. These are typically the helper classes which are re-generated. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="test-impls" class="namespacePropertyTitle">test-impls</a><a href="#Outlet Properties" title="Go to Outlet Properties namespace element group">(Back to Outlet Properties)</a></td></tr><tr><td><div class="required">Required property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The location where manual session bean test classes are generated. These will not be regenerated and require user intervention. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="entityManagerName" class="namespacePropertyTitle">entityManagerName</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The name assigned to the entity manager. If no name is specified, the name of the containing persistence archive without the .par extension is used. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="entityManagerJTADataSource" class="namespacePropertyTitle">entityManagerJTADataSource</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> Default value: <code class="defaultValue">java:/DefaultDS</code></td></tr><tr><td class="documentation" colspan="2"><documentation> Specifies the global JNDI name of the JTA data source. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="hibernateHbm2DDLAuto" class="namespacePropertyTitle">hibernateHbm2DDLAuto</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> Default value: <code class="defaultValue">update</code></td></tr><tr><td class="documentation" colspan="2"><documentation> Automatically export schema DDL to the database when deployed. With create-drop, the database schema will be dropped when the entity is undeployed. Permitted values are: <ul> <li>update</li> <li>create</li> <li>create-drop</li> <li>none</li> </ul> </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="hibernateDialect" class="namespacePropertyTitle">hibernateDialect</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> Default value: <code class="defaultValue">org.hibernate.dialect.MySQLDialect</code></td></tr><tr><td class="documentation" colspan="2"><documentation> The SQL dialect of the database. <ul> <li>org.hibernate.dialect.MySQLDialect</li> <li>org.hibernate.dialect.MySQLInnoDBDialect</li> <li>org.hibernate.dialect.MySQLMyISAMDialect</li> <li>org.hibernate.dialect.HSQLDialect</li> <li>org.hibernate.dialect.PostgreSQLDialect</li> <li>org.hibernate.dialect.DB2Dialect</li> <li>org.hibernate.dialect.OracleDialect</li> <li>org.hibernate.dialect.Oracle9Dialect</li> <li>org.hibernate.dialect.SybaseDialect</li> <li>org.hibernate.dialect.SQLServerDialect</li> <li>org.hibernate.dialect.SAPDBDialect</li> <li>org.hibernate.dialect.InformixDialect</li> <li>org.hibernate.dialect.IngresDialect</li> <li>org.hibernate.dialect.ProgressDialect</li> <li>org.hibernate.dialect.InterbaseDialect</li> <li>org.hibernate.dialect.PointbaseDialect</li> <li>org.hibernate.dialect.FrontbaseDialect</li> <li>org.hibernate.dialect.FirebirdDialect</li> </ul> </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="hibernateShowSql" class="namespacePropertyTitle">hibernateShowSql</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> Whether or not to log SQL statements. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="hibernateMaxFetchDepth" class="namespacePropertyTitle">hibernateMaxFetchDepth</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> Sets a maximum "depth" for the outer join fetch tree. Recommended values between 0 and 3 </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="hibernateJdbcFetchSize" class="namespacePropertyTitle">hibernateJdbcFetchSize</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> A non-zero value determines the JDBC fetch size </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="hibernateJdbcBatchSize" class="namespacePropertyTitle">hibernateJdbcBatchSize</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> A nonzero value enables use of JDBC2 batch updates by Hibernate. Recommended values between 5 and 30 </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="hibernateJdbcUseScrollableResultSet" class="namespacePropertyTitle">hibernateJdbcUseScrollableResultSet</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> Whether or not to enable use of JDBC2 scrollable resultsets by Hibernate. This property is only necessary when using user supplied connections. Hibernate uses connection metadata otherwise. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="hibernateJdbcUseStreamsForBinary" class="namespacePropertyTitle">hibernateJdbcUseStreamsForBinary</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> Whether or not to use streams when writing / reading binary or serializable types to/from JDBC. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="jarFiles" class="namespacePropertyTitle">jarFiles</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The comma separated ejb jars that are included in the deployed ear package. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="driver" class="namespacePropertyTitle">driver</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> JDBC Driver to make a database connection. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="username" class="namespacePropertyTitle">username</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The database user login name. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="password" class="namespacePropertyTitle">password</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The database user password. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="connectionUrl" class="namespacePropertyTitle">connectionUrl</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> URL for the JDBC Driver to make the connection to the database. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="dataSource" class="namespacePropertyTitle">dataSource</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> Full JNDI name of data source to use. (would be used instead of the connection properties, driver, username, password, etc). </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="dataSourceName" class="namespacePropertyTitle">dataSourceName</a><a href="#JDBC" title="Go to JDBC namespace element group">(Back to JDBC)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> The JNDI name of data source to use without prefix like java:/. </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="hibernateCacheProvider" class="namespacePropertyTitle">hibernateCacheProvider</a><a href="#Cache" title="Go to Cache namespace element group">(Back to Cache)</a></td></tr><tr><td><div class="optional">Optional property</div></td><td> No default value available </td></tr><tr><td class="documentation" colspan="2"><documentation> Defines Hibernate Cache Provider implementation class. Possible values for JBoss4/Hibernate are: <ul> <li>org.hibernate.cache.HashtableCacheProvider</li> <li>org.jboss.ejb3.entity.TreeCacheProviderHook</li> </ul> </documentation></td></tr></table></div> <div class="namespaceProperty"><table class="bodyTable"><tr class="a"><td class="namespacePropertyTitle" colspan="2"><a name="hibernateTreecacheMbeanObject" class="namespacePropertyTitle">hibernateTreecacheMbeanObject</a><a href="#Cache" title="Go to Cache namespace element group">(Back to Cache)</a></td></tr><tr><td><... [truncated message content] |