<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin>
   
   <extension-point 
     id="archiveExportParticipantPanels" 
     name="Archive Export Participant Panels Extension Point" 
     schema="schema/archiveExportParticipantPanels.exsd"/>

<!--================================-->
<!-- Project Wizard Contributions   -->
<!--================================-->
   <extension
         id="J2EEUIProjectWizards"
         point="org.eclipse.ui.newWizards">
      <category
            name="%j2ee.category_ui_"
            id="org.eclipse.jst.j2ee.internal">
      </category>
<!-- Flexible Project Wizard 
      <wizard
            name="%flexible.project_ui_"
            icon="icons/full/ctool16/newear_wiz.gif"
            category="org.eclipse.jdt.ui.java"
            class="org.eclipse.jst.j2ee.internal.wizard.FlexibleProjectCreationWizard"
            project="true"
            finalPerspective="org.eclipse.jst.j2ee.J2EEPerspective"
            id="org.eclipse.jst.j2ee.ui.FlexibleProjectCreationWizard"
            >
         <description>
            %new.flexible.project.description_ui_
         </description>
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
      </wizard>-->
<!-- EAR Component Wizard -->
      <wizard
            name="%ear_component_ui_"
            icon="icons/full/ctool16/newear_wiz.gif"
            category="org.eclipse.jst.j2ee.internal"
            project="true"
            finalPerspective="org.eclipse.jst.j2ee.J2EEPerspective"
            id="org.eclipse.jst.j2ee.ui.project.facet.EarProjectWizard">
         <class class="org.eclipse.jst.j2ee.ui.project.facet.EarProjectWizard">
            <parameter name="javaeeproject" value="true" />
            <parameter name="menuIndex" value="30" />
         </class>
         <description>
            %new.ear.component.description_ui_
         </description>
         <selection
               class="org.eclipse.core.resources.IResource" />
      </wizard>
<!-- Application Client Component Wizard -->
      <wizard
            name="%appclient_component_ui_"
            icon="icons/full/ctool16/newappclient_wiz.gif"
            category="org.eclipse.jst.j2ee.internal"
            project="true"
            finalPerspective="org.eclipse.jst.j2ee.J2EEPerspective"
            id="org.eclipse.jst.j2ee.ui.project.facet.appclient.AppClientProjectWizard">
         <class class="org.eclipse.jst.j2ee.ui.project.facet.appclient.AppClientProjectWizard">
            <parameter name="javaeeproject" value="true"/>
            <parameter name="menuIndex" value="40" />
         </class>
         <description>
            %new.appclient.component.description_ui_
         </description>
         <selection
               class="org.eclipse.core.resources.IResource" />
      </wizard>
<!-- Utility Component Wizard -->
      <wizard
      		name="%util-project-wizard-name"
      		icon="icons/util-wiz-icon.gif"
      		category="org.eclipse.jst.j2ee.internal"
      		project="true"
      		finalPerspective="org.eclipse.jst.j2ee.J2EEPerspective"
      		id="org.eclipse.jst.j2ee.ui.project.facet.UtilityProjectWizard">
      <class class="org.eclipse.jst.j2ee.ui.project.facet.UtilityProjectWizard">
         <parameter name="javaeeproject" value="true"/>
         <parameter name="menuIndex" value="60" />
      </class>
      <description>
      	%util-project-wizard-description
      </description>
         <selection
               class="org.eclipse.core.resources.IResource" />
    </wizard>
      
   </extension>
  
<!--================================-->
<!-- Import Wizard Contributions    -->
<!--================================-->
   <extension
         point="org.eclipse.ui.importWizards">
      <wizard
            category="org.eclipse.jst.j2ee.internal"
            class="org.eclipse.jst.j2ee.internal.wizard.AppClientComponentImportWizard"
            icon="icons/full/ctool16/appclient_import_wiz.gif"
            id="org.eclipse.jst.j2ee.internal.wizard.AppClientComponentImportWizard"
            name="%client.jar.file_ui_">
         <description>
            %client.import.description_ui_
         </description>
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
      </wizard>
       <wizard
             category="org.eclipse.jst.j2ee.internal"
             class="org.eclipse.jst.j2ee.internal.wizard.EARComponentImportWizard"
             icon="icons/full/ctool16/import_ear.gif"
             id="org.eclipse.jst.j2ee.internal.wizard.EARComponentImportWizard"
             name="%ear.file_ui_">
         <description>
            %ear.import.description_ui_
         </description>
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
      </wizard>
       <wizard
             category="org.eclipse.jst.j2ee.internal"
             class="org.eclipse.jst.j2ee.internal.wizard.J2EEUtilityJarImportWizardNew"
             icon="icons/util-wiz-icon.gif"
             id="org.eclipse.jst.j2ee.internal.wizard.J2EEUtilityJarImportWizardNew"
             name="%utility_jar_import_wizard">
          <description>
          	%utility.import.description_ui_
          </description>
          <selection class="org.eclipse.core.resources.IResource"/>
       </wizard>
       <category
             id="org.eclipse.jst.j2ee.internal"
             name="%j2ee.category_ui_"/> 
       </extension>
     
   <!--   <wizard
            class="org.eclipse.jst.j2ee.internal.wizard.J2EEUtilityJarImportWizard"
            icon="icons/jar_obj.gif"
            name="%utility_jar_import_wizard"
            id="org.eclipse.jst.j2ee.ui.J2EEUtilityJarImportWizard">
            <selection
               class="org.eclipse.core.resources.IResource">
	        </selection>
	  </wizard>     
	   <wizard
            name="%Import_Classes"
            icon=""
            class="org.eclipse.jst.j2ee.internal.wizard.ClassesImportWizard"
            id="org.eclipse.jst.j2ee.internal.wizard.ClassesImportWizard">
         
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
      </wizard>             
   </extension> -->
<!--================================-->
<!-- Export Wizard Contributions    -->
<!--================================-->
   <extension
         point="org.eclipse.ui.exportWizards">
      <wizard
            category="org.eclipse.jst.j2ee.internal"
            class="org.eclipse.jst.j2ee.internal.wizard.AppClientComponentExportWizard"
            icon="icons/full/ctool16/appclient_export.gif"
            id="org.eclipse.jst.j2ee.internal.wizard.AppClientComponentExportWizard"
            name="%client.jar.file_ui_">
         <description>
            %client.export.description_ui_
         </description>
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
      </wizard>
      <wizard
            category="org.eclipse.jst.j2ee.internal"
            class="org.eclipse.jst.j2ee.internal.wizard.EARComponentExportWizard"
            icon="icons/full/ctool16/export_ear.gif"
            id="org.eclipse.jst.j2ee.internal.wizard.EARComponentExportWizard"
            name="%ear.file_ui_">
         <description>
            %ear.export.description_ui_
         </description>
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
      </wizard>
      <category
            id="org.eclipse.jst.j2ee.internal"
            name="%j2ee.category_ui_"/>
   </extension>
<!-- ====================================================== -->
<!-- Extension point: org.eclipse.ui.projectNatureImages    -->
<!-- Purpose: Attach icon overlays for J2EE project natures -->
<!-- ====================================================== -->
   <extension
         point="org.eclipse.ui.ide.projectNatureImages">
      <image
            icon="icons/full/ovr16/ejb_module_ovr.gif"
            natureId="org.eclipse.jst.j2ee.ejb.EJBNature"
            id="org.eclipse.ui.ejbProjectNatureImage">
      </image>
      <image
            icon="icons/full/ovr16/enterprise_app_ovr.gif"
            natureId="org.eclipse.jst.j2ee.EARNature"
            id="org.eclipse.ui.earProjectNatureImage">
      </image>
      <image
            icon="icons/full/ovr16/client_app_ovr.gif"
            natureId="org.eclipse.jst.j2ee.ApplicationClientNature"
            id="org.eclipse.ui.appClientModProjectNatureImage">
      </image>
      <image
            icon="icons/full/ovr16/connector_ovr.gif"
            natureId="org.eclipse.jst.j2ee.jca.ConnectorNature"
            id="org.eclipse.ui.ConnectorModProjectNatureImage">
      </image>
      <image
            icon="icons/full/ovr16/web_module_ovr.gif"
            natureId="org.eclipse.jst.j2ee.web.WebNature"
            id="org.eclipse.ui.webProjectNatureImage">
      </image>
   </extension>

    <extension
         point="org.eclipse.wst.common.frameworks.ui.wtpuiAction"> 
      <masterOperation
            description="Delete the dependent J2EE modules"
            extendedGenericId="org.eclipse.wst.common.generic.Delete"
            populatorClass="org.eclipse.jst.j2ee.internal.ui.actions.J2EEDeleteModuleActionPopulator"
            operationClass="org.eclipse.wst.common.frameworks.internal.operation.extension.ui.IActionWTPOperation"
            name="Delete J2EE Dependent Modules" 
            alwaysExecute="true"
            overrideId="org.eclipse.wst.common.actions.Java.delete">
            <selectionEnablement>
            	<or>
            		<and>
            		<objectClass name="org.eclipse.core.resources.IProject"
            					 adaptable="true" />
					<or>
			            <objectState
			                  value="org.eclipse.jst.j2ee.EARNature"
			                  name="projectNature" /> 
			            <objectState
			                  value="org.eclipse.jst.j2ee.ApplicationClientNature"
			                  name="projectNature" /> 
			            <objectState
			                  value="org.eclipse.jst.j2ee.jca.ConnectorNature"
			                  name="projectNature" /> 
			            <objectState
			                  value="org.eclipse.jst.j2ee.ejb.EJBNature"
			                  name="projectNature" /> 
			            <objectState
			                  value="org.eclipse.jst.j2ee.web.WebNature"
			                  name="projectNature" /> 
			            </or>            					 
            		</and> 
	               <objectClass
	                    name="org.eclipse.jst.j2ee.internal.application.Application">
	              </objectClass>
	              <objectClass
	                    name="org.eclipse.jst.j2ee.internal.client.ApplicationClient">
	              </objectClass>
	              <objectClass
	                    name="org.eclipse.jst.j2ee.internal.jca.Connector">
	              </objectClass>
	              <objectClass
	                    name="org.eclipse.jst.j2ee.internal.ejb.EJBJar">
	              </objectClass>
	              <objectClass
	                    name="org.eclipse.jst.j2ee.internal.webapplication.WebApp">
	              </objectClass>            		       		
            	</or>
			</selectionEnablement>
      </masterOperation>
	</extension>   
	
	
	<extension
         point="org.eclipse.wst.common.emfworkbench.integration.adapterFactory">
      <adapterFactory
            className="org.eclipse.jst.j2ee.internal.ejb.provider.J2EEEjbItemProviderAdapterFactory"
            packageURI="ejb.xmi"
            id="org.eclipse.jst.j2ee.internal.ejb.provider.J2EEEjbItemProviderAdapterFactory">
         <view 
         	   id="org.eclipse.ui.navigator.ProjectExplorer">
         </view>
      </adapterFactory>
      <adapterFactory
            className="org.eclipse.jst.j2ee.internal.war.ui.util.J2EEWebItemProviderAdapterFactory"
            packageURI="webapplication.xmi"
            id="org.eclipse.jst.j2ee.internal.war.ui.util.J2EEWebItemProviderAdapterFactory">
          <view 
         	   id="org.eclipse.ui.navigator.ProjectExplorer">
         </view>
      </adapterFactory>
      <adapterFactory
            className="org.eclipse.jst.j2ee.internal.provider.J2EEApplicationItemProviderAdapterFactory"
            packageURI="application.xmi"
            id="org.eclipse.jst.j2ee.internal.provider.J2EEApplicationItemProviderAdapterFactory">
          <view 
         	   id="org.eclipse.ui.navigator.ProjectExplorer">
         </view>
      </adapterFactory>
      <adapterFactory
            className="org.eclipse.jst.j2ee.internal.provider.J2EEModulemapItemProviderAdapterFactory"
            packageURI="modulemap.xmi"
            id="org.eclipse.jst.j2ee.internal.provider.J2EEModulemapItemProviderAdapterFactory">
          <view 
         	   id="org.eclipse.ui.navigator.ProjectExplorer">
         </view>
      </adapterFactory>
   </extension>
   <extension point="org.eclipse.ui.popupMenus">
      <objectContribution objectClass="org.eclipse.core.resources.IProject" adaptable="true" id="org.eclipse.jst.j2ee.ui.popupMenu">
         <menu label="%javaee.ui.popupMenu"  id="javeeUIPopupMenuCategory">
            <separator name="slot1"/> <!-- New/featured Java EE actions  -->
            <separator name="slot2"/> <!-- Create files category  -->
            <separator name="slot3"/> <!-- Project creation(clients)  -->
            <separator name="slot4"/> <!-- Legacy(J2EE) actions  -->
         </menu>
      </objectContribution>
        <!-- additional object contribution -->
      <objectContribution objectClass="org.eclipse.jdt.core.IJavaElement" adaptable="true" id="org.eclipse.jst.j2ee.ui.javaElement.popupMenu">
         <menu label="%javaee.ui.popupMenu" id="javeeUIPopupMenuCategory.javaElement">
            <separator name="slot1"/>
            <separator name="slot2"/>
            <separator name="slot3"/>
            <separator name="slot4"/>
         </menu>
      </objectContribution>
   </extension>
  <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.core.resources.IProject"
            adaptable="true"
            id="org.eclipse.jst.j2ee.internal.actions.ForceClasspathUpdateAction">
         <action
               label="%update-ear-libraries"
               tooltip="%update-ear-libraries-tooltip"
               class="org.eclipse.jst.j2ee.internal.actions.ForceClasspathUpdateAction"
               menubarPath="javeeUIPopupMenuCategory/slot1"
               enablesFor="+"
               icon="icons/full/obj16/library_obj.gif"
               id="org.eclipse.jst.j2ee.internal.actions.ForceClasspathUpdateAction">
         </action>
         <enablement>
		  <adapt type="org.eclipse.core.resources.IProject">
		  		<or>
					<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.web" />
					<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ejb" />
					<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.utility" />
					<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ear" />
					<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.appclient" />
					<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.connector" />
				</or>
			</adapt>
		</enablement>
      </objectContribution>
   </extension>
   
<!-- Navigator Object Contributions -->
<!-- EAR Group Contributions 
   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.wst.common.navigator.internal.groups.NavigatorGroup"
            id="org.eclipse.jst.j2ee.internal.ui.navigator.earProjectActions">
         <action
               label="%ear.file_ui_"
               icon="icons/full/ctool16/import_ear.gif"
               class="org.eclipse.jst.j2ee.internal.ear.actions.ImportEARAction"
               menubarPath="org.eclipse.wst.common.frameworks.internal.navigator.import.menu/additions"
               enablesFor="1"
               id="org.eclipse.jst.j2ee.internal.ui.navigator.importEARAction">
         </action>
         <action
               label="%ear.file_ui_"
               icon="icons/full/ctool16/export_ear.gif"
               class="org.eclipse.jst.j2ee.internal.ear.actions.ExportEARAction"
               menubarPath="org.eclipse.wst.common.frameworks.internal.navigator.export.menu/additions"
               enablesFor="1"
               id="org.eclipse.jst.j2ee.internal.ui.navigator.exportEARAction">
         </action>
         <visibility>
            <objectState
                  name="projectNature"
                  value="org.eclipse.jst.j2ee.EARNature">
            </objectState>
         </visibility>
      </objectContribution>
   </extension>
   -->
<!-- Navigator Object Contributions -->
<!-- Application Client Group Contributions
   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.wst.common.navigator.internal.groups.NavigatorGroup"
            id="org.eclipse.jst.j2ee.internal.ui.navigator.appClientProjectActions">
         <action
               label="%client.jar.file_ui_"
               icon="icons/full/ctool16/appclient_import_wiz.gif"
               class="org.eclipse.jst.j2ee.internal.client.actions.ImportApplicationClientAction"
               menubarPath="org.eclipse.wst.common.frameworks.internal.navigator.import.menu/additions"
               enablesFor="1"
               id="org.eclipse.jst.j2ee.internal.ui.navigator.importAppClientAction">
         </action>
         <action
               label="%client.jar.file_ui_"
               icon="icons/full/ctool16/appclient_export.gif"
               class="org.eclipse.jst.j2ee.internal.client.actions.ExportApplicationClientAction"
               menubarPath="org.eclipse.wst.common.frameworks.internal.navigator.export.menu/additions"
               enablesFor="1"
               id="org.eclipse.jst.j2ee.internal.ui.navigator.exportAppClientAction">
         </action>
         <visibility>
            <objectState
                  name="projectNature"
                  value="org.eclipse.jst.j2ee.ApplicationClientNature">
            </objectState>
         </visibility>
      </objectContribution>
   </extension>
    -->
<!-- Navigator Object Contributions -->
<!-- ================================================== -->
<!--          DEPLOY EXTENSIONS                         -->
<!-- ================================================== -->
<!--  <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="java.lang.Object"
            nameFilter="*"
            id="org.eclipse.jst.j2ee.internal.ui.deploy">
         <action
               label="%deploy_ui_"
               icon="icons/full/ctool16/re_execute.gif"
               class="org.eclipse.jst.j2ee.internal.actions.J2EEDeployAction"
               menubarPath="additions"
               id="deployAction">
         </action>
         <visibility>
            <or>
               <objectClass
                     name="org.eclipse.jst.j2ee.ejb.EJBJar">
               </objectClass>
               <objectClass
                     name="org.eclipse.jst.j2ee.ejb.EnterpriseBean">
               </objectClass>
               <objectClass
                     name="org.eclipse.jst.j2ee.webapplication.WebApp">
               </objectClass>
               <objectClass
                     name="org.eclipse.jst.j2ee.jca.Connector">
               </objectClass>
               <objectClass
                     name="org.eclipse.jst.j2ee.application.Application">
               </objectClass>
               <objectClass
                     name="org.eclipse.jst.j2ee.client.ApplicationClient">
               </objectClass>
               
                     <objectState
                           name="projectNature"
                           value="org.eclipse.wst.common.componentcore.ModuleCoreNature">
                     </objectState>
          
            </or>
         </visibility>
      </objectContribution>
   </extension> -->
<!-- Navigator Object Contributions -->

    <extension point="org.eclipse.ui.propertyPages">
 
     
<!-- =========== org.eclipse.jst.j2ee.internal.J2EEDependencyPage ============ -->
      <page
            adaptable="true"
      		objectClass="org.eclipse.core.resources.IProject"
      		name="%J2EEDependenciesPage.name"
            class="org.eclipse.jst.j2ee.internal.J2EEDependenciesPage"
            id="org.eclipse.jst.j2ee.internal.J2EEDependenciesPage">
           <enabledWhen>
			<and>
				<adapt
					type="org.eclipse.core.resources.IProject">
					<or> 
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.web" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ejb" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.utility" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ear" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.appclient" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.connector" />
					</or>
				</adapt>
			</and> 
         </enabledWhen>          
      </page>
      
      <page
      		adaptable="true"
            objectClass="org.eclipse.core.resources.IProject"
            name="%Web_Project_Settings"
            class="org.eclipse.jst.j2ee.internal.ui.J2EEPropertiesPage"
            id="J2EEPropertiesPage">
         <enabledWhen>
			<and>
				<adapt
					type="org.eclipse.core.resources.IProject">
					<or> 
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.web" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="wst.web" />
					</or>
				</adapt>
			</and> 
         </enabledWhen>
      </page>
            
    </extension>

<!--  
	<extension point="org.eclipse.ltk.core.refactoring.renameParticipants">
	  
		<renameParticipant
				class="org.eclipse.jst.j2ee.internal.actions.J2EERenameParticipant"
				id="org.eclipse.jst.j2ee.internal.actions.J2EERenameParticipant" 
				name="%J2EE_Rename_Participant"> 
			<enablement>
				<with variable="affectedNatures">
					<iterate operator="or">
						<equals value="org.eclipse.wst.common.modulecore.ModuleCoreNature" />

					</iterate>
				</with>
				<with variable="element">
					<instanceof value="org.eclipse.core.resources.IProject" />

				</with>
			</enablement> 
		</renameParticipant>
	</extension>
	
	<extension point="org.eclipse.ltk.core.refactoring.renameParticipants">
	  
		<renameParticipant
				class="org.eclipse.jst.j2ee.internal.actions.J2EEComponentRenameParticipant"
				id="org.eclipse.jst.j2ee.internal.actions.J2EEComponentRenameParticipant" 
				name="J2EE Rename Participant"> 
		<enablement> 
		   	<with variable="affectedNatures">
            	<iterate operator="or"> 
            			<equals value="org.eclipse.wst.common.modulecore.ModuleCoreNature" />  
            	</iterate>
            </with>
            <with
                  variable="element">
               <instanceof
                     value="org.eclipse.wst.common.componentcore.resources.IVirtualComponent">
               </instanceof>
            </with>
         </enablement> 
		</renameParticipant>
	</extension> -->
	
  <extension
         point="org.eclipse.ui.perspectives">
      <perspective
            name="%j2ee"
            icon="icons/full/cview16/j2ee_perspective.gif"
            class="org.eclipse.jst.j2ee.internal.perspective.J2EEPerspective"
            id="org.eclipse.jst.j2ee.J2EEPerspective">
      </perspective>
   </extension>	
   <extension
         point="org.eclipse.ui.perspectiveExtensions">
      <perspectiveExtension targetID="org.eclipse.jst.j2ee.J2EEPerspective">
         <perspectiveShortcut id="org.eclipse.debug.ui.DebugPerspective"/>
         <perspectiveShortcut id="org.eclipse.jdt.ui.JavaPerspective"/>
         <perspectiveShortcut id="org.eclipse.ui.resourcePerspective"/>
         <perspectiveShortcut id="org.eclipse.wst.web.ui.webDevPerspective"/>
       
 		<newWizardShortcut id="org.eclipse.jst.j2ee.ui.project.facet.EarProjectWizard"/>
		<newWizardShortcut id="org.eclipse.jst.servlet.ui.project.facet.WebProjectWizard"/>
		<newWizardShortcut id="org.eclipse.jst.ejb.ui.project.facet.EjbProjectWizard"/>
		<newWizardShortcut id="org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorProjectWizard"/>
		<newWizardShortcut id="org.eclipse.jst.j2ee.ui.project.facet.appclient.AppClientProjectWizard"/>
		<newWizardShortcut id="org.eclipse.wst.web.ui.internal.wizards.SimpleWebProjectWizard"/>				
				
		<newWizardShortcut id="org.eclipse.ui.wizards.new.folder"/>
		<newWizardShortcut id="org.eclipse.ui.wizards.new.file"/>
		
                     
         <actionSet id="org.eclipse.wst.server.ui.internal.webbrowser.actionSet"/>
      </perspectiveExtension>
      <perspectiveExtension targetID="org.eclipse.ui.resourcePerspective">
         <perspectiveShortcut id="org.eclipse.jst.j2ee.J2EEPerspective"/>
      </perspectiveExtension>
      <perspectiveExtension targetID="org.eclipse.wst.web.ui.webDevPerspective">
         <perspectiveShortcut id="org.eclipse.jst.j2ee.J2EEPerspective"/>
      </perspectiveExtension>
   </extension>	
    
   <extension
		point="org.eclipse.wst.common.frameworks.DataModelProviderExtension">
		<DataModelProvider
            class="org.eclipse.jst.j2ee.internal.earcreation.EarComponentCreationDataModelProvider"
            id="org.eclipse.jst.j2ee.internal.earcreation.IEarComponentCreationDataModelProperties"/>
	</extension>
	
	<extension
         id="context.Sensitive.Class.workingCopyManager"
         name="Working Copy Manager - UI Context Class"
         point="org.eclipse.jem.util.uiContextSensitiveClass">
      <uiContextSensitiveClass
            context="UI"
            key="workingCopyManager"
            className="org.eclipse.jst.common.jdt.internal.integration.ui.WTPUIWorkingCopyManager">
      </uiContextSensitiveClass>
   </extension>
   
    <extension point="org.eclipse.core.runtime.adapters">
        <factory
             class="org.eclipse.jst.j2ee.internal.deployables.EnterpriseDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IProject">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
        <factory
             class="org.eclipse.jst.j2ee.internal.deployables.EnterpriseDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.jst.j2ee.application.Application">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
        <factory
             class="org.eclipse.jst.j2ee.internal.deployables.EnterpriseDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IFile">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
       </factory>
        <factory
              adaptableType="org.eclipse.jst.j2ee.internal.ejb.provider.J2EEJavaClassProviderHelper"
              class="org.eclipse.jst.j2ee.internal.ClassHelperAdapterFactory">
           <adapter type="org.eclipse.core.resources.IFile"/>
           <adapter type="org.eclipse.core.resources.IResource"/>
        </factory>
    
    <!--
      <factory 
      		class="org.eclipse.jst.j2ee.internal.plugin.FacetedProjectAdapterFactory"
            adaptableType="org.eclipse.core.resources.IProject" >
         	<adapter type="org.eclipse.ui.IActionFilter"/>
      </factory>    
    -->
   </extension> 
   
   <extension
         point="org.eclipse.wst.server.core.moduleArtifactAdapters">
    <moduleArtifactAdapter
           id="org.eclipse.jst.j2ee.server.ear1"
           class="org.eclipse.jst.j2ee.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.j2ee.application.Application"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
   
     <moduleArtifactAdapter
            id="org.eclipse.jst.j2ee.server.ear2"
            class="org.eclipse.jst.j2ee.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.core.resources.IProject">
             	<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ear:1.4]" />
			 </adapt>
             
           </with>
         </enablement>
      </moduleArtifactAdapter>
      
      <moduleArtifactAdapter
            id="org.eclipse.jst.j2ee.server.ear3"
            class="org.eclipse.jst.j2ee.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.core.resources.IFile">
             	<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ear:1.4]" />
			 </adapt>
           </with>
         </enablement>
      </moduleArtifactAdapter>
     </extension>
     
  <extension point="org.eclipse.wst.common.project.facet.ui.wizardPages">
    <wizard-pages action="jst.ear.install">
      <page class="org.eclipse.jst.j2ee.ui.project.facet.EarFacetInstallPage"/>
    </wizard-pages>
    <wizard-pages action="jst.appclient.install">
      <page class="org.eclipse.jst.j2ee.ui.project.facet.appclient.AppClientFacetInstallPage"/>
    </wizard-pages>
  </extension>

  <extension
    point="org.eclipse.ui.ide.markerResolution">
	<markerResolutionGenerator
      markerType="org.eclipse.jst.j2ee.differentRuntimesDetected"
      class="org.eclipse.jst.j2ee.ui.project.facet.RuntimeMismatchMarkerResolutions">
    </markerResolutionGenerator>
  </extension>
      
    <extension
          point="org.eclipse.wst.common.modulecore.ComponentProjectMigrator">
       <migratorExtension class="org.eclipse.jst.j2ee.internal.J2EEComponentProjectMigrator"/>
    </extension>
   
   <extension 
       point="org.eclipse.jem.util.uiContextSensitiveClass">
       <uiContextSensitiveClass
          key="ValidateEditContext"
          className="org.eclipse.jst.j2ee.internal.listeners.ValidateEditListener"
          context="UI"/>
  </extension>

  <extension point="org.eclipse.jdt.ui.classpathAttributeConfiguration">
    <classpathAttributeConfiguration
      attributeName="org.eclipse.jst.component.dependency"
      class="org.eclipse.jst.j2ee.internal.classpathdep.ui.ClasspathDependencyAttributeConfiguration">
    </classpathAttributeConfiguration>
 </extension>
 
 <extension point="org.eclipse.jdt.ui.classpathAttributeConfiguration">
    <classpathAttributeConfiguration
      attributeName="org.eclipse.jst.component.nondependency"
      class="org.eclipse.jst.j2ee.internal.classpathdep.ui.ClasspathNonDependencyAttributeConfiguration">
    </classpathAttributeConfiguration>
 </extension>

 <extension
    point="org.eclipse.ui.ide.markerResolution">
	<markerResolutionGenerator
      markerType="org.eclipse.jst.j2ee.ClasspathDependencyValidatorMarker"
      class="org.eclipse.jst.j2ee.internal.classpathdep.ui.ClasspathDependencyValidatorMarkerResolutions">
    </markerResolutionGenerator>
  </extension>

  <extension
    point="org.eclipse.jdt.ui.classpathContainerPage">
    <classpathContainerPage
      name="%earLibrariesContainerName"
      class="org.eclipse.jst.j2ee.internal.wizard.EARLibrariesContainerPage"
      id="org.eclipse.jst.j2ee.internal.module.container">
    </classpathContainerPage>
  </extension>
</plugin>
