2010-05-04 12 views
3

C'est une question que j'ai vue ici mais la solution affichée n'a pas résolu mon problème. Encore une fois je traite avec jsf 2.0 et j'ai 2 pages: login.xhtml et index.xhtml, j'utilise aussi SpringSecurity à des fins d'authentification. index.xhtml renvoie OK mais la connexion ne fonctionne pas (la source de la page affiche les balises jsf non analysées). J'ai déjà désactivé SpringSecurity pour vérifier si ça avait ou non quelque chose à voir avec mon problème mais pas de chance ... je ne sais vraiment pas ce qui ne va pas avec mon code (2 jours d'affilée essayant de le comprendre), donc toute aide être grandement apprécié. Voici mon code:Les balises JSf ne sont pas affichées

web.xml

<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 
<context-param> 
    <param-name>javax.faces.PROJECT_STAGE</param-name> 
    <param-value>Development</param-value> 
</context-param> 

<!-- Spring Security --> 
<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value>/WEB-INF/applicationContext.xml</param-value> 
</context-param> 

<listener> 
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
</listener> 
<filter> 
    <filter-name>springSecurityFilterChain</filter-name> 
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> 
</filter> 
<filter-mapping> 
    <filter-name>springSecurityFilterChain</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 
<!-- Spring Security --> 

<servlet> 
    <servlet-name>Faces Servlet</servlet-name> 
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 
<servlet-mapping> 
    <servlet-name>Faces Servlet</servlet-name> 
    <url-pattern>/faces/*</url-pattern> 
</servlet-mapping> 
<session-config> 
    <session-timeout> 
     30 
    </session-timeout> 
</session-config> 
<welcome-file-list> 
    <welcome-file>JSF2Example/index.xhtml</welcome-file> 
</welcome-file-list> 

partie de login.xhtml

<h:head> 
    <title>Ejemplo JSF 2 AJAX</title> 
</h:head> 
<h:body> 
     <h:form id="login"> 
     <h:panelGrid columns="2"> 
      <h:outputLabel for="Usuario" value="Usuario:"/> 
      <h:inputText id="Usuario" value="#{loginBean.userName}" required="true"/> 
      <h:outputLabel for="Password" value="Contraseña:"/> 
      <h:inputSecret id="Password" value="#{loginBean.password}"  required="true"/> 
     </h:panelGrid> 
     <h:commandButton value="Ingresar" actionListener="#{loginBean.doLogin}"/> 
     <h:messages/> 
    </h:form> 
</h:body> 

Toutes les idées? Merci beaucoup!

Répondre

4

source page balises JSF syntaxe non analysée

Cela peut avoir 2 causes:

  1. L'URL de la page ne correspond pas à la url-pattern du FacesServlet, il avait donc pas chance d'analyser les tags.

  2. Les déclarations xmlns pour les composants JSF sont manquantes dans la balise <html>, elles ont donc été traitées en tant que texte en clair.

+0

Salut BalusC, merci pour votre aide. J'ai résolu le problème en changeant le modèle d'URL de/faces/* en * .xhtml D'une certaine manière, l'ancien modèle a interféré avec la configuration de Spring-Security. – William

+0

Même ici. J'ai dû le changer en * .xhtml ... –