Update of /cvsroot/xdoclet/xdoclet/modules/ejb/src/xdoclet/modules/ejb/dd/resources In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv4548/modules/ejb/src/xdoclet/modules/ejb/dd/resources
Modified Files: ejb-jar_xml.xdt Added Files: ejb-body2.xdt Log Message: Extended ejb-task and jboss-task to support deploying every session bean twice (once with a prefix). This way, the jboss deployment can now use two different invoker-proxies for the same bean. --- NEW FILE: ejb-body2.xdt --- <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="description"> <description><![CDATA[<XDtClass:classTagValue tagName="ejb:bean" paramName="description"/>]]></description> </XDtClass:ifHasClassTag> <XDtClass:ifDoesntHaveClassTag tagName="ejb:bean" paramName="description"> <description><![CDATA[<XDtClass:firstSentenceDescription/>]]></description> </XDtClass:ifDoesntHaveClassTag> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="display-name"> <display-name><XDtClass:classTagValue tagName="ejb:bean" paramName="display-name"/></display-name> </XDtClass:ifHasClassTag> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="small-icon"> <small-icon><XDtClass:classTagValue tagName="ejb:bean" paramName="small-icon"/></small-icon> </XDtClass:ifHasClassTag> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="large-icon"> <large-icon><XDtClass:classTagValue tagName="ejb:bean" paramName="large-icon"/></large-icon> </XDtClass:ifHasClassTag> <ejb-name><XDtConfig:configParameterValue paramName="secondDeploymentNamePrefix"/><XDtEjb:ejbName/></ejb-name> <XDtConfig:ifConfigParamGreaterOrEquals paramName="EjbSpec" value="2.0"> <XDtType:ifIsOfType type="javax.ejb.EntityBean"> <XDtEjb:ifRemoteEjb> <home><XDtEjbHome:homeInterface type="remote"/></home> <remote><XDtEjbIntf:componentInterface type="remote"/></remote> </XDtEjb:ifRemoteEjb> <XDtEjb:ifLocalEjb> <local-home><XDtEjbHome:homeInterface type="local"/></local-home> <local><XDtEjbIntf:componentInterface type="local"/></local> </XDtEjb:ifLocalEjb> </XDtType:ifIsOfType> <XDtType:ifIsOfType type="javax.ejb.SessionBean"> <XDtEjb:ifRemoteEjb> <home><XDtEjbHome:homeInterface type="remote"/></home> <remote><XDtEjbIntf:componentInterface type="remote"/></remote> </XDtEjb:ifRemoteEjb> <XDtEjb:ifLocalEjb> <local-home><XDtEjbHome:homeInterface type="local"/></local-home> <local><XDtEjbIntf:componentInterface type="local"/></local> </XDtEjb:ifLocalEjb> <XDtConfig:ifConfigParamGreaterOrEquals paramName="EjbSpec" value="2.1"> <XDtEjb:ifServiceEndpointEjb> <service-endpoint><XDtEjbIntf:componentInterface type="service-endpoint"/></service-endpoint> </XDtEjb:ifServiceEndpointEjb> </XDtConfig:ifConfigParamGreaterOrEquals> </XDtType:ifIsOfType> </XDtConfig:ifConfigParamGreaterOrEquals> <XDtConfig:ifConfigParamNotGreaterOrEquals paramName="EjbSpec" value="2.0"> <home><XDtEjbHome:homeInterface type="remote"/></home> <remote><XDtEjbIntf:componentInterface type="remote"/></remote> </XDtConfig:ifConfigParamNotGreaterOrEquals> <ejb-class><XDtEjb:concreteFullClassName/></ejb-class> <XDtType:ifIsOfType type="javax.ejb.SessionBean"> <session-type><XDtClass:classTagValue tagName="ejb:bean" paramName="type" values="Stateful,Stateless" default="Stateless"/></session-type> <transaction-type><XDtClass:classTagValue tagName="ejb:bean" paramName="transaction-type" values="Container,Bean" default="Container"/></transaction-type> </XDtType:ifIsOfType> <XDtType:ifIsOfType type="javax.ejb.EntityBean"> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="type"> <XDtEjbCmp:ifEntityIsCmp> <persistence-type>Container</persistence-type> </XDtEjbCmp:ifEntityIsCmp> <XDtEjbBmp:ifEntityIsBmp> <persistence-type>Bean</persistence-type> </XDtEjbBmp:ifEntityIsBmp> </XDtClass:ifHasClassTag> <XDtClass:ifDoesntHaveClassTag tagName="ejb:bean" paramName="type"> <persistence-type>Container</persistence-type> </XDtClass:ifDoesntHaveClassTag> <prim-key-class><XDtEjbPk:pkClass/></prim-key-class> <reentrant><XDtEjbEntity:reentrant/></reentrant> <XDtConfig:ifConfigParamGreaterOrEquals paramName="EjbSpec" value="2.0"> <XDtEjbCmp:ifEntityIsCmp> <cmp-version><XDtClass:classTagValue tagName="ejb:bean" paramName="cmp-version" values="1.x,2.x" default="2.x" /></cmp-version> <abstract-schema-name><XDtClass:classTagValue tagName="ejb:bean" paramName="schema" default="<XDtEjb:ejbName/>"/></abstract-schema-name> <XDtEjbBmp:ifUseSoftLocking> <cmp-field <XDtId:prefixedId prefix="CMPAttribute"/>> <description><![CDATA[<XDtI18n:getString bundle="xdoclet.modules.ejb.XDocletModulesEjbMessages" resource="SOFT_LOCK_VERSION"/>]]></description> <field-name>version</field-name> </cmp-field> </XDtEjbBmp:ifUseSoftLocking> </XDtEjbCmp:ifEntityIsCmp> </XDtConfig:ifConfigParamGreaterOrEquals> <XDtEjbCmp:forAllCmpFields> <cmp-field <XDtId:prefixedId prefix="CMPAttribute"/>> <description><![CDATA[<XDtMethod:firstSentenceDescriptionOfCurrentMethod/>]]></description> <field-name><XDtEjbCmp:fieldName/></field-name> </cmp-field> </XDtEjbCmp:forAllCmpFields> <XDtEjbCmp:ifEntityIsCmp> <XDtEjbPk:ifHasPrimkeyField> <primkey-field><XDtEjbPk:primkeyField/></primkey-field> </XDtEjbPk:ifHasPrimkeyField> </XDtEjbCmp:ifEntityIsCmp> </XDtType:ifIsOfType> <XDtType:ifIsOfType type="javax.ejb.MessageDrivenBean"> <XDtConfig:ifConfigParamEquals paramName="EjbSpec" value="2.0"> <transaction-type><XDtClass:classTagValue tagName="ejb:bean" paramName="transaction-type" values="Container,Bean" default="Container"/></transaction-type> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="message-selector"> <message-selector><![CDATA[<XDtClass:classTagValue tagName="ejb.bean" paramName="message-selector"/>]]></message-selector> </XDtClass:ifHasClassTag> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="acknowledge-mode"> <acknowledge-mode><XDtClass:classTagValue tagName="ejb:bean" paramName="acknowledge-mode" values="Auto-acknowledge,Dups-ok-acknowledge" default="Auto-acknowledge"/></acknowledge-mode> </XDtClass:ifHasClassTag> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="destination-type"> <message-driven-destination> <destination-type><XDtClass:classTagValue tagName="ejb:bean" paramName="destination-type" values="javax.jms.Queue,javax.jms.Topic"/></destination-type> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="subscription-durability"> <subscription-durability><XDtClass:classTagValue tagName="ejb:bean" paramName="subscription-durability" values="Durable,NonDurable"/></subscription-durability> </XDtClass:ifHasClassTag> </message-driven-destination> </XDtClass:ifHasClassTag> </XDtConfig:ifConfigParamEquals> </XDtType:ifIsOfType> <XDtType:ifIsOfType type="javax.ejb.MessageDrivenBean"> <XDtConfig:ifConfigParamGreaterOrEquals paramName="EjbSpec" value="2.1"> <messaging-type><XDtClass:classTagValue tagName="ejb:bean" paramName="messaging-type" default="javax.jms.MessageListener"/></messaging-type> <transaction-type><XDtClass:classTagValue tagName="ejb:bean" paramName="transaction-type" values="Container,Bean" default="Container"/></transaction-type> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="destination-type"> <message-destination-type><XDtClass:classTagValue tagName="ejb:bean" paramName="destination-type" values="javax.jms.Queue,javax.jms.Topic"/></message-destination-type> </XDtClass:ifHasClassTag> <XDtClass:ifHasClassTag tagName="ejb:message-destination"> <message-destination-link><XDtClass:classTagValue tagName="ejb:message-destination" paramName="name" mandatory="true"/></message-destination-link> </XDtClass:ifHasClassTag> <XDtClass:ifDoesntHaveClassTag tagName="ejb:message-destination"> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="destination-link"> <message-destination-link><XDtClass:classTagValue tagName="ejb:bean" paramName="destination-link"/></message-destination-link> </XDtClass:ifHasClassTag> </XDtClass:ifDoesntHaveClassTag > <XDtEjbMdb:ifHasActivationConfig> <XDtComment:comment> | activation-config must have at least one child </XDtComment:comment> <activation-config> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="destination-type"> <activation-config-property> <activation-config-property-name>destinationType</activation-config-property-name> <activation-config-property-value><XDtClass:classTagValue tagName="ejb:bean" paramName="destination-type" values="javax.jms.Queue,javax.jms.Topic"/></activation-config-property-value> </activation-config-property> </XDtClass:ifHasClassTag> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="acknowledge-mode"> <activation-config-property> <activation-config-property-name>acknowledgeMode</activation-config-property-name> <activation-config-property-value><XDtClass:classTagValue tagName="ejb:bean" paramName="acknowledge-mode" values="Auto-acknowledge,Dups-ok-acknowledge" default="Auto-acknowledge"/></activation-config-property-value> </activation-config-property> </XDtClass:ifHasClassTag> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="subscription-durability"> <activation-config-property> <activation-config-property-name>subscriptionDurability</activation-config-property-name> <activation-config-property-value><XDtClass:classTagValue tagName="ejb:bean" paramName="subscription-durability" values="Durable,NonDurable"/></activation-config-property-value> </activation-config-property> </XDtClass:ifHasClassTag> <XDtClass:ifHasClassTag tagName="ejb:bean" paramName="message-selector"> <activation-config-property> <activation-config-property-name>messageSelector</activation-config-property-name> <activation-config-property-value><![CDATA[<XDtClass:classTagValue tagName="ejb:bean" paramName="message-selector"/>]]></activation-config-property-value> </activation-config-property> </XDtClass:ifHasClassTag> <XDtClass:forAllClassTags tagName="ejb:activation-config-property"> <activation-config-property> <activation-config-property-name><XDtClass:classTagValue tagName="ejb:activation-config-property" paramName="name"/></activation-config-property-name> <activation-config-property-value><![CDATA[<XDtClass:classTagValue tagName="ejb:activation-config-property" paramName="value"/>]]></activation-config-property-value> </activation-config-property> </XDtClass:forAllClassTags> </activation-config> </XDtEjbMdb:ifHasActivationConfig> </XDtConfig:ifConfigParamGreaterOrEquals> </XDtType:ifIsOfType> <XDtMerge:merge file="ejb-env-entries-{0}.xml"> <XDtEjbEnv:forAllTags tagName="ejb:env-entry"> <env-entry> <XDtEjbEnv:ifHasParam paramName="description"> <description><![CDATA[<XDtEjbEnv:paramValue paramName="description"/>]]></description> </XDtEjbEnv:ifHasParam> <env-entry-name><XDtEjbEnv:name paramName="name"/></env-entry-name> <env-entry-type><XDtEjbEnv:type paramName="type" values="java.lang.Boolean,java.lang.String,java.lang.Character,java.lang.Integer,java.lang.Double,java.lang.Byte,java.lang.Short,java.lang.Long,java.lang.Float" default="java.lang.String"/></env-entry-type> <XDtEjbEnv:ifHasParam paramName="value"> <env-entry-value><![CDATA[<XDtEjbEnv:paramValue paramName="value"/>]]></env-entry-value> </XDtEjbEnv:ifHasParam> </env-entry> </XDtEjbEnv:forAllTags> </XDtMerge:merge> <XDtMerge:merge file="ejb-ejbrefs-{0}.xml"> </XDtMerge:merge> <XDtMerge:merge file="xdoclet/modules/ejb/dd/resources/ejb-ref.xdt"> </XDtMerge:merge> <XDtConfig:ifConfigParamGreaterOrEquals paramName="EjbSpec" value="2.1"> <XDtMerge:merge file="xdoclet/modules/ejb/dd/resources/res-ref.xdt"> </XDtMerge:merge> <XDtMerge:merge file="ejb-destinationrefs-{0}.xml"> <XDtEjbEnv:forAllTags tagName="ejb:destination-ref"> <message-destination-ref> <XDtEjbEnv:ifHasParam paramName="description"> <description><![CDATA[<XDtEjbEnv:paramValue paramName="description"/>]]></description> </XDtEjbEnv:ifHasParam> <message-destination-ref-name><XDtEjbEnv:name paramName="name"/></message-destination-ref-name> <message-destination-type><XDtEjbEnv:type paramName="type"/></message-destination-type> <message-destination-usage><XDtEjbEnv:paramValue paramName="usage" values="Consumes,Produces,ConsumesProduces" default="Produces"/></message-destination-usage> <XDtEjbEnv:ifHasParam paramName="link"> <message-destination-link><XDtEjbEnv:paramValue paramName="link"/></message-destination-link> </XDtEjbEnv:ifHasParam> </message-destination-ref> </XDtEjbEnv:forAllTags> </XDtMerge:merge> </XDtConfig:ifConfigParamGreaterOrEquals> <XDtMerge:merge file="ejb-sec-rolerefs-{0}.xml"> <XDtClass:forAllClassTags tagName="ejb:security-role-ref"> <security-role-ref> <role-name><XDtClass:classTagValue tagName="ejb:security-role-ref" paramName="role-name"/></role-name> <role-link><XDtClass:classTagValue tagName="ejb:security-role-ref" paramName="role-link"/></role-link> </security-role-ref> </XDtClass:forAllClassTags> </XDtMerge:merge> <XDtConfig:ifConfigParamGreaterOrEquals paramName="EjbSpec" value="2.0"> <XDtClass:forAllClassTags tagName="ejb:security-identity"> <security-identity> <XDtClass:ifHasClassTag tagName="ejb:security-identity" paramName="description"> <description><![CDATA[<XDtClass:classTagValue tagName="ejb:security-identity" paramName="description"/>]]></description> </XDtClass:ifHasClassTag> <XDtClass:ifHasClassTag tagName="ejb:security-identity" paramName="use-caller-identity"> <use-caller-identity <XDtId:prefixedId prefix="UseCallerIdentity"/>/> </XDtClass:ifHasClassTag> <XDtClass:ifHasClassTag tagName="ejb:security-identity" paramName="run-as"> <run-as> <XDtClass:ifHasClassTag tagName="ejb:security-identity" paramName="description"> <description><![CDATA[<XDtClass:classTagValue tagName="ejb:security-identity" paramName="description"/>]]></description> </XDtClass:ifHasClassTag> <role-name><XDtClass:classTagValue tagName="ejb:security-identity" paramName="run-as"/></role-name> </run-as> </XDtClass:ifHasClassTag> </security-identity> </XDtClass:forAllClassTags> </XDtConfig:ifConfigParamGreaterOrEquals> <XDtConfig:ifConfigParamNotGreaterOrEquals paramName="EjbSpec" value="2.1"> <XDtMerge:merge file="xdoclet/modules/ejb/dd/resources/res-ref.xdt"> </XDtMerge:merge> </XDtConfig:ifConfigParamNotGreaterOrEquals> <XDtConfig:ifConfigParamGreaterOrEquals paramName="EjbSpec" value="2.0"> <XDtType:ifIsOfType type="javax.ejb.EntityBean"> <XDtEjbCmp:ifEntityIsCmp> <XDtClass:forAllClassTags tagName="ejb:finder"> <XDtClass:ifHasClassTag tagName="ejb:finder" paramName="signature"> <query> <XDtClass:ifHasClassTag tagName="ejb:finder" paramName="description"> <description><![CDATA[<XDtClass:classTagValue tagName="ejb:finder" paramName="description"/>]]></description> </XDtClass:ifHasClassTag> <query-method> <method-name><XDtClass:classTagValue tagName="ejb:finder" paramName="signature" delimiter=" (" tokenNumber="1"/></method-name> <method-params> <XDtParameter:forAllParameterTypes paramName="signature"> <method-param><XDtParameter:currentToken/></method-param> </XDtParameter:forAllParameterTypes> </method-params> </query-method> <XDtClass:ifHasClassTag tagName="ejb:finder" paramName="result-type-mapping"> <result-type-mapping><XDtClass:classTagValue tagName="ejb:finder" paramName="result-type-mapping" values ="Local,Remote"/></result-type-mapping> </XDtClass:ifHasClassTag> <XDtClass:ifHasClassTag tagName="ejb:finder" paramName="query"> <ejb-ql><![CDATA[<XDtClass:classTagValue tagName="ejb:finder" paramName="query"/>]]></ejb-ql> </XDtClass:ifHasClassTag> <XDtClass:ifDoesntHaveClassTag tagName="ejb:finder" paramName="query"> <ejb-ql/> </XDtClass:ifDoesntHaveClassTag> </query> </XDtClass:ifHasClassTag> </XDtClass:forAllClassTags> <XDtEjbEntity:forAllEjbSelectMethods> <query> <description><![CDATA[<XDtMethod:methodComment no-comment-signs="true"/>]]></description> <query-method> <method-name><XDtMethod:methodName/></method-name> <method-params> <XDtParameter:forAllMethodParams> <method-param><XDtParameter:methodParamType/></method-param> </XDtParameter:forAllMethodParams> </method-params> </query-method> <XDtMethod:ifHasMethodTag tagName="ejb:select" paramName ="result-type-mapping"> <result-type-mapping><XDtMethod:methodTagValue tagName ="ejb:select" paramName="result-type-mapping" values ="Local,Remote"/></result-type-mapping> </XDtMethod:ifHasMethodTag> <ejb-ql><![CDATA[<XDtMethod:methodTagValue tagName="ejb:select" paramName="query"/>]]></ejb-ql> </query> </XDtEjbEntity:forAllEjbSelectMethods> <XDtMerge:merge file="ejb-finders-{0}.xml"> <!-- Write a file named ejb-finders-<XDtClass:className/>.xml if you want to define extra finders. --> </XDtMerge:merge> </XDtEjbCmp:ifEntityIsCmp> </XDtType:ifIsOfType> </XDtConfig:ifConfigParamGreaterOrEquals> Index: ejb-jar_xml.xdt =================================================================== RCS file: /cvsroot/xdoclet/xdoclet/modules/ejb/src/xdoclet/modules/ejb/dd/resources/ejb-jar_xml.xdt,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** ejb-jar_xml.xdt 8 Oct 2004 21:50:22 -0000 1.8 --- ejb-jar_xml.xdt 28 Nov 2007 13:53:12 -0000 1.9 *************** *** 29,33 **** </XDtMerge:merge> </session> ! </XDtEjb:ifIsAConcreteEJBean> </XDtEjbSession:forAllSessionBeans> --- 29,42 ---- </XDtMerge:merge> </session> ! <XDtComment:comment> ! There are situations in which you want to deploy the same bean twice but with another name-prefix. ! The ejb-body2.xdt is a copy of ejb-body.xdt with only adding the prefix to the ejb-name. ! </XDtComment:comment> ! <XDtConfig:ifConfigParamNotEquals paramName="secondDeploymentNamePrefix" value=""> ! <session> ! <XDtMerge:merge file="xdoclet/modules/ejb/dd/resources/ejb-body2.xdt"> ! </XDtMerge:merge> ! </session> ! </XDtConfig:ifConfigParamNotEquals> </XDtEjb:ifIsAConcreteEJBean> </XDtEjbSession:forAllSessionBeans> ------------------------------------------------------------------------- SF.Net email is sponsored by: The Future of Linux Business White Paper from Novell. From the desktop to the data center, Linux is going mainstream. Let it simplify your IT future. http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4 _______________________________________________ xdoclet-devel mailing list xdoclet-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xdoclet-devel