2010-01-19 12 views
4

J'utilise:problème avec les fonctions du langage d'expression dans Tomahawk balises

  • Tomcat 6.0
  • JSF 1.2 - Mise en œuvre Mojarra
  • Tomahawk 1.1.9

J'importé le taglib

<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> 

quand j'appelle:

<h:outputText value="#{fn:indexOf('ciao','i')}"></h:outputText> 

sortie est 1

quand j'utilise

<t:outputText value="#{fn:indexOf('ciao','i')}"></t:outputText> 

il renvoie une exception du serveur, comme il y a des problèmes de référencement bonne bibliothèque.

javax.el.ELException: Function 'fn:indexOf' not found 
    at org.apache.el.lang.ExpressionBuilder.visit(ExpressionBuilder.java:171) 
    at org.apache.el.parser.SimpleNode.accept(SimpleNode.java:145) 
    at org.apache.el.lang.ExpressionBuilder.prepare(ExpressionBuilder.java:133) 
    at org.apache.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:147) 

Une indication? Merci à tous pour votre aide :)

+0

Les deux lignes de code que vous avez publiées sont identiques. S'il vous plaît corriger ou élaborer plus. – BalusC

+0

cela fonctionne très bien avec Facelets – Bozho

Répondre

1

J'ai été capable de reproduire exactement ce problème avec Mojarra 1.2_14 et Tomahawk 1.1.9 sur Tomcat 6.0.18. Le même problème s'est également produit à Tomcat 6.0.20, bien que les numéros de ligne des méthodes org.apache.el.* dans la pile de données étaient légèrement différents.

Pour exclure le jsp-el de Tomcat d'être suspect, j'ai également testé chez Glassfish v3, qui utilise un autre EL impl. Il a produit fondamentalement la même exception, bien qu'avec différentes classes EL dans stacktrace (com.sun.el.* au lieu de org.apache.el.*).

Fait intéressant cependant, il fonctionne en effet parfaitement lors de l'utilisation de Facelets au lieu de JSP, comme l'a commenté Bozho. Cela signifierait que les implémentations JSP EL de Tomcat et de Glassfish sont cassées.

Je voudrais commencer à déposer un problème pour Tomcat 6 ici http://tomcat.apache.org/bugreport.html et voir ce que disent les gars d'Apache à ce sujet.

+0

Merci BalusC. Je vais classer le comportement étrange dans le référentiel de bug tomcat. C'est un plaisir de te connaître. Beaucoup de choses que j'ai apprises de votre blog! Espérons résoudre ce problème. J'ai utilisé une solution de contournement pour le moment. J'ai utilisé pour montrer ou non un résultat. – M3rlino