Java: Méthodes statiques et Champs statiques
Une méthode est appelée directement par son nom Java et en fournissant les arguments pour la méthode. Les champs statiques (méthodes qui ne prennent aucun argument), comme les champs de valeur constante E et PI, sont accédés sans devoir spécifier aucun argument.
Exemples XSLT
Voici quelques exemples montrant comment appeler des méthodes et des champs statiques :
<xsl:value-of xmlns:jMath="java:java.lang.Math"
select="jMath:cos(3.14)" />
<xsl:value-of xmlns:jMath="java:java.lang.Math"
select="jMath:cos( jMath:PI() )" />
<xsl:value-of xmlns:jMath="java:java.lang.Math"
select="jMath:E() * jMath:cos(3.14)" />
Veuillez noter que les fonctions d'extension ci-dessus prennent la forme prefix:fname(). Le préfixe dans les trois cas indiqués est jMath:, qui est associé avec l'URI d'espace de nom java:java.lang.Math. (L'URI d'espace de nom doit commencer avec java:. Dans les exemples ci-dessus, il est étendu pour contenir le nom de classe (java.lang.Math).) La partie fname() des fonctions extension doit correspondre au nom d'une classe publique (par ex. java.lang.Math) suivi du nom d'une méthode statique publique avec son/ses argument/s (comme cos(3.14)) ou un champ statique public (comme PI()).
Dans les exemples ci-dessus, Le nom de classe a été inclus dans l'espace de nom URI. S'il n'était pas contenu dans l'URI d'espace de nom, il devrait être inclus dans la partie fname() de la fonction d'extension. Par exemple :
<xsl:value-of xmlns:java="java:"
select="java:java.lang.Math.cos(3.14)" />
Exemple XQuery
Un exemple semblable dans XQuery serait :
<cosine xmlns:jMath="java:java.lang.Math">
{jMath:cos(3.14)}
</cosine>