JSF 2.0, comportement différent xhtml et jsp
Bonjour,
Je réalise actuellement une application basé sur JSF/Spring/hibernate, je suis confronté à un problème qui me fait perdre énormément de temps depuis 2 jours.
Je viens donc en désespoir de cause demander votre aide :)
Seul la partie MVC me pose des soucis, voici l’environnement technique :
JSF 2.0.3
Tomcat 6.0.29
L'application au départ étais sous JSF 1.2, basé sur des jsp. Au passage en 2.0.3 je suis passé en xhtml pour utiliser les fonctionnalités supplémentaires amenées par facelets.
Mais depuis le module de coloration syntaxique (SyntaxHighlighter) que j'utilise ne fonctionne plus très bien.
Je prend un exemple simple :
Ma jsp, en JSF 2.0 qui fonctionnement parfaitement
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="c"%>
<html>
<head>
<script type="text/javascript" src="resources/plugins/shbrush/js/shCore.js"></script>
<script type="text/javascript" src="resources/plugins/shbrush/js/shBrushJs.js"></script>
<link href='<%=request.getContextPath()%>/resources/plugins/shbrush/css/shCore.css' rel='stylesheet' type='text/css' />
<link href='<%=request.getContextPath()%>/resources/plugins/shbrush/css/shThemeDefault.css' rel='stylesheet' type='text/css' />
</head>
<body>
<c:view>
<pre class="brush: js">
function test()
{
}
</pre>
<script type="text/javascript">
SyntaxHighlighter.all();
</script>
</c:view>
</body>
</html> |
Si je reprend le meme exemple en xhtml toujours JSF 2.0 :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:c="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<h:outputScript name="shCore.js" library="plugins/shbrush/js" target="head" />
<h:outputScript name="shBrushJs.js" library="plugins/shbrush/js" target="head" />
<h:outputStylesheet name="shCore.css" library="plugins/shbrush/css" />
<h:outputStylesheet name="shThemeDefault.css" library="plugins/shbrush/css" />
</h:head>
<h:body>
<c:view>
<pre class="brush: js">
function test()
{
}
</pre>
<script type="text/javascript">
SyntaxHighlighter.all();
</script>
</c:view>
</h:body>
</html> |
le module de coloration ne fonctionne plus et m'envoie une erreur javascript du type :
Uncaught Error: INVALID_STATE_ERR: DOM Exception 11
sh.utils.measureSpace:1
sh.Highlighter.highlight:1
sh.highlight:1
sh.all
Je ne sais plus vraiment quoi tester, cette erreur est pour moi trop vague :cry:
PS : en testant je viens de me rendre compte que ce problème ne se produit que sur chrome, avec firefox et même IE cela fonctionne.
Si vous avez des pistes de recherche je suis preneur