<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin>

   <extension
   		 point="org.eclipse.ui.navigator.viewer">
      <viewerContentBinding
         viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
           <contentExtension pattern="org.eclipse.jst.navigator.j2ee.ui.*"/>
           <contentExtension pattern="org.eclipse.jst.j2ee.navigator.ui.filters.*"/>
         </includes>
      </viewerContentBinding>
   </extension>
   
   <extension
         point="org.eclipse.ui.navigator.navigatorContent">
	<navigatorContent name="%extension.application.name"
		priority="highest" icon="icons/eargroup_obj.gif"
		activeByDefault="true"
		contentProvider="org.eclipse.jst.j2ee.navigator.internal.EARContentProvider"
		labelProvider="org.eclipse.jst.j2ee.navigator.internal.J2EELabelProvider"
		id="org.eclipse.jst.navigator.j2ee.ui.EARDDContent">
		<triggerPoints>
			<or>
				<instanceof value="java.io.File" />
				<and>
					<instanceof value="org.eclipse.emf.ecore.EObject" />
					<or>
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="common.xmi" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="application.xmi" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="modulemap.xmi" />
					</or>
				</and>
				<and>
					<adapt type="org.eclipse.core.resources.IProject">
						<or>
							<test forcePluginActivation="true"
								property="org.eclipse.wst.common.project.facet.core.projectFacet"
								value="jst.ear:1.4]" />
						</or>
					</adapt>
				</and>
			</or>
		</triggerPoints>
		<!--  The possibleChildren is more verbose to allow the drop handlers to be invoked for 
			children not provided by this extension
		-->
		<possibleChildren>
			<or>
				<instanceof value="java.io.File" />
				<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>
					<instanceof value="org.eclipse.emf.ecore.EObject" />
					<or>
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="common.xmi" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="application.xmi" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="client.xmi" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="modulemap.xmi" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="ejb.xmi" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="jca.xmi" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="webapplication.xmi" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="jsp.xmi" />
					</or>
				</and>
			</or>
		</possibleChildren>
		<commonSorter
		    id="org.eclipse.jst.j2ee.navigator.internal.ApplicationViewerSorter"
			class="org.eclipse.jst.j2ee.navigator.internal.ApplicationViewerSorter" />
		<!--  Handle open requests -->
		<actionProvider
			class="org.eclipse.jst.j2ee.navigator.internal.J2EEActionProvider"
			id="org.eclipse.jst.j2ee.navigator.ui.EARActionProvider">
			<enablement>
				<or>
					<and>
						<instanceof
							value="org.eclipse.emf.ecore.EObject" />
						<or>
							<test forcePluginActivation="true"
								property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
								value="common.xmi" />
							<test forcePluginActivation="true"
								property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
								value="application.xmi" />
							<test forcePluginActivation="true"
								property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
								value="modulemap.xmi" />
						</or>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.J2EEItemProvider" />
				</or>
			</enablement>
		</actionProvider>
		<dropAssistant
			class="org.eclipse.jst.j2ee.navigator.internal.dnd.AddProjectToEARDropAssistant"
			id="org.eclipse.jst.j2ee.navigator.ui.AddModulesToEAR">
			<possibleDropTargets>
				<or>
					<adapt type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ear" />
					</adapt>
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
				</or>
			</possibleDropTargets>
		</dropAssistant>
		<dropAssistant
			class="org.eclipse.jst.j2ee.navigator.internal.dnd.ImportJ2EEModuleDropAssistant"
			id="org.eclipse.jst.j2ee.navigator.ui.ImportJ2EEModule">
			<possibleDropTargets>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<adapt type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ear" />
					</adapt>
				</or>
			</possibleDropTargets>
		</dropAssistant>

		<!-- EAR New -->
		<commonWizard
        menuGroupId="org.eclipse.jst.j2ee.ui.newProjects"
        type="new"
        wizardId="org.eclipse.jst.j2ee.ui.project.facet.EarProjectWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<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.ejb" />
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.connector" />
								<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.web" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard>
		<!-- EAR Import -->
		<commonWizard type="import"
			wizardId="org.eclipse.jst.j2ee.internal.wizard.EARComponentImportWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<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.web" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard>
		<!-- Utility Jar Import -->
		<commonWizard type="import"
			wizardId="org.eclipse.jst.j2ee.internal.wizard.J2EEUtilityJarImportWizardNew">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.ear" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<instanceof
						value="org.eclipse.jst.j2ee.application.Module" />
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
					<and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard>

		<!-- EAR export -->
		<commonWizard type="export"
			wizardId="org.eclipse.jst.j2ee.internal.wizard.EARComponentExportWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.ear" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
				</or>
			</enablement>
		</commonWizard>
		
		<commonWizard
			menuGroupId="org.eclipse.jst.j2ee.ui.newProjects" 
			type="new"
			wizardId="org.eclipse.wst.web.ui.internal.wizards.SimpleWebProjectWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.ear" />
							</or>
						</adapt>
					</and>
				    <and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard> 
		<commonWizard
			menuGroupId="org.eclipse.jst.j2ee.ui.newProjects" 
			type="new"
			wizardId="org.eclipse.jpt.ui.wizard.newJpaProject">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.ear" />
							</or>
						</adapt>
					</and>
				    <and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>											
				</or>
			</enablement>
		</commonWizard> 
	</navigatorContent>
	
	<navigatorContent name="%extension.appclient.name" priority="highest"
		icon="icons/appclientgroup_obj.gif" activeByDefault="true"
		contentProvider="org.eclipse.jst.j2ee.navigator.internal.J2EEContentProvider"
		labelProvider="org.eclipse.jst.j2ee.navigator.internal.J2EELabelProvider"
		id="org.eclipse.jst.navigator.j2ee.ui.AppClientContent">
		<triggerPoints>
			<or>
				<and>
					<instanceof value="org.eclipse.emf.ecore.EObject" />
					<or>
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="client.xmi" />
					</or>
				</and>
				<adapt type="org.eclipse.core.resources.IProject">
					<test forcePluginActivation="true"
						property="org.eclipse.wst.common.project.facet.core.projectFacet"
						value="jst.appclient:1.4]" />
				</adapt>
			</or>
		</triggerPoints>
		<possibleChildren>
			<and>
				<instanceof value="org.eclipse.emf.ecore.EObject" />
				<or>
					<test forcePluginActivation="true"
						property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
						value="client.xmi" />
				</or>
			</and>
		</possibleChildren>
		<commonSorter
		    id="org.eclipse.jst.j2ee.navigator.internal.J2EEViewerSorter"
			class="org.eclipse.jst.j2ee.navigator.internal.J2EEViewerSorter" />
		<!--  Handle open requests -->
		<actionProvider
			class="org.eclipse.jst.j2ee.navigator.internal.J2EEActionProvider"
			id="org.eclipse.jst.j2ee.navigator.ui.AppClientActionProvider">
			<enablement>
				<or>
					<and>
						<instanceof
							value="org.eclipse.emf.ecore.EObject" />
						<or>
							<test forcePluginActivation="true"
								property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
								value="client.xmi" />
						</or>
					</and>
				</or>
			</enablement>
		</actionProvider>
		
		<!-- AppClient New -->
		<commonWizard
        menuGroupId="org.eclipse.jst.j2ee.ui.newProjects"
        type="new"
        wizardId="org.eclipse.jst.j2ee.ui.project.facet.appclient.AppClientProjectWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<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" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
					<and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard>
		<!-- App Client Import -->
		<commonWizard type="import"
			wizardId="org.eclipse.jst.j2ee.internal.wizard.AppClientComponentImportWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.ear" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
					<and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard>
		<!-- App Client export -->
		<commonWizard type="export"
			wizardId="org.eclipse.jst.j2ee.internal.wizard.AppClientComponentExportWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.appclient" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.client.ApplicationClient" />
				</or>
			</enablement>
		</commonWizard>
	</navigatorContent>
		
	<navigatorContent name="%extension.web.name" priority="highest"
		icon="icons/webgroup_obj.gif" activeByDefault="true"
		contentProvider="org.eclipse.jst.j2ee.navigator.internal.J2EEContentProvider"
		labelProvider="org.eclipse.jst.j2ee.navigator.internal.J2EELabelProvider"
		id="org.eclipse.jst.navigator.j2ee.ui.WebDDContent">
		<triggerPoints>
			<or>
				<and>
					<instanceof value="org.eclipse.emf.ecore.EObject" />
					<or>
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="webapplication.xmi" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="jsp.xmi" />
					</or>
				</and>
				<adapt type="org.eclipse.core.resources.IProject">
					<test forcePluginActivation="true"
						property="org.eclipse.wst.common.project.facet.core.projectFacet"
						value="jst.web:2.4]" />
				</adapt>
			</or>
		</triggerPoints>
		<possibleChildren>
		  <or>
			<and>
				<instanceof value="org.eclipse.emf.ecore.EObject"/>
				<or>
					<test forcePluginActivation="true"
						property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
						value="webapplication.xmi" />
					<test forcePluginActivation="true"
						property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
						value="jsp.xmi" />
				</or>
			</and>
		  </or>
		</possibleChildren>
		<commonSorter
		    id="org.eclipse.jst.j2ee.navigator.internal.J2EEViewerSorter"
			class="org.eclipse.jst.j2ee.navigator.internal.J2EEViewerSorter" />
		<!--  Handle open requests -->
		<actionProvider
			class="org.eclipse.jst.j2ee.navigator.internal.J2EEActionProvider"
			id="org.eclipse.jst.j2ee.navigator.ui.WebActionProvider">
			<enablement>
				<and>
					<instanceof value="org.eclipse.emf.ecore.EObject" />
					<or>
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="webapplication.xmi" />
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="jsp.xmi" />
					</or>
				</and>
			</enablement>
		</actionProvider>
		<actionProvider
			class="org.eclipse.ui.internal.navigator.resources.actions.NewActionProvider"
			id="org.eclipse.jst.j2ee.navigator.internal.WebNewActionProvider">
			<enablement>
				<instanceof value="org.eclipse.jst.j2ee.internal.war.ui.util.WebGroupItemProvider"/>
			</enablement>
		</actionProvider>

		<!-- Web New -->
		<commonWizard
        menuGroupId="org.eclipse.jst.j2ee.ui.newProjects"
        type="new"
        wizardId="org.eclipse.jst.servlet.ui.project.facet.WebProjectWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<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.ear" />
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.web" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
					<and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard>
		
		<!-- Web Import -->
		<commonWizard type="import"
			wizardId="org.eclipse.jst.servlet.ui.internal.wizard.WebComponentImportWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<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.web" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard>
		<!-- Web Export -->
		<commonWizard type="export"
			wizardId="org.eclipse.jst.servlet.ui.internal.wizard.WebComponentExportWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.web" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.webapplication.WebApp" />
					<instanceof
						value="org.eclipse.jst.j2ee.internal.war.ui.util.WebGroupItemProvider" />
				</or>
			</enablement>
		</commonWizard>

		<!-- The contribution of the New *.jsp wizard to Files, Folders, and Projects 
			is handled in org.eclipse.jst.jsp.ui. This contribution adds the 
			wizard to the model elements contributed by the J2EE Content Provider -->
		<commonWizard
        menuGroupId="org.eclipse.wst.web.ui"
        type="new"
        wizardId="org.eclipse.jst.jsp.ui.internal.wizard.NewJSPWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.jst.j2ee.internal.war.ui.util.WebGroupItemProvider" />

					<instanceof
						value="org.eclipse.jst.j2ee.webapplication.WebApp" />

				</or>
			</enablement>
		</commonWizard>

		<!-- The contribution of the New *.html wizard to Files, Folders, and Projects 
			is handled in org.eclipse.jst.html.ui. This contribution adds the 
			wizard to the model elements contributed by the J2EE Content Provider -->
		<commonWizard
        menuGroupId="org.eclipse.wst.web.ui"
        type="new"
        wizardId="org.eclipse.wst.html.ui.internal.wizard.NewHTMLWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.jst.j2ee.internal.war.ui.util.WebGroupItemProvider" />
					<instanceof
						value="org.eclipse.jst.j2ee.webapplication.WebApp" />
				</or>
			</enablement>
		</commonWizard>
		
		<!-- New Servlet -->
		<commonWizard
        menuGroupId="org.eclipse.wst.web.ui.webclass"
        type="new"
        wizardId="org.eclipse.jst.servlet.ui.internal.wizard.AddServletWizard">
			<enablement>
				<or>
					<and>
						<adapt
							type="org.eclipse.core.resources.IResource">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.web"/>
							</or>
						</adapt>
						<or>
							<instanceof value="org.eclipse.core.resources.IProject"/>
							<instanceof value="org.eclipse.jdt.core.IPackageFragment"/>
							<instanceof value="org.eclipse.jdt.core.IPackageFragmentRoot"/>
							<instanceof value="org.eclipse.jdt.core.ICompilationUnit"/>
						</or>
					</and>
					<instanceof
						value="org.eclipse.jst.servlet.ui.internal.navigator.ICompressedNode"/>
					<instanceof
						value="org.eclipse.jst.j2ee.webapplication.WebApp"/>
					<instanceof
						value="org.eclipse.jst.j2ee.internal.war.ui.util.WebServletGroupItemProvider"/>
					<instanceof
						value="org.eclipse.jst.j2ee.webapplication.Servlet"/>
					<instanceof
						value="org.eclipse.jst.j2ee.internal.war.ui.util.WebServletMappingGroupItemProvider"/>
					<instanceof
						value="org.eclipse.jst.j2ee.webapplication.ServletMapping"/>
				</or>
			</enablement>
		</commonWizard>
		
		<!-- New Filter -->
		<commonWizard
        menuGroupId="org.eclipse.wst.web.ui.webclass"
        type="new"
        wizardId="org.eclipse.jst.servlet.ui.internal.wizard.AddFilterWizard">
			<enablement>
				<or>
					<and>
						<adapt
							type="org.eclipse.core.resources.IResource">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.web"/>
							</or>
						</adapt>
						<or>
							<instanceof value="org.eclipse.core.resources.IProject"/>
							<instanceof value="org.eclipse.jdt.core.IPackageFragment"/>
							<instanceof value="org.eclipse.jdt.core.IPackageFragmentRoot"/>
							<instanceof value="org.eclipse.jdt.core.ICompilationUnit"/>
						</or>
					</and>
					<instanceof
						value="org.eclipse.jst.servlet.ui.internal.navigator.ICompressedNode"/>
					<instanceof
						value="org.eclipse.jst.j2ee.webapplication.WebApp"/>
					<instanceof
						value="org.eclipse.jst.j2ee.internal.war.ui.util.WebFiltersGroupItemProvider"/>
					<instanceof
						value="org.eclipse.jst.j2ee.webapplication.Filter"/>
					<instanceof
						value="org.eclipse.jst.j2ee.internal.war.ui.util.WebFilterMappingGroupItemProvider"/>
					<instanceof
						value="org.eclipse.jst.j2ee.webapplication.FilterMapping"/>
				</or>
			</enablement>
		</commonWizard>
		
		<!-- New Listener -->
		<commonWizard
        menuGroupId="org.eclipse.wst.web.ui.webclass"
        type="new"
        wizardId="org.eclipse.jst.servlet.ui.internal.wizard.AddListenerWizard">
			<enablement>
				<or>
					<and>
						<adapt
							type="org.eclipse.core.resources.IResource">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.web"/>
							</or>
						</adapt>
						<or>
							<instanceof value="org.eclipse.core.resources.IProject"/>
							<instanceof value="org.eclipse.jdt.core.IPackageFragment"/>
							<instanceof value="org.eclipse.jdt.core.IPackageFragmentRoot"/>
							<instanceof value="org.eclipse.jdt.core.ICompilationUnit"/>
						</or>
					</and>
					<instanceof
						value="org.eclipse.jst.servlet.ui.internal.navigator.ICompressedNode"/>
					<instanceof
						value="org.eclipse.jst.j2ee.webapplication.WebApp"/>
					<instanceof
						value="org.eclipse.jst.j2ee.internal.war.ui.util.WebListenerGroupItemProvider"/>
					<instanceof
						value="org.eclipse.jst.j2ee.common.Listener"/>
				</or>
			</enablement>
		</commonWizard>
	</navigatorContent>
	<navigatorContent name="%extension.ejb.name" priority="highest"
		icon="icons/ejbgroup_obj.gif" activeByDefault="true"
		contentProvider="org.eclipse.jst.j2ee.navigator.internal.J2EEContentProvider"
		labelProvider="org.eclipse.jst.j2ee.navigator.internal.J2EELabelProvider"
		id="org.eclipse.jst.navigator.j2ee.ui.EJBDDContent">
		<triggerPoints>
			<or>
				<and>
					<instanceof value="org.eclipse.emf.ecore.EObject" />
					<test forcePluginActivation="true"
						property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
						value="ejb.xmi" />
				</and>
				<and>
					<adapt type="org.eclipse.core.resources.IProject"> 
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ejb:2.1]" />
					</adapt>
				</and>
			</or>
		</triggerPoints>
		<possibleChildren>
			<or>
				<and>
					<instanceof value="org.eclipse.emf.ecore.EObject" />
					<or>
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
							value="ejb.xmi" />
					</or>
				</and>
				<instanceof value="org.eclipse.jst.j2ee.internal.ejb.provider.J2EEJavaClassProviderHelper"/>
    <instanceof value="org.eclipse.jst.j2ee.internal.ejb.provider.GroupedEJBItemProvider"/>
			</or>
   <instanceof value="org.eclipse.jst.j2ee.navigator.internal.LoadingDDNode"/>
		</possibleChildren>
		<commonSorter
		    id="org.eclipse.jst.j2ee.navigator.internal.J2EEViewerSorter"
			class="org.eclipse.jst.j2ee.navigator.internal.J2EEViewerSorter" />
		<!--  Handle open requests -->
		<actionProvider
			class="org.eclipse.jst.j2ee.navigator.internal.J2EEActionProvider"
			id="org.eclipse.jst.j2ee.navigator.ui.EJBActionProvider">
			<enablement>
				<or>
					<and>
						<instanceof value="org.eclipse.emf.ecore.EObject" />
						<test forcePluginActivation="true"
								property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
								value="ejb.xmi" />
					</and>
					<instanceof value="org.eclipse.jst.j2ee.internal.ejb.provider.J2EEJavaClassProviderHelper"/>
				</or>
			</enablement>
		</actionProvider>
		<!--  By default, anything that can adapt to an IResource gets  New Action Provider (from the Resources extension),
			so we just need to add one for the EJB Item Providers (the groupings in the tree) 
		-->
		<actionProvider
			class="org.eclipse.ui.internal.navigator.resources.actions.NewActionProvider"
			id="org.eclipse.jst.j2ee.navigator.internal.EjbNewActionProvider">
			<enablement>
				<instanceof
					value="org.eclipse.jst.j2ee.internal.ejb.provider.GroupedEJBItemProvider" />
			</enablement>
		</actionProvider>

		<!-- EJB New -->
		<commonWizard
        menuGroupId="org.eclipse.jst.j2ee.ui.newProjects"
        type="new"
        wizardId="org.eclipse.jst.ejb.ui.project.facet.EjbProjectWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<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.ejb" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
					<and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard>
		<!-- EJB Import -->
		<commonWizard type="import"
			wizardId="org.eclipse.jst.ejb.ui.internal.wizard.EJBComponentImportWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<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.ejb" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
					<and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard>
		<!-- EJB Export -->
		<commonWizard type="export"
			wizardId="org.eclipse.jst.ejb.ui.internal.wizard.EJBComponentExportWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.ejb" />
							</or>
						</adapt>
					</and>
					<instanceof value="org.eclipse.jst.j2ee.ejb.EJBJar" />
					<instanceof
						value="org.eclipse.jst.j2ee.internal.ejb.provider.GroupedEJBItemProvider" />
				</or>
			</enablement>
		</commonWizard>

		<!-- Add Enterprise Bean -->
		<commonWizard
        menuGroupId="org.eclipse.jst.ejb.ui"
        type="new"
        wizardId="org.eclipse.jst.j2ee.ejb.annotation.ui.internal.wizards.AddEjbWizard">
			<enablement>
				<or>
					<adapt
						type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ejb.xdoclet" />
					</adapt>
					<and>
						<instanceof
							value="org.eclipse.jst.j2ee.ejb.EJBJar" />
						<adapt
							type="org.eclipse.core.resources.IResource">
							<test forcePluginActivation="true"
								property="org.eclipse.wst.common.project.facet.core.projectFacet"
								value="jst.ejb.xdoclet" />
						</adapt>
					</and>
					<and>
						<instanceof
							value="org.eclipse.jst.j2ee.internal.provider.J2EEItemProvider" />
						<test forcePluginActivation="true"
							property="org.eclipse.jst.j2ee.provider.projectFacet"
							value="jst.ejb.xdoclet" />
					</and>
				</or>
			</enablement>
		</commonWizard>
  		<commonWizard
        		menuGroupId="org.eclipse.jst.ejb.ui"
        		type="new"
        		wizardId="org.eclipse.jst.ejb.ui.internal.wizard.AddSessionBeanWizard">
     		<enablement>
				<or>
					<and>
						<adapt
							type="org.eclipse.core.resources.IResource">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.ejb:3.0"/>
							</or>
						</adapt>
						<or>
							<instanceof value="org.eclipse.core.resources.IProject"/>
							<instanceof value="org.eclipse.jdt.core.IPackageFragment"/>
							<instanceof value="org.eclipse.jdt.core.IPackageFragmentRoot"/>
							<instanceof value="org.eclipse.jdt.core.ICompilationUnit"/>
						</or>
					</and>
					<and>
						<instanceof
							value="org.eclipse.jst.j2ee.ejb.EJBJar" />
						<adapt
							type="org.eclipse.core.resources.IResource">
							<test forcePluginActivation="true"
								property="org.eclipse.wst.common.project.facet.core.projectFacet"
								value="jst.ejb:3.0" />
						</adapt>
					</and>
					<and>
						<instanceof
							value="org.eclipse.jst.j2ee.internal.provider.J2EEItemProvider" />
						<test forcePluginActivation="true"
							property="org.eclipse.jst.j2ee.provider.projectFacet"
							value="jst.ejb.xdoclet" />
					</and>
				</or>
			</enablement>
  		</commonWizard>
    <commonWizard
          menuGroupId="org.eclipse.jst.ejb.ui"
          type="new"
          wizardId="org.eclipse.jst.ejb.ui.internal.wizard.AddMessageDrivenBeanWizard">
       <enablement>
          <or>
             <and>
                <adapt
                      type="org.eclipse.core.resources.IResource">
                   <or>
                      <test
                            forcePluginActivation="true"
                            property="org.eclipse.wst.common.project.facet.core.projectFacet"
                            value="jst.ejb:3.0">
                      </test>
                   </or>
                </adapt>
                <or>
                   <instanceof
                         value="org.eclipse.core.resources.IProject">
                   </instanceof>
                   <instanceof
                         value="org.eclipse.jdt.core.IPackageFragment">
                   </instanceof>
                   <instanceof
                         value="org.eclipse.jdt.core.IPackageFragmentRoot">
                   </instanceof>
                   <instanceof
                         value="org.eclipse.jdt.core.ICompilationUnit">
                   </instanceof>
                </or>
             </and>
             <and>
                <instanceof
                      value="org.eclipse.jst.j2ee.ejb.EJBJar">
                </instanceof>
                <adapt
                      type="org.eclipse.core.resources.IResource">
                   <test
                         forcePluginActivation="true"
                         property="org.eclipse.wst.common.project.facet.core.projectFacet"
                         value="jst.ejb:3.0">
                   </test>
                </adapt>
             </and>
             <and>
                <instanceof
                      value="org.eclipse.jst.j2ee.internal.provider.J2EEItemProvider">
                </instanceof>
                <test
                      forcePluginActivation="true"
                      property="org.eclipse.jst.j2ee.provider.projectFacet"
                      value="jst.ejb.xdoclet">
                </test>
             </and>
          </or>
       </enablement>
    </commonWizard>
	</navigatorContent>
	<navigatorContent name="%extension.connector.name"
		priority="highest" icon="icons/connectorgroup_obj.gif"
		activeByDefault="true"
		contentProvider="org.eclipse.jst.j2ee.navigator.internal.J2EEContentProvider"
		labelProvider="org.eclipse.jst.j2ee.navigator.internal.J2EELabelProvider"
		id="org.eclipse.jst.navigator.j2ee.ui.ConnectorDDContent">
		<triggerPoints>
			<or>
				<and>
					<instanceof value="org.eclipse.emf.ecore.EObject" />
					<test forcePluginActivation="true"
						property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
						value="jca.xmi" />
				</and>
				<adapt type="org.eclipse.core.resources.IProject">
					<test forcePluginActivation="true"
						property="org.eclipse.wst.common.project.facet.core.projectFacet"
						value="jst.connector" />
				</adapt>
			</or>
		</triggerPoints>
		<possibleChildren>
			<and>
				<instanceof value="org.eclipse.emf.ecore.EObject" />
				<test forcePluginActivation="true"
					property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
					value="jca.xmi" />
			</and>
		</possibleChildren>
		<commonSorter
		    id="org.eclipse.jst.j2ee.navigator.internal.J2EEViewerSorter"
			class="org.eclipse.jst.j2ee.navigator.internal.J2EEViewerSorter" />
		<!--  Handle open requests -->
		<actionProvider
			class="org.eclipse.jst.j2ee.navigator.internal.J2EEActionProvider"
			id="org.eclipse.jst.j2ee.navigator.ui.ConnectorActionProvider">
			<enablement>
				<and>
					<instanceof value="org.eclipse.emf.ecore.EObject" />
					<test forcePluginActivation="true"
						property="org.eclipse.wst.common.emfworkbench.integration.emfPackage"
						value="jca.xmi" />
				</and>
			</enablement>
		</actionProvider>

		<!-- Connector New -->
		<commonWizard
        menuGroupId="org.eclipse.jst.j2ee.ui.newProjects"
        type="new"
        wizardId="org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorProjectWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<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.connector" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
					<and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard>
		<!-- Connector import -->
		<commonWizard type="import"
			wizardId="org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorComponentImportWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<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.connector" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.application.Application" />
					<instanceof
						value="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider" />
					<instanceof
						value="org.eclipse.jst.j2ee.jca.internal.impl.ResourceAdapterImpl" />
					<and>
					  <instanceof value="java.util.Collection"/>
					  <count value="0" />
					</and>
				</or>
			</enablement>
		</commonWizard>
		<!-- Connector Export -->
		<commonWizard type="export"
			wizardId="org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorComponentExportWizard">
			<enablement>
				<or>
					<instanceof
						value="org.eclipse.core.resources.IWorkspaceRoot" />
					<and>
						<adapt
							type="org.eclipse.core.resources.IProject">
							<or>
								<test forcePluginActivation="true"
									property="org.eclipse.wst.common.project.facet.core.projectFacet"
									value="jst.connector" />
							</or>
						</adapt>
					</and>
					<instanceof
						value="org.eclipse.jst.j2ee.jca.Connector" />
					<instanceof
						value="org.eclipse.jst.j2ee.jca.internal.impl.ResourceAdapterImpl" />
				</or>
			</enablement>
		</commonWizard>
	</navigatorContent>
 <commonFilter
       activeByDefault="true"
       description="%filter.jetemitters.description"
       id="org.eclipse.jst.j2ee.navigator.ui.filters.jetemitters"
       name="%filter.jetemitters.name">
    <filterExpression>
       <adapt type="org.eclipse.core.resources.IProject">
          <test
                forcePluginActivation="true"
                property="org.eclipse.core.resources.name"
                value=".JETEmitters"/>
       </adapt>
    </filterExpression>
 </commonFilter>			
 
   </extension>
   
  <extension 
  		point="org.eclipse.core.runtime.adapters">
    <factory
          adaptableType="org.eclipse.jst.j2ee.common.J2EEEObject"
          class="org.eclipse.jst.j2ee.navigator.internal.J2EEEMFAdapterFactory">
       <adapter type="org.eclipse.core.resources.IFile"/>
       <adapter type="org.eclipse.core.resources.IResource"/>
    </factory>
    <factory
          adaptableType="org.eclipse.jst.j2ee.common.J2EEEAttribute"
          class="org.eclipse.jst.j2ee.navigator.internal.J2EEEMFAdapterFactory">
       <adapter type="org.eclipse.core.resources.IFile"/>
       <adapter type="org.eclipse.core.resources.IResource"/>
    </factory>
  </extension>
     
<!-- ====================================================== -->
<!--           Label Decorators                             -->
<!-- ====================================================== -->
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            adaptable="true"
            location="TOP_LEFT"
            lightweight="true"
            label="%j2eeProjectDecorator"
            state="true"
            class="org.eclipse.jst.j2ee.navigator.internal.J2EEProjectDecorator"
            id="org.eclipse.jst.j2ee.navigator.internal.J2EEProjectDecorator">
         <enablement>
           <or>
            <objectClass name="org.eclipse.core.resources.IProject"/>
            <objectClass name="org.eclipse.jdt.core.IJavaProject"/>
           </or>
         </enablement>
         <description>
            %j2eeProjectDecorator.description
         </description>
      </decorator>
   </extension>
   
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            adaptable="true"
            label="%PROBLEM_MARKER_LABEL_RESOURCE_DECORATOR"
            state="true"
            class="org.eclipse.jdt.ui.ProblemsLabelDecorator"
            id="org.eclipse.jst.j2ee.navigator.ui.java.resource.decorator">
            <enablement>
                <objectClass name="org.eclipse.core.resources.IResource"/> 
            </enablement>
      </decorator>
   </extension>  
      
</plugin>
