JSF - Tags werden ignoriert



  • Hallo,
    ich bin gerade dabei mit JSF anzufangen, bekomme das ganze aber nicht ans laufen.
    Ich arbeite mit
    - Eclipse Ganymede
    - Glassfish v2
    - JSF 1.2

    Meine JSP sieht so aus:

    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding="ISO-8859-1"%>
    <!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:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
    <title>Insert title here</title>
    </head>
    <body>
    <f:view>
    	<h:outputText value="Hallo" /> Du!
    </f:view>
    </body>
    </html>
    

    Habe eine automatisch erstellte faces-config, in meiner web.xml ist das Faces Servlet enthalten und gemappt.
    Sollte eigentlich alles passen, allerdings werden die JSF Tags nicht interpretiert, d.h. wenn ich das ganze deploye wird nur Du! angezeigt. Lasse ich mir den Quelltext anzeigen sind die JSF Tags noch enthalten.
    In Eclipse unter den Libraries sind die jsf-impl.jar und die javaee.jar angegeben und ich habe diese auch unter Preferences->Web->JavaServerFacesTools->Libraries angegeben.

    Hoffe jemand kann mir weiterhelfen warum die Tags ignoriert werden.
    Danke!

    EDIT:
    Habe noch weitere Tests gemacht und herausgefunden, dass es funktioniert wenn ich normale HTML Syntax verwende. Nutze ich hingegen das von Eclipse erstellte XHTML Template tritt das Problem auf. Vllt. hat jemand von euch eine Erklärung dafür...



  • Zum einen fehlen dir die Lib-Includes.

    <%@ page language="java" %>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>

    diese dürfen nicht fehlen.

    Als ich damals mit JSF Anfangen musste hatte mir:
    http://www.laliluna.de/first-java-server-faces-tutorial.html

    sehr geholfen.

    zudem musst du auch darauf achten das du auch deine web.xml & faces-config richtig konfigurierst sodass dann auch wenn du z.b.

    index.jsf aufrufst die index.jsp in normales html übersetzt wird weil du *.jsf als endung für JSF-Anwendungen gewählt hast.

    hoffe konnte dir helfen.

    gruß jensa



  • Hallo,
    erstmal danke für die Antwort.
    Die Includes die du angesprochen hast, müssten mit

    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding="ISO-8859-1"%>
    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html">
    

    erledigt sein (meine JSP Page ist ein von Eclipse erstelltes Template).
    Wie in meinem Edit geschrieben funktioniert es mit den anderen Templates von Eclipse, nur bei der XHTML Version werden die Tags ignoriert. Die web.xml und faces-config sind in allen Fällen gleich konfiguriert, da auch von Eclipse automatisch erstellt.


Anmelden zum Antworten