2010-10-04 5 views
1

Est-il possible d'ignorer la syntaxe xml invalide dans les fichiers jsf? J'écris mes propres composants est jsf 2 et je veux créer une table dynamique, donc je veux rendre les balises tr- et td conditionnelles. J'ai essayé <h:panelGroup rendered="#{someCondition}"><tr></h:panelGroup> (même avec </tr>) et <c:if test="#{someCondition}"><tr></c:if> (même avec </tr>) bien qu'il soit mauvais de mélanger jstl avec jsf. J'obtiens un javax.faces.view.facelets.FaceletException: Error Parsing [...] The element type "tr" must be terminated by the matching end-tag "</tr>".Comment ignorer XML non valide dans JSF?

Quelqu'un sait comment ignorer le xml invalide ou comment résoudre ce problème d'une autre manière?

Répondre

0

Il n'y a aucun moyen de le faire. Vous pouvez définir DISABLE_FACELET_JSF_VIEWHANDLER - true dans web.xml et le problème s'en tirer, mais d'un autre côté, cette version de downsoft jsf à 1.2.

2

c'est un sale hack mais utilisez:

<h:outputText escape="false" value="#{bean.row}" /> 

dans votre page et

public String getRow() { 
    return condition ? "" : "<tr>"; 
} 

dans votre Bean. Idem avec </tr>.