JSF String wird nicht angezeigt

Dieses Thema JSF - String wird nicht angezeigt im Forum "Web Tier" wurde erstellt von alaska94, 22. Jan. 2015.

Thema: String wird nicht angezeigt Hallo, ich will mich etwas mit JSF beschäftigen. WOllte jetzt einfach mal einen String auf der Webseite...

  1. Hallo,

    ich will mich etwas mit JSF beschäftigen. WOllte jetzt einfach mal einen String auf der Webseite ausgeben, aber es erscheint nichts, ich weiß nicht, woran es liegen könnte.

    Hier mein Controller:
    Code (Java):

    package controller;

    import javax.inject.Named;


    @Named
    public class TestController {
        private String test = "Hallo, ich bin der Controller";
       
        public String getTest(){
            return test;
        }
    }


    Hier meine index.xhtml
    HTML:
    <?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:h="http://xmlns.jcp.org/jsf/html">
        <h:head>
            <title>Abnehmseite1</title>
        </h:head>
        <h:body>
          #{testController.getTest()}
        </h:body>
    </html>
    Ich bekomme immer eine leere Seite angezeigt. Wenn ich den Titel ändere oder einfach so einen String auf die Seite Schreibe, bekomme ich den angezeigt. Aber den String über #{TestController.getTest()} bekomme ich nicht angezeigt, habe ich was falsch gemacht?
     
    Zuletzt bearbeitet: 22. Jan. 2015
  2. Vielleicht hilft dir das Grundlagen Training weiter --> *Klick*
  3. Moin,
    ich arbeite momentan auch mit JSF, ich weis abe rleider nicht wofür die Annotaion @name ist, aber musst du nicht eine richtige bin deklarieren mit @ManagedBean, ich glaube den auch im projekt registrieren. Und dann brauchst du in deiner Bean einen Konstruktor, den getter für deine variable hast du ja schon.

    Grüße

    Supra
     
  4. stg
    stg
    Was du schreibst ist so ziemlich alles falsch.


    Zum Thema:
    Die @Named-Annotation, die du verwendest ist eine CDI annotation. Um CDI in deiner Application zu aktivieren, braucht es eine beans.xml. Hast du die angelegt?
    Zugriff auf das field test erlangst du dann durch #{testController.test}
     
  5. Kostenloses Java-Grundlagen Training im Wert von 39 €
    Schau dir jetzt hier das Tutorial an und starte richtig durch!