Fichier plugin.xml

Une description de plug-in est disponible dans un fichier manifeste XML appelé plugin.xml et qui fait partie des fichiers de déploiement de plug-in. Le fichier manifeste donne à l'environnement d'exécution de l'application de portail les informations nécessaires afin d'enregistrer et d'activer le plug-in. Il sert essentiellement de contrat entre le composant pouvant recevoir des plug-ins et l'environnement d'exécution de l'application de portail. Bien que le fichier plugin.xml de WebSphere Application Server soit très proche de celui fourni pour le plan de travail Eclipse, il présente des divergences sur certains points.

Emplacement

Lorsqu'il est associé à une application Web ou lorsqu'il est inclus dans le fichier archive d'une application Web, le fichier plugin.xml doit résider dans le répertoire WEB-INF sous le contexte de la hiérarchie de répertoires de cette application. Le fichier plugin.xml doit se trouver dans le répertoire racine lorsqu'il est placé dans un fichier JAR (Java™ Archive) Enterprise JavaBeans ou dans un fichier JAR de bibliothèque partagée. Le service de registre d'extension inclut le fichier plugin.xml lors du chargement et du démarrage des composants impliqués sur le serveur d'applications.

Remarques d'utilisation

  • Ce fichier est-il en lecture seule ?

    Non

  • Ce fichier est-il mis à jour par un composant produit ?

    ???

  • Auquel cas, qu'est-ce qui déclenche sa mise à jour ?

    Rational Application Developer met à jour le fichier web.xml lors de l'assemblage des composants Web dans un module Web, ou lorsque vous modifiez les propriétés des composants Web ou du module Web.

  • Comment et quand le contenu de ce fichier est-il utilisé ?

    Les fonctions WebSphere Application Server utilisent les informations contenues dans ce fichier pendant les phases de configuration et de déploiement du développement d'applications Web.

  • Les définitions des marques du manifeste utilisent divers jetons et identificateurs de noms. Pour supprimer toute ambiguïté, voici les règles de production qui s'appliquent à ces conventions de dénomination. En général, tous les identificateurs distinguent les majuscules des minuscules.
    SimpleToken := sequence of characters from ('a-z','A-Z','0-9') 
    ComposedToken := SimpleToken | (SimpleToken '.' ComposedToken) 
    PlugInId := ComposedToken
    PlugInPrereq := PlugInId 
    ExtensionId := SimpleToken 
    ExtensionPointId := SimpleToken 
    ExtensionPointReference := ExtensionPointId | (PlugInId '.' ExtensionPointId)

Exemple de fichier

La DTD (définition de type de document) du manifeste des plug-ins est ici présentée dans sa totalité. Le schéma XML n'est pas utilisé pour définir le manifeste car les outils Eclipse actuels pour les plug-ins nécessitent une DTD. La règle de construction DTD XML element* signifie qu'il y a zéro occurrence ou plus de l'élément ; element? signifie qu'il y a zéro ou une occurrence de l'élément ; et element+ signifie qu'il y a une occurrence ou plus de l'élément.

<?xml encoding="US-ASCII"?>  

<!ELEMENT plugin (requires?, extension-point*, extension*)> 
<!ATTLIST plugin 
		name	CDATA #IMPLIED
		id	CDATA #REQUIRED 
		version	CDATA #REQUIRED 
		provider-name	CDATA #IMPLIED
>
<!ELEMENT requires (import+)>
<!ELEMENT import EMPTY>
<!ATTLIST import
		plugin	CDATA #REQUIRED
		version	CDATA #IMPLIED
		match	(exact | compatible | greaterOrEqual) #IMPLIED
>
<!ELEMENT extension-point EMPTY>  
<!ATTLIST extension-point 
		name	CDATA #IMPLIED
		id	CDATA #REQUIRED    
		schema	CDATA #IMPLIED 
>
<!ELEMENT extension ANY>
<!ATTLIST extension 
		point	CDATA #REQUIRED 
		id	CDATA #IMPLIED
		name	CDATA #IMPLIED
>

Différences dans WebSphere Application Server

Le fichier plugin.xml est très proche du fichier plugin.xml fourni pour le plan de travail Eclipse. Il en diffère cependant sur les points suivants :
Elément plugin
L'élément plugin fourni dans ce manifeste ne contient pas d'attribut classe. L'attribut classe est inutile car le mécanisme de plug-in ne nécessite pas que le développeur du plug-in étende ou utilise des classes spécifiques comme c'est le cas pour le plan de travail Eclipse. En outre, l'élément plugin ne contient pas d'élément runtime car les normes telles que J2EE définissent déjà l'emplacement des bibliothèques d'exécution pour les applications.
Elément import
Pour une meilleure gérabilité, l'élément requires ne contient pas d'attribut export afin d'encourager l'autonomie des modules J2EE. En outre, l'attribut match dispose d'une option greaterOrEqual de correspondance des versions (supérieur ou égal).
Elément extension-point
Le nom d'attribut de l'élément extension-point est facultatif en raison de son inutilité dans cette implémentation J2EE.

Pour plus de détails sur le manifeste de plug-in, reportez-vous à la documentation Eclipse, sous Guide du développeur des plug-ins de la plateforme>Autres informations de référence>Manifeste de plug-in.

L'exemple suivant montre comment il est possible d'ajouter un lien vers une page existante à l'aide d'un point d'extension. Le manifeste de ce plug-in déclare un point d'extension (linkExtensionPoint) et une extension pour ce point d'extension (linkExtension). Le plug-in qui déclare le point d'extension n'est pas nécessairement celui qui implémente ce point d'extension. Un autre plug-in peut également définir une extension pour le point d'extension du lien dans son manifeste de plug-in en y incluant les contenus des balises <extension> et </extension>.
<?xml version="1.0"?>
<!--the plugin id is derived from the vendor domain name --> 
<plugin
			id=”com.ibm.ws.console.core” 
			version=”1.0.0” 
			provider-name=”IBM WebSphere”>

		<!--declaration of prerequisite plugins-->
	<requires>
  		<import plugin=”com.ibm.data” version=”2.0.1” match=”compatible”/>
   	<import plugin=”com.ibm.resources” version=”3.0” match=”exact”/>
	</requires>

	<!--declaration of link extension point --> 
	<extension-point 
				id=”linkExtensionPoint” 
				schema=”/schemas/linkSchema.xsd”/>


	<!--declaration of an extension to the link extension point -->
	<extension 
				point=”com.ibm.ws.console.core.linkExtensionPoint” 
				id=”linkExtension”>

			<link               
					label=”Example.displayName” 
					actionView=”com.ibm.ws.console.servermanagement.forwardCmd.do?
								forwardName=example.config.view&
								lastPage=ApplicationServer.config.view”>
			</link>
	</extension>
</plugin>

Icône indiquant le type de rubrique Rubrique de référence



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rweb_pluginxml
Nom du fichier : rweb_pluginxml.html