Nous avons une application qui utilise JSF2 et le printemps. L'application fonctionne correctement lorsqu'elle est déployée. Mais cela se produit si je suis passé par les étapes suivantes:
J'ai essayé de vous connecter à l'aide de la page de connexion précédemment ouverte et indique l'exception suivante: p>
Si je clique sur la première page de connexion, puis entrez les informations de connexion que l'application ne casse pas. Cela ne se produit que si j'essaie d'utiliser la page de connexion chargée auparavant avec l'application nouvellement déployée. P> Quelqu'un connaît la réponse? P> p>
4 Réponses :
Celui-ci aurait dû être lancé sous forme de Fondamentalement, lorsque Mojarra ne parvient pas à construire ou à restaurer la vue, il jette généralement une exception suffisamment spécifique, mais en raison de ce bogue, une vue valide a été à l'abri de manière incorrecte ultérieurement dans le code qui aboutit à Pour empêcher le ViewExPiredException code>. C'est un bogue qui a commencé à se manifester à Mojarra 2.0.3 et est fixé à Mojarra 2.1.0. Voir aussi numéro 1762 (Notez que Mojarra 2.1.0 ne fonctionne pas sur Tomcat / jetée, utilisez au moins Mojarra 2.1.1 alors). p>
illegalargumentException : Source null code>. Le possible la cause réelle em> aurait été que la vue contient une simple erreur de syntaxe XML, telle qu'une balise manquante ou une valeur d'attribut cassée, pour laquelle Mojarra aurait généralement lancé un
Faceletexception code> avec un message très détaillé avec numéro de ligne et position, etc. p>
ViewExPiredException code>, vous devrez actualiser la page par une demande d'obtention avant de faire des actions à ce sujet. Si vous utilisez une version Mojarra où ce bogue ne se manifeste pas (par exemple 2.0.2 ou plus, ou 2.1.0 ou plus récent), vous pouvez le gérer gracieusement avec un
web.xml code> sur l'exception particulière et fournissez une page d'erreur personnalisée dans laquelle l'endutilisateur est informé que la session a été expirée, ainsi qu'un lien vers l'URI initiale de la demande. P>
J'ai exactement la même question actuelle, je mettrai à jour ma version de Mojarra et que je vois si je reçois une sorte de problème similaire.
Je reçois une page d'erreur mentionnée dans mon web.xml mais je veux savoir ce qui cause cette question et ce qui pourrait être une solution appropriée pour cela.
@Rachel: Si vous posez des questions sur IllegalArgumentException: NULL Source CODE>, comme mentionné dans la 1ère paragraphe, c'est un bogue à Mojarra. Mise à niveau vers au moins 2.1.0. Le 2e paragraphe explique ce que le bogue est et une autre cause possible de
IllegalArgumentException: null source code> lors de l'utilisation de Mojarra avec ce bogue. Le 3ème paragraphe explique comment traiter l'exception réelle i>, qui est
ViewExPiredException code> dans le cas particulier de OP. Si vous souhaitez plus d'informations sur
ViewExPiredException Code>, check Stackoverflow.com/tags/viewexpiredException/info
Je n'ai certainement pas ViewExPiredException code> car ma session est stockée dans
cookies code> et je n'ai pas gardé ma page ouverte pour assez longtemps. Aussi juste une pensée, des tiers basés sur
JSF code> comme
Icefaces code>,
richfaces code> et
PrimeFaces code> devrait réduire également l'effort de développement En tant qu'efforce de configuration, j'ai eu un peu de temps difficile à la faire comprendre.
@Rachel: Ensuite, c'est juste l'autre cause possible: une erreur de syntaxe dans XHTML. Passez à au moins 2.1.0, vous verrez la réelle i> Exception.
Oui, je travaille sur cette mise à niveau, entre je cherchais autour de moi et qu'il semble que 2.1.0 ait un autre ensemble de puzzles avec elle, communauté.jboss.org/thread/174379?_ssscc=t , communauté.jboss.org/thread/160868
@Rachel: C'est aussi une ancienne version :) J'ai dit au moins b> 2.1.0. Il est corrigé depuis cette version. Les versions plus récentes bien sûr n'ont plus ce bug. Actuellement, il est à 2.1.7. Vous devriez bien sûr choisir la dernière version.
Je mettrai à jour mes expériences ici, merci pour des informations utiles.
+1 Pour revisiter et répondre aux commentaires pour une réponse déjà sélectionnée, merci Balusc.
communauté.jboss.org/thread/174379 Détails quelques problèmes que je suis confronté à Mojarra 2.0 a jboss-faces.jar, JSF-API-2.0.3-B05.jar et JSF-IMP-2.0.3-B05.jar et j'ai téléchargé Javax.Faces-2.1.7.jar, ma consonfusion est que dans JSF- libs, est-ce que j'ajoute que Javax.Faces-2.1.7.jar ou j'ai besoin d'avoir d'autres potes comme JBoss-Faces.jar, JSF-API-2.1.7-B05.JAR et JSF-IMP-2.1.7-B05 .jar aussi?
@Rachel: Vous devriez certainement garder jboss-faces.jar code>. Celui-ci prend soin du déploiement JBoss JSF. Les autres sont des libs spécifiques de JSF et doivent être supprimés lorsque vous avez une version plus récente. Le
javax.faces.jar code> est un nouveau fichier de paquet de Mojarra 2.1.5 qui contient B> l'API et IPL. Alors utilisez soit i> celui-ci, ou i> les fichiers API / Implex séparés. Oh, dans le futur, veuillez poser une nouvelle question. Ceci est exclus.
Bien sûr, je me tromperai, je me suis trompé dans ma compréhension concernant les sessions, j'ai ajouté un commentaire à Stackoverflow.com/q/9705443/164299 a>.
Ceci ressemble à http://java.net/jira/browse/javaserverfaces-1758 a> p>
qui est pas em> fixé dans mojarra 2.1.x p>
aussi longtemps que javax.faces.partial_state_saving strong> est défini sur faux strong> Vous recevrez que java.lang.illegalargumentException strong>. Si vous définissez
Dans mon cas, je avais manqué une balise de fin dans le fichier XHTML pour l'un des appels JSTL. J'utilisais Choisir la balise et l'une des quand les étiquettes entre le choix n'ont pas eu d'étiquette finale p>