Je suis après la Java EE firstcup tutoriel en utilisant Netbeans et Glassfish.balises JSF ne sont pas rendus en HTML
Lorsque j'exécute le niveau Web JSF que l'on m'a demandé de coder, le navigateur reçoit le même balisage JSF codé dans le fichier .xhtml et les balises ne sont pas affichées en tant que balises HTML. Je sais cela en utilisant le Voir le code source dans mon navigateur.
Par exemple, pour ce code:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<title>Page title here</title>
</h:head>
<h:body>
<h2>
<h:outputText value="#{bundle.WelcomeMessage}" />
</h2>
</h:body>
</html>
Le navigateur devrait obtenir quelque chose comme:
<html ...>
<head>
<title>Page title here</title>
</head>
<body>
<h2>
the welcome message goes here
</h2>
</body>
</html>
droit?
Eh bien, mon navigateur obtient le code jsf (le premier morceau de code ci-dessus) et non le code html (le deuxième morceau de code ci-dessus).
Il semble que ce soit un problème de configuration chez netbeans ou glassfish mais je ne sais pas quoi. Des idées?
Ceci est mon fichier web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 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_3_0.xsd">
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
<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>/firstcup/*</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>greetings.xhtml</welcome-file>
</welcome-file-list>
</web-app>
Ceci est mon fichier faces-config.xml:
<?xml version='1.0' encoding='UTF-8'?>
<!-- =========== FULL CONFIGURATION FILE ================================== -->
<faces-config version="2.0"
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-facesconfig_2_0.xsd">
<application>
<resource-bundle>
<base-name>firstcup.web.WebMessages</base-name>
<var>bundle</var>
</resource-bundle>
<locale-config>
<default-locale>en</default-locale>
<supported-locale>es</supported-locale>
</locale-config>
</application>
<navigation-rule>
<from-view-id>/greetings.xhtml</from-view-id>
<navigation-case>
<from-outcome>success</from-outcome>
<to-view-id>/response.xhtml</to-view-id>
</navigation-case>
</navigation-rule>
</faces-config>
De plus:
- L'URL I ' m d'entrer dans le navigateur est http://localhost:8081/firstcup/ mais j'ai aussi essayé: http://localhost:8081/firstcup/greetings.xhtml
- J'ai vérifié les journaux Glassfish et il n'y a aucune information de ne pas être en mesure de charger FacesServlet
Odd. Vous avez dit que vous avez également essayé 'http: // localhost: 8081/firstcup/greetings.xhtml'. Cela aurait dû fonctionner aussi sans un fichier de bienvenue. Au moins, la cause première du problème est toujours que la requête n'a pas été transmise à travers le 'FacesServlet'. – BalusC