<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin
   id="org.eclipse.jst.j2ee"
   name="J2EE Component"
   description="Responsible for creation, deletion and modification of various J2EE modules including ear, application client."
   version="1.0.0"
   provider-name="IBM"
   class="org.eclipse.jst.j2ee.internal.plugin.J2EEPlugin">

   <runtime>
<!-- ejb jars ========================== -->
<!-- Deferred for now
    <library name="runtime/websphere_validation.jar">
		<export name="*"/>
    </library>
    -->
      <library name="runtime/j2eeplugin.jar">
         <export name="*"/>
      </library>
   </runtime>
   <requires>
      <import plugin="org.eclipse.emf.edit"/>
      <import plugin="org.eclipse.jem.workbench"/>
      <import plugin="org.eclipse.jst.j2ee.core"/>
      <import plugin="org.eclipse.jdt.core"/>
      <import plugin="org.eclipse.wst.validation"/>
      <import plugin="org.eclipse.emf.ecore.edit"/>
      <import plugin="org.eclipse.wst.sse.core"/>
      <import plugin="org.eclipse.wst.server.core"/>
      <import plugin="org.eclipse.jst.server.core"/>
      <import plugin="org.eclipse.wst.common.emf"/>
      <import plugin="org.eclipse.emf.ecore.xmi"/>
      <import plugin="com.ibm.wtp.emf.workbench"/>
      <import plugin="org.eclipse.wst.common.emfworkbench.integration"/>
      <import plugin="org.eclipse.jem"/>
      <import plugin="org.eclipse.wst.common.frameworks"/>
      <import plugin="org.eclipse.core.runtime.compatibility"/>
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.eclipse.wst.common.migration"/>
      <import plugin="org.eclipse.emf.codegen"/>
      <import plugin="org.eclipse.jdt.launching"/>
      <import plugin="org.eclipse.jface"/>
      <import plugin="org.eclipse.jst.common.frameworks"/>
      <import plugin="org.eclipse.wst.wsdl"/>
      <import plugin="org.eclipse.wst.ws.parser"/>
   </requires>


<!-- Extension point to register specialized edit models with the EJBNature -->
<!-- Extension point to register specialized EJB commands -->
   <extension-point id="EJBCommandExtension" name="EJBCommandExtension" schema="schema/EJBCommandExtension.exsd"/>
<!--============================-->
<!-- Codegen Contributions                   -->
<!--============================-->
   
<!-- This extension-point sends notification to all extensions when J2EEModules are imported.
        Each extension can specify a set of different module types to listen for or listen to them
        all.  The default is to receive notification for all module types.  Notification is sent
        to the specified class implementing org.eclipse.jst.j2ee.internal.J2EEModulePostImportHandler
		
		Both of the following examples register for notification for all J2EEModule types, the first
		uses the defaults, while the second specifies each module type.  To listen for only specific
		module types, use the second example and specify only the types to listen to.        
        
    <extension point="org.eclipse.jst.j2ee.internal.J2EEModulePostImport">
        <postImport className="org.eclipse.jst.j2ee.internal.tests.extensions.ModulePostImportTestDefault"></postImport>
    </extension>
        
    <extension point="org.eclipse.jst.j2ee.internal.J2EEModulePostImport">
    	<postImport className="org.eclipse.jst.j2ee.internal.tests.extensions.ModulePostImportTestAll"></postImport>
    	<module type="WEB"></module>
    	<module type="EJB"></module>
    	<module type="ApplicationClient"></module>
    	<module type="Connector"></module>
    </extension>
     -->
   <extension-point id="J2EEModulePostImport" name="J2EEModulePostImport" schema="schema/J2EEModulePostImport.exsd"/>

   <extension-point id="EARModuleExtension" name="EARModuleExtension" schema="schema/EARModuleExtension.exsd"/>
   <extension-point id="DeployerExtension" name="J2EE Deployer Extension" schema="schema/DeployerExtension.exsd"/>
   <extension-point id="resourceEnvRefType" name="Resource Environment Reference Type" schema="schema/resourceEnvRefType.exsd"/>
   <extension-point id="resourceRefType" name="Resource Reference Type" schema="schema/resourceRefType.exsd"/>
   <extension-point id="WebServiceClientGenerator" name="WebServiceClientGenerator" schema="schema/WebServiceClientGenerator.exsd"/>
   <extension-point id="ExtendedModuleImport" name="ExtendedModuleImport" schema="schema/ExtendedModuleImport.exsd"/>

<!--============================-->
<!-- Application Client J2EE 1.2 Nature             -->
<!--============================-->
<!--============================-->
<!-- Application Client Project Nature Contributions    -->
<!--============================-->
   <extension
         id="ApplicationClientNature"
         name="Application Client Properties"
         point="org.eclipse.core.resources.natures">
      <runtime>
         <run
               class="org.eclipse.jst.j2ee.applicationclient.creation.ApplicationClientNatureRuntime">
         </run>
      </runtime>
   </extension>
<!-- Register the nature id with the EMFNature -->
   <extension
         point="com.ibm.wtp.emf.workbench.nature_registration">
      <nature
            id="org.eclipse.jst.j2ee.ApplicationClientNature">
      </nature>
   </extension>
<!--============================-->
<!-- Ear J2EE 12 Nature                -->
<!--============================-->
<!--============================-->
<!-- EAR Project Nature Contributions                -->
<!--============================-->
   <extension
         id="EARNature"
         name="EAR Properties"
         point="org.eclipse.core.resources.natures">
      <runtime>
         <run
               class="org.eclipse.jst.j2ee.internal.earcreation.EARNatureRuntime">
         </run>
      </runtime>
   </extension>
<!-- Register the nature id with the EMFNature -->
   <extension
         point="com.ibm.wtp.emf.workbench.nature_registration">
      <nature
            id="org.eclipse.jst.j2ee.EARNature">
      </nature>
   </extension>
<!--===================================================-->
<!-- Register known J2EE DTDs and XSDs for XML editor  -->
<!-- DTD and XSD Contributions                         -->
<!-- Removing these until final location is known...   -->
<!--===================================================-->
<!--   <extension
         point="com.ibm.etools.xmlcatalog.catalogContributor">
      <catalogContributor
            catalogId="default">
         <mappingInfo
               key="-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
               uri="dtds/web-app_2_2.dtd">
         </mappingInfo>
         <mappingInfo
               key="-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
               uri="dtds/web-app_2_3.dtd">
         </mappingInfo>
         <mappingInfo
               key="-//Sun Microsystems, Inc.//DTD J2EE Application Client 1.2//EN"
               uri="dtds/application-client_1_2.dtd">
         </mappingInfo>
         <mappingInfo
               key="-//Sun Microsystems, Inc.//DTD J2EE Application Client 1.3//EN"
               uri="dtds/application-client_1_3.dtd">
         </mappingInfo>
         <mappingInfo
               key="-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN"
               uri="dtds/application_1_2.dtd">
         </mappingInfo>
         <mappingInfo
               key="-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN"
               uri="dtds/application_1_3.dtd">
         </mappingInfo>
         <mappingInfo
               key="-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 1.1//EN"
               uri="dtds/ejb-jar_1_1.dtd">
         </mappingInfo>
         <mappingInfo
               key="-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN"
               uri="dtds/ejb-jar_2_0.dtd">
         </mappingInfo>
         <mappingInfo
               key="-//Sun Microsystems, Inc.//DTD Connector 1.0//EN"
               uri="dtds/connector_1_0.dtd">
         </mappingInfo>
         <mappingInfo
               key="-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
               uri="dtds/web-jsptaglibrary_1_1.dtd">
         </mappingInfo>
         <mappingInfo
               key="-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
               uri="dtds/web-jsptaglibrary_1_2.dtd">
         </mappingInfo>
         <mappingInfo
               key="http://java.sun.com/xml/ns/j2ee/application-client_1_4.xsd"
               uri="xsds/application-client_1_4.xsd">
         </mappingInfo>
         <mappingInfo
               key="http://java.sun.com/xml/ns/j2ee/application_1_4.xsd"
               uri="xsds/application_1_4.xsd">
         </mappingInfo>
         <mappingInfo
               key="http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd"
               uri="xsds/connector_1_5.xsd">
         </mappingInfo>
         <mappingInfo
               key="http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"
               uri="xsds/ejb-jar_2_1.xsd">
         </mappingInfo>
         <mappingInfo
               key="http://java.sun.com/xml/ns/j2ee/"
               uri="xsds/j2ee_1_4.xsd">
         </mappingInfo>
         <mappingInfo
               key="http://java.sun.com/xml/ns/j2ee/jsp_2_0.xsd"
               uri="xsds/jsp_2_0.xsd">
         </mappingInfo>
         <mappingInfo
               key="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
               uri="xsds/web-app_2_4.xsd">
         </mappingInfo>
         <mappingInfo
               key="http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
               uri="xsds/web-jsptaglibrary_2_0.xsd">
         </mappingInfo>
         <mappingInfo
               key="http://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mapping_1_1.xsd"
               uri="xsds/j2ee_jaxrpc_mapping_1_1.xsd">
         </mappingInfo>
         <mappingInfo
               key="http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1.xsd"
               uri="xsds/j2ee_web_services_1_1.xsd">
         </mappingInfo>
         <mappingInfo
               key="http://www.ibm.com/webservices/xsd/j2ee_web_services_client_1_1.xsd"
               uri="xsds/j2ee_web_services_client_1_1.xsd">
         </mappingInfo>
                  <mappingInfo
               key="-//W3C//DTD XMLSCHEMA 200102//EN"
               uri="dtds/XMLSchema.dtd">
         </mappingInfo>
         <mappingInfo
               key="datatypes"
               uri="dtds/datatypes.dtd">
         </mappingInfo>
         <mappingInfo
               key="-//IBM Corporation, Inc.//DTD J2EE JAX-RPC mapping 1.0//EN"
               uri="dtds/j2ee_jaxrpc_mapping_1_0.dtd ">
         </mappingInfo> 
         <mappingInfo
               key="-//IBM Corporation, Inc.//DTD J2EE Web services 1.0//EN"
               uri="dtds/j2ee_web_services_1_0.dtd">
         </mappingInfo> 
         <mappingInfo
               key="-//IBM Corporation, Inc.//DTD J2EE Web services client 1.0//EN"
               uri="dtds/j2ee_web_services_client_1_0.dtd">
         </mappingInfo> 
      </catalogContributor>
   </extension> -->
<!--=================================-->
<!-- LibCopy Builder Contributions   -->
<!--=================================-->
   <extension
         id="LibCopyBuilder"
         name="Library Copying Builder"
         point="org.eclipse.core.resources.builders">
      <builder>
         <run
               class="org.eclipse.jst.j2ee.internal.plugin.LibCopyBuilder">
         </run>
      </builder>
   </extension>
<!--===========================================-->
<!-- Ruth asked for this to be put back in.    -->
<!-- Migrates 4.X workspaces to 5.X workspaces -->
<!-- Validation Framework Contribution         -->
<!--===========================================-->
<!--============================-->
<!-- Validation Contributions                 -->
<!--============================-->
   <extension
         id="validationbuilder"
         name="%validation_UI_"
         point="org.eclipse.core.resources.builders">
      <builder>
         <run
               class="org.eclipse.wst.validation.internal.operations.TransitionValidationBuilder">
         </run>
      </builder>
   </extension>
   <extension
         id="EarValidator"
         name="%ear_validator_UI_"
         point="org.eclipse.wst.validation.validator">
      <validator>
         <projectNature
               id="org.eclipse.jst.j2ee.EARNature">
         </projectNature>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="*.xml">
         </filter>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="*.xmi">
         </filter>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="*.jar">
         </filter>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter=".modulemaps">
         </filter>
         <dependentValidator
               depValValue="true">
         </dependentValidator>
         <run
               class="org.eclipse.jst.j2ee.internal.validation.UIEarValidator">
         </run>
         <helper
               class="org.eclipse.jst.j2ee.internal.validation.UIEarHelper">
         </helper>
      </validator>
   </extension>
   <extension
         id="ApplicationClientValidator"
         name="%application_client_validator_UI_"
         point="org.eclipse.wst.validation.validator">
      <validator>
         <projectNature
               id="org.eclipse.jst.j2ee.ApplicationClientNature">
         </projectNature>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="MANIFEST.MF">
         </filter>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="application-client.xml">
         </filter>
         <dependentValidator
               depValValue="true">
         </dependentValidator>
         <helper
               class="org.eclipse.jst.j2ee.internal.validation.UIApplicationClientHelper">
         </helper>
         <run
               class="org.eclipse.jst.j2ee.internal.validation.UIApplicationClientValidator">
         </run>
      </validator>
   </extension>
<!--ModuleMapInit-->
<!--============================-->
<!-- J2EE Extension Point Registry-->
<!--============================-->
   <extension
         point="org.eclipse.emf.ecore.generated_package">
      <package
            uri="modulemap.xmi"
            class="org.eclipse.jst.j2ee.internal.earcreation.modulemap.ModulemapPackage">
      </package>
   </extension>
<!-- ====================================================== -->
<!-- Register package mappings                              -->
<!-- Several that have not changed are still registered as  -->
<!-- a place holder for the future.                         -->
<!-- ====================================================== -->
   <extension
         point="org.eclipse.wst.common.emf.packageURIMap">
      <map
            uri="modulemap.xmi"
            prefix="modulemap">
      </map>
   </extension>
<!-- ====================================================== -->
<!-- Extendable Operations                                  -->
<!-- These operation are extendable in other plugins        -->
<!-- ====================================================== -->
   <extension
         id="baseEditModels"
         name="Core Edit Model"
         point="org.eclipse.wst.common.emfworkbench.integration.editModel">
      <editModel
            editModelID="org.eclipse.jst.j2ee.application.editModel"
            factoryClass="org.eclipse.jst.j2ee.internal.earcreation.EAREditModelFactory">
         <editModelResource
               URI="META-INF/application.xml">
         </editModelResource>
         <editModelResource
               URI="META-INF/.modulemaps">
         </editModelResource>
      </editModel>
      <editModel
            editModelID="org.eclipse.jst.j2ee.applicationClient.editModel"
            factoryClass="org.eclipse.jst.j2ee.applicationclient.creation.AppClientEditModelFactory">
         <editModelResource
               URI="META-INF/application-client.xml">
         </editModelResource>
         <editModelResource
               URI="META-INF/webservicesclient.xml">
         </editModelResource>
      </editModel>
   </extension>
   <extension
         name="J2EE tools function group"
         point="org.eclipse.wst.common.frameworks.functionGroup">
      <functionGroup
            initializerClassName="org.eclipse.jst.j2ee.internal.plugin.J2EEGroupInitializer"
            name="J2EE Core tools"
            functionGroupID="org.eclipse.jst.j2ee"
            priority="0"
            description="J2EE Core tools">
      </functionGroup>
      <functionGroupPatternBinding
            functionGroupID="org.eclipse.jst.j2ee"
            pattern="org.eclipse.jst.j2ee.*">
      </functionGroupPatternBinding>
   </extension>
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.adapterFactory">
      <adapterFactory
            functionGroupID="org.eclipse.jst.j2ee"
            className="org.eclipse.jst.j2ee.common.internal.provider.CommonItemProviderAdapterFactory"
            packageURI="common.xmi"
            id="org.eclipse.jst.j2ee.common.internal.provider.CommonItemProviderAdapterFactory">
      </adapterFactory>
   </extension>
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.adapterFactory">
      <adapterFactory
            functionGroupID="org.eclipse.jst.j2ee"
            className="org.eclipse.jst.j2ee.internal.application.provider.ApplicationItemProviderAdapterFactory"
            packageURI="application.xmi"
            id="org.eclipse.jst.j2ee.application.provider.ApplicationItemProviderAdapterFactory">
      </adapterFactory>
   </extension>
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.adapterFactory">
      <adapterFactory
            functionGroupID="org.eclipse.jst.j2ee"
            className="org.eclipse.jst.j2ee.internal.provider.ClientItemProviderAdapterFactory"
            packageURI="client.xmi"
            id="org.eclipse.jst.j2ee.client.provider.ClientItemProviderAdapterFactory">
      </adapterFactory>
   </extension>
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.adapterFactory">
      <adapterFactory
            functionGroupID="org.eclipse.jst.j2ee"
            className="org.eclipse.jst.j2ee.internal.provider.ModulemapItemProviderAdapterFactory"
            packageURI="modulemap.xmi"
            id="org.eclipse.jst.j2ee.ear.modulemap.provider.ModulemapItemProviderAdapterFactory">
      </adapterFactory>
   </extension>
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.adapterFactory">
      <adapterFactory 
            className="org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory"
            packageURI="org.eclipse.emf.ecore.resource"
            id="org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory">
      </adapterFactory>
   </extension>
   <extension
         point="org.eclipse.wst.common.frameworks.ExtendableOperation">
      <extendableOperation
            class="org.eclipse.jst.j2ee.internal.reference.MessageDestReferenceCreationOperation"
            id="org.eclipse.jst.j2ee.internal.reference.MessageDestReferenceCreationOperation">
      </extendableOperation>
    </extension>
<!-- ==================================================================== -->
<!-- Purpose: Define adapters for EAR resources                   -->
<!-- Extension point: com.ibm.etools.server.core.deployableObjectAdapters -->
<!-- ==================================================================== -->
   
  <!--  <extension
         point="org.eclipse.wst.server.core.moduleArtifactAdapters">
      <moduleArtifactAdapter
            objectClass="org.eclipse.jst.j2ee.application.Application"
            class="org.eclipse.jst.j2ee.internal.deployables.EnterpriseApplicationDeployableObjectAdapter"
            id="com.ibm.wtp.server.j2ee.ear1">
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            objectClass="org.eclipse.core.resources.IProject"
            class="org.eclipse.jst.j2ee.internal.deployables.EnterpriseApplicationDeployableObjectAdapter"
            id="com.ibm.wtp.server.j2ee.ear2">
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            objectClass="org.eclipse.core.resources.IFile"
            class="org.eclipse.jst.j2ee.internal.deployables.EnterpriseApplicationDeployableObjectAdapter"
            id="com.ibm.wtp.server.j2ee.ear3">
      </moduleArtifactAdapter>
   </extension> -->
<!-- =============================================================== -->
<!-- Purpose: Define the default deployable project factory          -->
<!-- Extension point: com.ibm.etools.server.core.deployableFactories -->
<!-- =============================================================== -->
   <extension
         point="org.eclipse.wst.server.core.moduleFactories">
      <moduleFactory
          
            projects="true"
            
            class="org.eclipse.jst.j2ee.internal.deployables.ApplicationClientDeployableFactory"
            id="com.ibm.wtp.server.j2ee.appclient">
         <moduleType
               versions="*"
               types="j2ee.appClient">
         </moduleType>
      </moduleFactory>
      <moduleFactory
           
            projects="true"
           
            class="org.eclipse.jst.j2ee.internal.deployables.EnterpriseApplicationDeployableFactory"
            id="com.ibm.wtp.server.j2ee.application">
         <moduleType
               versions="*"
               types="j2ee.ear">
         </moduleType>
      </moduleFactory>
      <moduleFactory
            projects="true"
          
            class="org.eclipse.jst.j2ee.internal.deployables.LooseArchiveDeployableFactory"
            id="com.ibm.wtp.server.looseArchive">
         <moduleType
               versions="*"
               types="j2ee.loosearchive">
         </moduleType>
      </moduleFactory>
   </extension>
<!-- Web services edit models -->
   <extension
         id="editModel.ejbWebService"
         name="Web Service Edit Model"
         point="org.eclipse.wst.common.emfworkbench.integration.editModel">
      <editModel
            editModelID="org.eclipse.jst.j2ee.webservice.ejb.editModel"
            factoryClass="org.eclipse.jst.j2ee.internal.webservices.EjbProjectWebServiceEditModelFactory">
         <editModelResource
               URI="META-INF/webservices.xml"
               autoload="true">
         </editModelResource>
      </editModel>
   </extension>
   <extension
         id="editModel.webWebService"
         name="Web Service Edit Model"
         point="org.eclipse.wst.common.emfworkbench.integration.editModel">
      <editModel
            editModelID="org.eclipse.jst.webservice.web.editModel"
            factoryClass="org.eclipse.jst.j2ee.internal.webservices.WebProjectWebServiceEditModelFactory">
         <editModelResource
               URI="WEB-INF/webservices.xml"
               autoload="true">
         </editModelResource>
      </editModel>
   </extension>
   <extension
         id="editModel.appClientWebService"
         name="Web Service Edit Model"
         point="org.eclipse.wst.common.emfworkbench.integration.editModel">
      <editModel
            editModelID="org.eclipse.jst.j2ee.webservice.appClient.editModel"
            factoryClass="org.eclipse.jst.j2ee.internal.webservices.AppClientProjectWebServiceEditModelFactory">
         <editModelResource
               URI="META-INF/webservices.xml"
               autoload="true">
         </editModelResource>
      </editModel>
   </extension>
<!-- =============================================================== -->
<!-- WTP Operation extendable operations						        -->
<!-- 																	 -->
<!-- =============================================================== -->
   <extension
         point="org.eclipse.wst.common.frameworks.ExtendableOperation">
      <extendableOperation
            class="org.eclipse.jst.j2ee.internal.common.operations.RemoveSecurityRoleOperation"
            id="org.eclipse.jst.j2ee.internal.common.operations.RemoveSecurityRoleOperation">
      </extendableOperation>
      <extendableOperation
            class="org.eclipse.jst.j2ee.internal.ejb.operations.EJBRelationshipCreationOperation"
            id="org.eclipse.jst.j2ee.internal.ejb.operations.EJBRelationshipCreationOperation">
      </extendableOperation>
   </extension>
   <extension
         point="org.eclipse.wst.common.frameworks.ExtendableOperation">
      <extendableOperation
            class="org.eclipse.jst.j2ee.internal.reference.EJBReferenceCreationOperation"
            id="org.eclipse.jst.j2ee.internal.reference.EJBReferenceCreationOperation">
      </extendableOperation>
      <extendableOperation
            class="org.eclipse.jst.j2ee.internal.delete.DeleteModuleOperation"
            id="org.eclipse.jst.j2ee.internal.delete.DeleteModuleOperation">     
	   </extendableOperation>             
   </extension>
<!-- .j2ee file migration contributions -->
   <extension
         point="org.eclipse.wst.common.migration.migrator">
      <migrator
            className="org.eclipse.jst.j2ee.internal.project.J2EESettingsMigrator"
            id="org.eclipse.jst.j2ee.internal.project.J2EESettingsMigrator.id"
            filter="org.eclipse.jst.j2ee.internal.project.J2EEMigrationFilter">
         <enablement>
			<projectNature natureID="org.eclipse.jst.j2ee.ejb.EJBNature"/>
			<projectNature natureID="org.eclipse.jst.j2ee.ApplicationClientNature"/>
			<projectNature natureID="org.eclipse.jst.j2ee.jca.ConnectorNature"/>
			<projectNature natureID="org.eclipse.jst.j2ee.EARNature"/>
         </enablement>
      </migrator>
   </extension>
   
  <!--  Associates .j2ee & .websettings to the XML content type -->
   <extension
         point="org.eclipse.core.runtime.contentTypes">
        <file-association 
         content-type="org.eclipse.core.runtime.xml"
         file-extensions="j2ee,websettings"/>
   </extension>
</plugin>
