Author: scabanovich
Date: 2010-01-25 10:55:16 -0500 (Mon, 25 Jan 2010)
New Revision: 19911
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web/resources/help/keys-web.properties
trunk/jst/plugins/org.jboss.tools.jst.web/resources/meta/webapp24.meta
trunk/jst/plugins/org.jboss.tools.jst.web/src/org/jboss/tools/jst/web/webapp/model/FileWebAppLoader.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-5712
Modified: trunk/jst/plugins/org.jboss.tools.jst.web/resources/help/keys-web.properties
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.web/resources/help/keys-web.properties 2010-01-25
15:28:36 UTC (rev 19910)
+++
trunk/jst/plugins/org.jboss.tools.jst.web/resources/help/keys-web.properties 2010-01-25
15:55:16 UTC (rev 19911)
@@ -419,6 +419,19 @@
WebAppFolderListeners24_CreateListener.WindowTitle=Add Listener
WebAppFolderListeners24_CreateListener.Title=Web Listener
+WebAppFolderLifecycles25_CreatePostConstruct.WindowTitle=Add Post Construct
+WebAppFolderLifecycles25_CreatePostConstruct.Title=Web Post Construct
+WebAppFolderLifecycles25_CreatePreDestroy.WindowTitle=Add Pre Destroy
+WebAppFolderLifecycles25_CreatePreDestroy.Title=Web Pre Destroy
+
+WebAppFolderLifecycles25_Properties.Title=Lifecycle Callbacks
+
+WebAppFolderPersistence25_CreatePersistenceContextRef.WindowTitle=Add Persistence Context
Ref
+WebAppFolderPersistence25_CreatePersistenceContextRef.Title=Web Persistence Context Ref
+WebAppFolderPersistence25_CreatePersistenceUnitRef.WindowTitle=Add Persistence Unit Ref
+WebAppFolderPersistence25_CreatePersistenceUnitRef.Title=Web Persistence Unit Ref
+WebAppFolderPersistence25_Properties.Title=Persistence
+
WebAppFolderServices_CreateServiceRef.WindowTitle=Add Service Ref
WebAppFolderServices_CreateServiceRef.Title=Service Ref
@@ -550,6 +563,18 @@
WebAppWelcomFileList_CreateWelcomFile.WindowTitle=Add Welcome File
WebAppWelcomFileList_CreateWelcomFile.Title=Web Welcome File
+Web.CreatePersistenceProperty.WindowTitle=Add Persistence Property
+Web.CreatePersistenceProperty.Title=Web Persistence Property
+Web.CreateInjectionTarget.WindowTitle=Add Injection Target
+Web.CreateInjectionTarget.Title=Web Injection Target
+
+WebAppPersistenceContextRef25_Properties.Title=Web Persistence Context Ref
+WebAppPersistenceProperty25_Properties.Title=Web Persistence Property
+WebAppPersistenceUnitRef25_Properties.Title=Web Persistence Unit Ref
+WebAppPostConstruct25_Properties.Title=Web Post Construct
+WebAppPreDestroy25_Properties.Title=Web Pre Destroy
+WebAppInjectionTarget25_Properties.Title=Web Injection Target
+
##### web role element #####
WebAppRoleName_Properties.Title=Web Role
Modified: trunk/jst/plugins/org.jboss.tools.jst.web/resources/meta/webapp24.meta
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web/resources/meta/webapp24.meta 2010-01-25
15:28:36 UTC (rev 19910)
+++ trunk/jst/plugins/org.jboss.tools.jst.web/resources/meta/webapp24.meta 2010-01-25
15:55:16 UTC (rev 19911)
@@ -573,6 +573,8 @@
<XChildEntity maxCount="1" name="WebAppFolderResources"
required="yes"/>
<XChildEntity maxCount="1"
name="WebAppFolderMessageDestinations" required="yes"/>
<XChildEntity maxCount="1"
name="WebAppLocaleEncodingMappingList" required="yes"/>
+ <XChildEntity maxCount="1" name="WebAppFolderPersistence25"
required="yes"/>
+ <XChildEntity maxCount="1" name="WebAppFolderLifecycles25"
required="yes"/>
</XChildrenEntities>
<XEntityRenderer>
<ICONS>
@@ -1139,6 +1141,72 @@
<XDependencies/>
</XModelEntity>
<XModelEntity ImplementingClass="%Custom%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jst.web.ui.editors.webapp.form.WebAppFormLayoutData;children=%EntityOrdered%"
name="WebAppFolderLifecycles25">
+ <XChildrenEntities>
+ <XChildEntity name="WebAppPostConstruct25"/>
+ <XChildEntity name="WebAppPreDestroy25"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.jsf.components" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="lifecycle callbacks"
loader="ElementType" name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true;" default="Lifecycle
Callbacks"
+ name="name" xmlname="NAME">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem ICON="action.empty" displayName="New"
group="1"
+ kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%CreateForWeb23%"
+ ICON="action.new.struts.webapp.res_env_ref"
+ PROPERTIES="validator.add=true" WizardClassName="%Default%"
+ displayName="Post Construct..." kind="action"
name="CreatePostConstruct">
+ <EntityData EntityName="WebAppPostConstruct25">
+ <AttributeData AttributeName="lifecycle-callback-method"/>
+ <AttributeData AttributeName="lifecycle-callback-class"
Mandatory="no"/>
+ </EntityData>
+ </XActionItem>
+ <XActionItem HandlerClassName="%CreateForWeb23%"
+ ICON="action.new.struts.webapp.res_env_ref"
+ PROPERTIES="validator.add=true" WizardClassName="%Default%"
+ displayName="Pre Destroy..." kind="action"
name="CreatePreDestroy">
+ <EntityData EntityName="WebAppPreDestroy25">
+ <AttributeData AttributeName="lifecycle-callback-method"/>
+ <AttributeData AttributeName="lifecycle-callback-class"
Mandatory="no"/>
+ </EntityData>
+ </XActionItem>
+ <XActionItem HIDE="always"
+
HandlerClassName="org.jboss.tools.common.meta.action.impl.handlers.ShowMenuHandler"
+ PROPERTIES="actionList=CreateActions" displayName="Callback..."
+ kind="action" name="AddAnyCallback"/>
+ </XActionItem>
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.cut" displayName="Cut" kind="action"
name="Cut"/>
+ <XActionItem BaseActionName="Copy"
HandlerClassName="%CopyChildren%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Paste"
HandlerClassName="%Paste%"
+ ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
+ </XActionItem>
+ <XActionItem kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
+ HandlerClassName="%DeleteChildren%" ICON="action.delete"
+ displayName="Delete" kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" kind="list"
name="Properties">
+ <XActionItem HandlerClassName="%Properties%"
ICON="action.empty"
+ displayName="Properties..." kind="action"
name="Properties"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jst.web.ui.editors.webapp.form.WebAppFormLayoutData;children=%Ordered%"
name="WebAppFolderListeners24">
<XChildrenEntities>
<XChildEntity name="WebAppListener24"/>
@@ -1190,6 +1258,118 @@
<XDependencies/>
</XModelEntity>
<XModelEntity ImplementingClass="%Custom%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jst.web.ui.editors.webapp.form.WebAppFormLayoutData;children=%Ordered%"
name="WebAppFolderPersistence25">
+ <XChildrenEntities>
+ <XChildEntity name="WebAppPersistenceContextRef25"/>
+ <XChildEntity name="WebAppPersistenceUnitRef25"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.jsf.components" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="persistence" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true;" default="Persistence"
+ name="name" xmlname="NAME">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem ICON="action.empty" displayName="New"
group="1"
+ kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%CreateForWeb23%"
+ ICON="action.new.struts.webapp.res_env_ref"
+ PROPERTIES="validator.add=true" WizardClassName="%Default%"
+ displayName="Persistence Context Ref..." kind="action"
name="CreatePersistenceContextRef">
+ <EntityData EntityName="WebAppPersistenceContextRef25">
+ <AttributeData AttributeName="ref-name"/>
+ <AttributeData AttributeName="unit-name"
Mandatory="no"/>
+ <AttributeData AttributeName="type" Mandatory="no"/>
+ </EntityData>
+ </XActionItem>
+ <XActionItem HandlerClassName="%Create%"
+ ICON="action.new.struts.webapp.res_ref"
+ PROPERTIES="validator.add=true" WizardClassName="%Default%"
+ displayName="Persistence Unit Ref..." kind="action"
name="CreatePersistenceUnitRef">
+ <EntityData EntityName="WebAppPersistenceUnitRef25">
+ <AttributeData AttributeName="ref-name"/>
+ <AttributeData AttributeName="unit-name"
Mandatory="no"/>
+ </EntityData>
+ </XActionItem>
+ <XActionItem HIDE="always"
+
HandlerClassName="org.jboss.tools.common.meta.action.impl.handlers.ShowMenuHandler"
+ PROPERTIES="actionList=CreateActions" displayName="Ref..."
+ kind="action" name="AddAnyRef"/>
+ </XActionItem>
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.cut" displayName="Cut" kind="action"
name="Cut"/>
+ <XActionItem BaseActionName="Copy"
HandlerClassName="%CopyChildren%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Paste"
HandlerClassName="%Paste%"
+ ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
+ </XActionItem>
+ <XActionItem kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
+ HandlerClassName="%DeleteChildren%" ICON="action.delete"
+ displayName="Delete" kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" kind="list"
name="Properties">
+ <XActionItem HandlerClassName="%Properties%"
ICON="action.empty"
+ displayName="Properties..." kind="action"
name="Properties"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
+ XMLSUBPATH="injection-target" name="WebAppInjectionTarget25">
+ <XChildrenEntities/>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.struts.webapp.listener" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="injection target"
loader="ElementType" name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="save=always;category=general"
+ name="class" xmlname="injection-target-class.#text">
+ <Editor name="AccessibleJava"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="save=always;id=true;category=general"
+ name="name" xmlname="injection-target-name.#text"/>
+ <XModelAttribute name="id" visibility="false"
xmlname="id"/>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.copy" displayName="Cut" kind="action"
name="Cut"/>
+ </XActionItem>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" kind="list"
name="Properties">
+ <XActionItem HandlerClassName="%Properties%"
ICON="action.empty"
+ displayName="Properties..." kind="action"
name="Properties"/>
+ </XActionItem>
+ <XActionItem displayName="move" kind="list"
name="MoveActions">
+ <XActionItem HIDE="always" HandlerClassName="%Move%"
+ ICON="action.move" displayName="Move" kind="action"
name="Move"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jst.web.ui.editors.webapp.form.WebAppFormLayoutData"
XMLSUBPATH="jsp-property-group" name="WebAppJSPPropertyGroup">
<XChildrenEntities/>
@@ -1625,6 +1805,272 @@
</XActionItem>
<XDependencies/>
</XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
+ PROPERTIES="children=%EntityOrdered%"
+ XMLSUBPATH="persistence-context-ref"
name="WebAppPersistenceContextRef25">
+ <XChildrenEntities>
+ <XChildEntity name="WebAppPersistenceProperty25"/>
+ <XChildEntity name="WebAppInjectionTarget25"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.struts.webapp.listener" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="persistence context ref"
+ loader="ElementType" name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general"
name="description" xmlname="description.#text">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true;save=always;category=general"
+ name="ref-name"
xmlname="persistence-context-ref-name.#text"/>
+ <XModelAttribute PROPERTIES="category=general" name="unit-name"
xmlname="persistence-unit-name.#text"/>
+ <XModelAttribute PROPERTIES="category=general" name="type"
xmlname="persistence-context-type.#text">
+ <Constraint loader="List">
+ <value/>
+ <value name="Transaction"/>
+ <value name="Extended"/>
+ </Constraint>
+ <Editor name="List"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general"
name="mapped-name" xmlname="mapped-name.#text"/>
+ <XModelAttribute name="id" visibility="false"
xmlname="id"/>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ PROPERTIES="validator.add=true" WizardClassName="%Default%"
+ displayName="Persistence Property..." kind="action"
name="CreatePersistenceProperty">
+ <EntityData EntityName="WebAppPersistenceProperty25">
+ <AttributeData AttributeName="name"/>
+ <AttributeData AttributeName="value"/>
+ </EntityData>
+ </XActionItem>
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ PROPERTIES="validator.add=true" WizardClassName="%Default%"
+ displayName="Injection Target..." kind="action"
name="CreateInjectionTarget">
+ <EntityData EntityName="WebAppInjectionTarget25">
+ <AttributeData AttributeName="name"/>
+ <AttributeData AttributeName="class"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.copy" displayName="Cut" kind="action"
name="Cut"/>
+ </XActionItem>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" kind="list"
name="Properties">
+ <XActionItem HandlerClassName="%Properties%"
ICON="action.empty"
+ displayName="Properties..." kind="action"
name="Properties"/>
+ </XActionItem>
+ <XActionItem displayName="move" kind="list"
name="MoveActions">
+ <XActionItem HIDE="always" HandlerClassName="%Move%"
+ ICON="action.move" displayName="Move" kind="action"
name="Move"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
+ XMLSUBPATH="persistence-property"
name="WebAppPersistenceProperty25">
+ <XChildrenEntities/>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.struts.webapp.listener" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="persistence property"
loader="ElementType" name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="save=always;id=true;category=general"
+ name="name" xmlname="name.#text"/>
+ <XModelAttribute PROPERTIES="save=always;category=general"
+ name="value" xmlname="value.#text">
+ <Editor name="AccessibleJava"/>
+ </XModelAttribute>
+ <XModelAttribute name="id" visibility="false"
xmlname="id"/>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.copy" displayName="Cut" kind="action"
name="Cut"/>
+ </XActionItem>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" kind="list"
name="Properties">
+ <XActionItem HandlerClassName="%Properties%"
ICON="action.empty"
+ displayName="Properties..." kind="action"
name="Properties"/>
+ </XActionItem>
+ <XActionItem displayName="move" kind="list"
name="MoveActions">
+ <XActionItem HIDE="always" HandlerClassName="%Move%"
+ ICON="action.move" displayName="Move" kind="action"
name="Move"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
+ PROPERTIES="children=%Ordered%" XMLSUBPATH="persistence-unit-ref"
name="WebAppPersistenceUnitRef25">
+ <XChildrenEntities>
+ <XChildEntity name="WebAppInjectionTarget25"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.struts.webapp.listener" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="persistence unit ref"
loader="ElementType" name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general"
name="description" xmlname="description.#text">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true;save=always;category=general"
+ name="ref-name" xmlname="persistence-unit-ref-name.#text"/>
+ <XModelAttribute PROPERTIES="category=general" name="unit-name"
xmlname="persistence-unit-name.#text"/>
+ <XModelAttribute PROPERTIES="category=general"
name="mapped-name" xmlname="mapped-name.#text"/>
+ <XModelAttribute name="id" visibility="false"
xmlname="id"/>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ PROPERTIES="validator.add=true" WizardClassName="%Default%"
+ displayName="Persistence Property..." kind="action"
name="CreateInjectionTarget">
+ <EntityData EntityName="WebAppInjectionTarget25">
+ <AttributeData AttributeName="name"/>
+ <AttributeData AttributeName="class"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.copy" displayName="Cut" kind="action"
name="Cut"/>
+ </XActionItem>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" kind="list"
name="Properties">
+ <XActionItem HandlerClassName="%Properties%"
ICON="action.empty"
+ displayName="Properties..." kind="action"
name="Properties"/>
+ </XActionItem>
+ <XActionItem displayName="move" kind="list"
name="MoveActions">
+ <XActionItem HIDE="always" HandlerClassName="%Move%"
+ ICON="action.move" displayName="Move" kind="action"
name="Move"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
XMLSUBPATH="post-construct" name="WebAppPostConstruct25">
+ <XChildrenEntities/>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.struts.webapp.listener" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="post construct" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general"
+ name="lifecycle-callback-class"
xmlname="lifecycle-callback-class.#text">
+ <Editor name="AccessibleJava"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="save=always;category=general;id=true"
+ name="lifecycle-callback-method"
xmlname="lifecycle-callback-method.#text"/>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.copy" displayName="Cut" kind="action"
name="Cut"/>
+ </XActionItem>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" kind="list"
name="Properties">
+ <XActionItem HandlerClassName="%Properties%"
ICON="action.empty"
+ displayName="Properties..." kind="action"
name="Properties"/>
+ </XActionItem>
+ <XActionItem displayName="move" kind="list"
name="MoveActions">
+ <XActionItem HIDE="always" HandlerClassName="%Move%"
+ ICON="action.move" displayName="Move" kind="action"
name="Move"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
XMLSUBPATH="pre-destroy" name="WebAppPreDestroy25">
+ <XChildrenEntities/>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.struts.webapp.listener" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="pre destroy" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general"
+ name="lifecycle-callback-class"
xmlname="lifecycle-callback-class.#text">
+ <Editor name="AccessibleJava"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="save=always;category=general;id=true"
+ name="lifecycle-callback-method"
xmlname="lifecycle-callback-method.#text"/>
+ <XModelAttribute TRIM="no" name="comment"
visibility="false" xmlname="#comment">
+ <Editor name="Note"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.copy" displayName="Cut" kind="action"
name="Cut"/>
+ </XActionItem>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" kind="list"
name="Properties">
+ <XActionItem HandlerClassName="%Properties%"
ICON="action.empty"
+ displayName="Properties..." kind="action"
name="Properties"/>
+ </XActionItem>
+ <XActionItem displayName="move" kind="list"
name="MoveActions">
+ <XActionItem HIDE="always" HandlerClassName="%Move%"
+ ICON="action.move" displayName="Move" kind="action"
name="Move"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
<XModelEntity
ImplementingClass="org.jboss.tools.jst.web.webapp.model.WebAppServiceRefImpl"
XMLSUBPATH="service-ref" name="WebAppServiceRef">
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web/src/org/jboss/tools/jst/web/webapp/model/FileWebAppLoader.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.web/src/org/jboss/tools/jst/web/webapp/model/FileWebAppLoader.java 2010-01-25
15:28:36 UTC (rev 19910)
+++
trunk/jst/plugins/org.jboss.tools.jst.web/src/org/jboss/tools/jst/web/webapp/model/FileWebAppLoader.java 2010-01-25
15:55:16 UTC (rev 19911)
@@ -131,13 +131,18 @@
return true;
} else if(!"WebAppServlet".equals(entity)) { //$NON-NLS-1$
- return super.saveChildren(element, o);
+ boolean b = super.saveChildren(element, o);
+ if(o.getModelEntity().getAttribute("mapped-name") != null) {
//$NON-NLS-1$
+ moveChild(element, "mapped-name", "injection-target");
//$NON-NLS-1$ //$NON-NLS-2$
+ }
+ return b;
}
saveChildren(element, o, "WebAppInitParam"); //$NON-NLS-1$
String l = o.getAttributeValue("load-on-startup"); //$NON-NLS-1$
if(l.length() > 0) saveAttribute(element, "load-on-startup.#text",
l); //$NON-NLS-1$
saveChildren(element, o, "WebAppRunAs"); //$NON-NLS-1$
saveChildren(element, o, "WebAppSecurityRoleRef"); //$NON-NLS-1$
+
return true;
}
@@ -213,6 +218,30 @@
return -1;
}
+ private void moveChild(Element element, String child, String childAfter) {
+ NodeList l = element.getChildNodes();
+ Element childE = null;
+ Element childAfterE = null;
+ for (int i = 0; i < l.getLength(); i++) {
+ Node n = l.item(i);
+ if(n.getNodeType() != Node.ELEMENT_NODE) continue;
+ String name = n.getNodeName();
+ if(child.equals(name)) {
+ childE = (Element)n;
+ } else if(childAfter.equals(name)) {
+ if(childAfterE == null) childAfterE = (Element)n;
+ }
+ }
+ if(childE != null) {
+ element.removeChild(childE);
+ if(childAfterE != null) {
+ element.insertBefore(childE, childAfterE);
+ } else {
+ element.appendChild(childE);
+ }
+ }
+ }
+
public boolean save(Element parent, XModelObject o) {
if(!needToSave(o)) return true;
return super.save(parent, o);