<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
   <extension point="org.eclipse.wst.common.project.facet.ui.wizardPages">
    <wizard-pages action="jst.ear#5.0#install">
      <page class="org.eclipse.jst.jee.ui.project.facet.EarJavaEEFacetInstallPage"/>
    </wizard-pages>
  </extension>

   
    <extension point="org.eclipse.core.runtime.adapters">
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IProject">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IFile">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
       </factory>

        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.jst.javaee.application.Application">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
        <factory
              adaptableType="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider"
              class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
           <adapter
                 type="org.eclipse.debug.ui.actions.ILaunchable">
           </adapter>
        </factory>

   </extension>
   
    <extension point="org.eclipse.core.runtime.adapters">
         <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IProject">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.jdt.core.ICompilationUnit">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IFile">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
       </factory>
       <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.jst.javaee.web.Servlet">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
       </factory>       
       <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.jst.javaee.web.WebApp">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
       </factory> 

   </extension>  

    <extension point="org.eclipse.core.runtime.adapters">
         <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IProject">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
        </factory>
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.jdt.core.ICompilationUnit">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
        </factory>
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IFile">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
       </factory>

	   	<factory
	    	class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
	     	adaptableType="org.eclipse.jst.javaee.ejb.EJBJar">
	     	<adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
		</factory>
		
		<factory
			class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
	     	adaptableType="org.eclipse.jst.javaee.ejb.SessionBean">
	     	<adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
	   	</factory>
	   		
		<factory
			class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
	     	adaptableType="org.eclipse.jst.javaee.ejb.MessageDrivenBean">
	     	<adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
	   	</factory>	
	   	
	   	<factory
			class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
	     	adaptableType="org.eclipse.jst.javaee.ejb.EntityBean">
	     	<adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
	   	</factory>       
   </extension> 
   
   <extension
         point="org.eclipse.wst.server.core.moduleArtifactAdapters">
  
    <moduleArtifactAdapter
           id="org.eclipse.jst.jee.server.ear1"
           class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.application.Application"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
 
     <moduleArtifactAdapter
            id="org.eclipse.jst.jee.server.ear2"
            class="org.eclipse.jst.jee.ui.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:5.0" />
			 </adapt>
             
           </with>
         </enablement>
      </moduleArtifactAdapter>
      
      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.server.ear3"
            class="org.eclipse.jst.jee.ui.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:5.0" />
			 </adapt>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory"
            id="org.eclipse.jst.jee.server.ear4">
         <enablement>
            <with
                  variable="selection">
               <adapt
                     type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
               </adapt>
            </with>
         </enablement>
      </moduleArtifactAdapter>
     </extension>


 <!-- ==================================================================== -->
<!-- Extension point: org.eclipse.etools.server.core.moduleObjectAdapters -->
<!-- Purpose: Define adapters for Web resources                           -->
<!-- ==================================================================== -->
      <extension point="org.eclipse.wst.server.core.moduleArtifactAdapters">  
    
       <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource"
            class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">     
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.web.WebApp"/>
           </with>
         </enablement>
      </moduleArtifactAdapter> 
       
      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource2"
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">      
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.web.Servlet"/>
           </with>
         </enablement>
       </moduleArtifactAdapter>
      
       <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource3"
            class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">     
         <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.web:2.5" />
			 </adapt>
           </with>
         </enablement>
       </moduleArtifactAdapter>     
       
        <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource4"
            class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">
         <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.web:2.5" />
			 </adapt>
           </with>
         </enablement>
       </moduleArtifactAdapter>

      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource5"
            class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">
          
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jdt.core.ICompilationUnit">
             <test forcePluginActivation="true"
							property="org.eclipse.jst.j2ee.common.projectFacet"
							value="jst.web:2.5" />             
             </adapt>
           </with>
         </enablement>
       </moduleArtifactAdapter>
   </extension>
   
   <!-- ==================================================================== -->
<!-- Purpose: Define adapters for EJB resources                           -->
<!-- Extension point: org.eclipse.wst.server.core.moduleArtifactAdapters  -->
<!-- ==================================================================== -->
   <extension
         point="org.eclipse.wst.server.core.moduleArtifactAdapters">
       
      <moduleArtifactAdapter
            id="org.eclipse.jst.j2ee.server.ejb"
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.ejb.EJBJar"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            id="org.eclipse.jst.j2ee.server.ejb2"
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.ejb.SessionBean"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
     
      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.server.ejb3"
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jdt.core.ICompilationUnit"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.server.ejb4"
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <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.ejb:3.0" />
			 </adapt>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.server.ejb5"
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <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.ejb:3.0" />
			 </adapt>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      
      <moduleArtifactAdapter
            id="org.eclipse.jst.j2ee.server.ejb6"
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.ejb.MessageDrivenBean"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      
      <moduleArtifactAdapter
            id="org.eclipse.jst.j2ee.server.ejb7"
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.ejb.EntityBean"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      </extension>
   <extension
         point="org.eclipse.wst.server.core.moduleArtifactAdapters">
      <moduleArtifactAdapter
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
            id="org.eclipse.jst.jee.server.ejb">
         <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.ejb:3.0">
                  </test>
               </adapt>
            </with>
         </enablement>
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
            id="org.eclipse.jst.jee.server.ejb77">
         <enablement>
            <with
                  variable="selection">
               <instanceof
                     value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider">
               </instanceof>
            </with>
         </enablement>
      </moduleArtifactAdapter>
   </extension>
  
  <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.core.resources.IProject"
            adaptable="true"
            id="org.eclipse.jst.jee.ui.CreateDeploymentFilesAction">
         <action
               class="org.eclipse.jst.jee.ui.internal.CreateDeploymentFilesActionDelegate"
               enablesFor="1"
               icon="icons/full/ctool16/dep_desc.gif"
               id="createDeploymentFiles"
               label="%create_deploy_files"
               menubarPath="javeeUIPopupMenuCategory/slot2">
		</action>
        <enablement>
            <or>
               	  <adapt type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ejb:[3.0" />
				  </adapt>
				  <adapt type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.web:[2.5" />
				  </adapt>
				  <adapt type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ear:[5.0" />
				  </adapt>
				  <adapt type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.appclient:[5.0" />
				  </adapt>
      <instanceof
            value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
      </instanceof>
      <instanceof
            value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider">
      </instanceof>
      <instanceof
            value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
      </instanceof>
		    </or>
         </enablement>         		   		
      </objectContribution>
      <objectContribution
            id="show_dep_prop_page"
            nameFilter="*"
            objectClass="org.eclipse.jst.jee.ui.internal.navigator.ear.ModulesNode">
         <action
               class="org.eclipse.jst.jee.ui.internal.navigator.ear.ShowDepPropPageAction"
               enablesFor="1"
               id="show_dep_prop_page"
               label="Add/Remove"
               menubarPath="additions">
         </action>
      </objectContribution>
   </extension>
   
   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            adaptable="true"
            id="org.eclipse.jst.jee.ui.CreateDeploymentFilesAction"
            objectClass="java.lang.Object">
         <action
               class="org.eclipse.jst.jee.ui.internal.CreateDeploymentFilesActionDelegate"
               enablesFor="1"
               icon="icons/full/ctool16/dep_desc.gif"
               id="createDeploymentFiles"
               label="%create_deploy_files">
		</action>
        <enablement>
            <or>
      <instanceof
            value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
      </instanceof>
      <instanceof
            value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider">
      </instanceof>
      <instanceof
            value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
      </instanceof>
      <instanceof
            value="org.eclipse.jst.jee.ui.internal.navigator.appclient.GroupAppClientProvider">
      </instanceof>
		    </or>
         </enablement>         		   		
      </objectContribution>
   </extension>
   
   <!--
     <extension
         point="org.eclipse.wst.common.frameworks.OperationExtension"
         id="org.eclipse.wst.common.frameworks.datamodel.tests.extended">
      <operationExtension
            id="org.eclipse.jst.jee.ui.internal.CreateDeploymentFilesDataModelOperation"
            postOperationClass="org.eclipse.wst.common.frameworks.datamodel.tests.extended.B"
            preOperationClass="org.eclipse.wst.common.frameworks.datamodel.tests.extended.A"/>
 
 	</extension>
    -->
    <extension  
	  point="org.eclipse.ui.navigator.navigatorContent">
   <navigatorContent
         activeByDefault="true"
         contentProvider="org.eclipse.jst.jee.ui.internal.navigator.Ejb3ContentProvider"
         icon="icons/ejbgroup_obj.gif"
         id="org.eclipse.jst.jee.ui.ejb"
         labelProvider="org.eclipse.jst.jee.ui.internal.navigator.Ejb3LabelProvider"
         name="JEE Navigator Content EJB"
         priority="highest">
     <triggerPoints>
        <or>
           <adapt type="org.eclipse.core.resources.IProject">
              <or>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.ejb:3.0"/>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.appclient:5.0">
                 </test>
              </or>
           </adapt>
			<instanceof value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode" />
		 	<instanceof value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode" />
  			<instanceof value="org.eclipse.jst.javaee.core.JavaEEObject" />
   <instanceof
         value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
   </instanceof>
   <instanceof
         value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
   </instanceof>
        </or>
     </triggerPoints>
     <possibleChildren>
        <or>
			<instanceof value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode" />
		 	<instanceof value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode" />
  			<instanceof value="org.eclipse.jst.javaee.core.JavaEEObject" />
   <instanceof
         value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
   </instanceof>
        </or>
     </possibleChildren>
    

     <commonWizard
           menuGroupId="org.eclipse.jst.ejb.ui"
           type="new"
           wizardId="org.eclipse.jst.ejb.ui.internal.wizard.AddSessionBeanWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEjbSession">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.ejb.SessionBean">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanInterfaceNode">
              </instanceof>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode">
                 <or>
                    <test
                          forcePluginActivation="true"
                          property="org.eclipse.jst.jee.ui.beanType"
                          value="isSessionBean">
                    </test>
                 </or>
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ejb.ui"
           type="new"
           wizardId="org.eclipse.jst.ejb.ui.internal.wizard.AddMessageDrivenBeanWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEjbMessageDriven">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.ejb.MessageDrivenBean">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.ActivationConfigProperties">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.ejb.ActivationConfigProperty">
              </instanceof>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode">
                 <or>
                    <test
                          forcePluginActivation="true"
                          property="org.eclipse.jst.jee.ui.beanType"
                          value="isMessageDrivenBean">
                    </test>
                 </or>
              </adapt>
           </or></enablement>
     </commonWizard>
     
     
     <actionProvider
           class="org.eclipse.jst.jee.ui.internal.navigator.JEEActionProvider"
           id="org.eclipse.jst.javaee.ui.JEEActionProvider">
        <enablement>
           <or>
              <instanceof value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode"/>
              <instanceof value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode"/>
              <instanceof value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanInterfaceNode"/>
              <instanceof value="org.eclipse.jst.javaee.core.JavaEEObject" />
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.appclient.GroupAppClientProvider">
              </instanceof>
           </or>
        </enablement>
     </actionProvider>
     

     <actionProvider
			class="org.eclipse.ui.internal.navigator.resources.actions.NewActionProvider"
			id="org.eclipse.ui.navigator.resources.JEENewActions">
			<enablement>
    <or>
       <instanceof
             value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode">
       </instanceof>
       <instanceof
             value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
       </instanceof>

       <instanceof
             value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
       </instanceof>
       <instanceof
             value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractSubWebProviders">
       </instanceof>
       <instanceof
             value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
       </instanceof></or>
			</enablement>
	 </actionProvider>
    
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.ResourceMgmtActionProvider"
           id="org.eclipse.ui.navigator.resources.actions.JEEResourceMgmtAction">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
              </instanceof>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>

           </or>
        </enablement>
     </actionProvider>
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.WorkManagementActionProvider"
           id="org.eclipse.ui.internal.navigator.resources.actions.JEEWorkMgmtAction">
           <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
              </instanceof>

		       <instanceof
		             value="org.eclipse.jst.javaee.core.JavaEEObject">
		       </instanceof>
         <adapt
               type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
         </adapt>

           </or>
        </enablement>
     </actionProvider>
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.PortingActionProvider"
           id="org.eclipse.ui.internal.navigator.resources.actions.JEEPortingAction">
           <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode">
              </instanceof>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>

           </or>
        </enablement>
     </actionProvider>
     <commonWizard
           menuGroupId="org.eclipse.jst.ejb.export1"
           type="export"
           wizardId="org.eclipse.jst.ejb.ui.internal.wizard.EJBComponentExportWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider">
              </instanceof>
           </or>
        </enablement>
     </commonWizard>
     	 
     	 
  </navigatorContent>
  
  <navigatorContent
        contentProvider="org.eclipse.jst.jee.ui.internal.navigator.Web25ContentProvider"
        icon="icons/webgroup_obj.gif"
        id="org.eclipse.jst.jee.ui.web"
        labelProvider="org.eclipse.jst.jee.ui.internal.navigator.Web25LabelProvider"
        name="JEE Navigator Content WEB"
        priority="highest">
     <triggerPoints>
        <or>
           <adapt type="org.eclipse.core.resources.IProject">
              <or>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.web:2.5"/>
              </or>
           </adapt>
   <instanceof
         value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
   </instanceof>
   <instanceof
         value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
   </instanceof>
        </or>
     </triggerPoints>
     <possibleChildren>
        <or>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
           </instanceof>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
           </instanceof>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.web.WebArtifactNode">
           </instanceof>
        </or>
     </possibleChildren>
     
     
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.ResourceMgmtActionProvider"
           id="org.eclipse.ui.internal.navigator.resources.actions.JEEWebResourceMgmtAction">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractSubWebProviders">
              </instanceof>
              <!--<instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>-->
           </or>
        </enablement>
     </actionProvider>
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.WorkManagementActionProvider"
           id="org.eclipse.ui.internal.navigator.resources.actions.JEEWebWrkMngmntAction">
           <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractSubWebProviders">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>

		       <instanceof
		             value="org.eclipse.jst.javaee.core.JavaEEObject">
		       </instanceof>

           </or>
        </enablement>
     </actionProvider>
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.PortingActionProvider"
           id="org.eclipse.ui.internal.navigator.resources.actions.JEEWebPortingAction">
           <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractSubWebProviders">
              </instanceof>
              <!--
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>-->
           </or>
        </enablement>
     </actionProvider>
     
     <commonWizard
           menuGroupId="org.eclipse.wst.web.ui.webclass"
           type="new"
           wizardId="org.eclipse.jst.servlet.ui.internal.wizard.AddServletWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.GroupServletItemProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.web.Servlet">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.GroupServletMappingItemProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.web.ServletMapping">
              </instanceof>
           </or></enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.wst.web.ui.webclass"
           type="new"
           wizardId="org.eclipse.jst.servlet.ui.internal.wizard.AddFilterWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.GroupFiltersItemProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.web.Filter">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.GroupFilterMappingItemProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.web.FilterMapping">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.web.Servlet">
              </instanceof>
           </or></enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.wst.web.ui.webclass"
           type="new"
           wizardId="org.eclipse.jst.servlet.ui.internal.wizard.AddListenerWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.GroupListenerItemProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.core.Listener">
              </instanceof>
           </or></enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.wst.web.export"
           type="export"
           wizardId="org.eclipse.jst.servlet.ui.internal.wizard.WebComponentExportWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>
           </or>
        </enablement>
     </commonWizard>
  </navigatorContent>
  <navigatorContent
        activeByDefault="true"
        contentProvider="org.eclipse.jst.jee.ui.internal.navigator.Ear5ContentProvider"
        icon="icons/eargroup_obj.gif"
        id="org.eclipse.jst.jee.ui.ear"
        labelProvider="org.eclipse.jst.jee.ui.internal.navigator.Ear5LabelProvider"
        name="JEE Navigator Content EAR"
        priority="highest">
     <triggerPoints>
        <or>
           <instanceof
                 value="org.eclipse.core.resources.IProject">
           </instanceof>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear.BundledNode">
           </instanceof>
           <adapt
                 type="org.eclipse.core.resources.IProject">
              <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.ear:5.0">
              </test>
           </adapt>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear.ModulesNode">
           </instanceof>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear.BundledLibsNode">
           </instanceof>
        </or>
     </triggerPoints>
     <possibleChildren>
        <or>
           <instanceof
                 value="java.io.File">
           </instanceof>
           <adapt
                 type="org.eclipse.core.resources.IProject">
              <or>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.web">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.ejb">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.utility">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.ear">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.appclient">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.connector">
                 </test>
              </or>
           </adapt>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear.ModulesNode"/>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear.BundledNode"/>
           <instanceof
                 value="org.eclipse.core.internal.resources.File">
           </instanceof>
           <instanceof
                 value="org.eclipse.jdt.internal.core.JarPackageFragmentRoot">
           </instanceof>
           <instanceof
                 value="org.eclipse.core.internal.resources.Project">
           </instanceof>
           <instanceof
                 value="org.eclipse.wst.common.componentcore.resources.IVirtualReference">
           </instanceof>
        </or>
     </possibleChildren>
     <commonSorter
           class="org.eclipse.jst.jee.ui.internal.navigator.ear.Application5ViewerSorter"
           id="org.eclipse.jst.jee.navigator.internal.ApplicationViewerSorter">
     </commonSorter>
     <dropAssistant
           class="org.eclipse.jst.jee.ui.internal.navigator.dnd.AddProjectToEARDropAssistant"
           id="org.eclipse.jst.jee.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">
                 </test>
              </adapt>
              <instanceof
                    value="org.eclipse.jst.javaee.application.Application">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ear.AbstractEarNode">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </instanceof>
           </or>
        </possibleDropTargets>
     </dropAssistant>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui"
           type="new"
           wizardId="org.eclipse.jst.ejb.ui.project.facet.EjbProjectWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or></enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui"
           type="new"
           wizardId="org.eclipse.jst.servlet.ui.project.facet.WebProjectWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui"
           type="new"
           wizardId="org.eclipse.jst.j2ee.ui.project.facet.EarProjectWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui"
           type="new"
           wizardId="org.eclipse.jst.j2ee.ui.project.facet.appclient.AppClientProjectWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui"
           type="new"
           wizardId="org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorProjectWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.export"
           type="export"
           wizardId="org.eclipse.jst.j2ee.internal.wizard.EARComponentExportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.j2ee.internal.wizard.AppClientComponentImportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.j2ee.internal.wizard.EARComponentImportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.j2ee.internal.wizard.J2EEUtilityJarImportWizardNew">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.ejb.ui.internal.wizard.EJBComponentImportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.servlet.ui.internal.wizard.WebComponentImportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorComponentImportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
  </navigatorContent>
  <navigatorContent
        activeByDefault="true"
        contentProvider="org.eclipse.jst.jee.ui.internal.navigator.AppClient5ContentProvider"
        icon="icons/appclientgroup_obj.gif"
        id="org.eclipse.jst.jee.ui.appclient"
        labelProvider="org.eclipse.jst.jee.ui.internal.navigator.AppClient5LabelProvider"
        name="JEE Navigator Content App Client"
        priority="highest">
     <triggerPoints>
        <or>
           <instanceof
                 value="org.eclipse.core.resources.IProject">
           </instanceof>
           <adapt
                 type="org.eclipse.core.resources.IProject">
              <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.appclient:5.0">
              </test>
           </adapt>
           <instanceof
                 value="org.eclipse.jst.javaee.core.JavaEEObject">
           </instanceof>
        </or>
     </triggerPoints>
     <possibleChildren>
        <or>
           <instanceof
                 value="org.eclipse.jst.javaee.core.JavaEEObject">
           </instanceof>
           <adapt
                 type="org.eclipse.core.resources.IProject">
              <or>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.appclient:5.0">
                 </test>
              </or>
           </adapt>
        </or>
     </possibleChildren>
  </navigatorContent>
	</extension>
   <extension
         point="org.eclipse.core.runtime.adapters">
      <factory
            adaptableType="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider"
            class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <adapter
               type="org.eclipse.debug.ui.actions.ILaunchable">
         </adapter>
      </factory>
      <factory
            adaptableType="org.eclipse.jst.javaee.core.JavaEEObject"
            class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <adapter
               type="org.eclipse.debug.ui.actions.ILaunchable">
         </adapter>
      </factory>
      <factory
            adaptableType="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider"
            class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <adapter
               type="org.eclipse.debug.ui.actions.ILaunchable">
         </adapter>
      </factory>
      
    
    <factory
          adaptableType="org.eclipse.jst.javaee.core.JavaEEObject"
          class="org.eclipse.jst.j2ee.navigator.internal.J2EEEMFAdapterFactory">
       <adapter type="org.eclipse.core.resources.IResource"/>
    </factory>
      
   </extension>
   <extension
         point="org.eclipse.ui.navigator.viewer">
      <viewerActionBinding viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
            <actionExtension pattern="org.eclipse.jst.javaee.ui.JEEActionProvider"/>
         </includes>
      </viewerActionBinding>
   </extension>
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            adaptable="true"
            location="TOP_RIGHT"
            lightweight="true"
            label="%ENTERPRISE_BEAN_DECORATOR"
            state="true"
            class="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanDecorator"
            id="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanDecorator">
         <enablement>
           <or>
            <objectClass
                  name="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanInterfaceNode">
            </objectClass>
            <objectClass
                  name="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode">
            </objectClass>
           </or>
         </enablement>
         <description>
            %ENTERPRISE_BEAN_DECORATOR.DESCRIPTION
         </description>
      </decorator>
   </extension>  
      <extension
   		 point="org.eclipse.ui.navigator.viewer">
      <viewerContentBinding
         viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
           <contentExtension pattern="org.eclipse.jst.jee.ui.*"/>
           <contentExtension pattern="org.eclipse.jst.jee.ui.filters.*"/>
           <contentExtension
                 pattern="org.eclipse.jst.jee.ui.internal.navigator.*">
           </contentExtension>
         </includes>
      </viewerContentBinding>
   </extension>
   
      
<!-- ====================================================== -->
<!--           Label Decorators                             -->
<!-- ====================================================== -->
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            adaptable="true"
            location="TOP_LEFT"
            lightweight="true"
            label="%jeeProjectDecorator"
            state="true"
            class="org.eclipse.jst.j2ee.navigator.internal.J2EEProjectDecorator"
            id="org.eclipse.jst.jee.navigator.internal.JEEProjectDecorator">
         <enablement>
           <or>
            <objectClass name="org.eclipse.core.resources.IProject"/>
            <objectClass name="org.eclipse.jdt.core.IJavaProject"/>
           </or>
         </enablement>
         <description>
            %jeeProjectDecorator.description
         </description>
      </decorator>
   </extension>
   
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            adaptable="true"
            label="%JAVA_EE_5_PROBLEM_MARKER_RESOURCE_DECORATOR"
            state="true"
            class="org.eclipse.jdt.ui.ProblemsLabelDecorator"
            id="org.eclipse.jst.jee.navigator.ui.java.resource.decorator">
            <enablement>
                <objectClass name="org.eclipse.core.resources.IResource"/> 
            </enablement>
            <description>
               %JAVA_EE_5_PROBLEM_MARKER_RESOURCE_DECORATOR.DESCRIPTION
            </description>
      </decorator>
   </extension>
   <extension
         point="org.eclipse.core.expressions.propertyTesters">
      <propertyTester
            class="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNodePropertyTester"
            id="org.eclipse.jst.jee.ui.BeanNodePropertyTester"
            namespace="org.eclipse.jst.jee.ui"
            properties="beanType"
            type="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode">
      </propertyTester>
   </extension>  
      
      
      
   </plugin>
