SamGamdschie Geschrieben 27. September 2007 Geschrieben 27. September 2007 Hallo. Ich will zum test ein 2 Werte die in einem JSF-Formular eingegeben werden abspeichern. es klappt aber irgendwie nicht. ich verstehe das wohl was nicht richtig.... ich will jetzt nicht allen code posten, sondern nur da wo ich mir unsicher bin. <h:inputText size="14" value="#{UserHandler.user.name}"></h:inputText> <h:inputText size="14" value="#{UserHandler.user.alter}"></h:inputText> übergebe werte an bean-properties... so jetzt kommen meine probleme... <h:commandButton value="speichern" action="#{UserHandler.saveUser}"></h:commandButton> hier soll die die methode saveUser aufgerufen werden und da soll der User abgespeichert werden.... public void saveUser(String name, int alter){ Session session = HibernateUtil.getSessionFactory().getCurrentSession(); User meinUser = new User(); meinUser.setName(name); meinUser.setAlter(alter); session.beginTransaction(); session.save(meinUser); session.getTransaction().commit(); HibernateUtil.getSessionFactory().close(); } ich verstehe einfach nicht, wie ich die werte aus den bean-properties dieser methode übergebe, damit sie gespeichert werden...... kann mir da jemand helfen? Zitieren
DissonanceX Geschrieben 27. September 2007 Geschrieben 27. September 2007 Eigentlich brauchst Du da nichts übergeben... Du solltest in Deiner Bean setter und getter für das user-Property haben public void setUser (User user) { ... } public void getUser () { ... } oder so ähnlich. Nack Klick auf den CommandButton sollte die Bean die entsrpechenden Werte aus dem Form übernommen und in das User-Objekt überführt haben (UserHandler.user.name heisst nichts anderes als UserHandler().getUser().setName(...). Deine action-Methode sollte auch keine Parameter haben. In der Action-Methode selbst sollte dann nur noch Hibernate-Funktionalität aufgerufen werden. Hoffe, dass hilft Dir. Zitieren
SamGamdschie Geschrieben 27. September 2007 Autor Geschrieben 27. September 2007 ich habe in der bean meine getter uns setter. also darf die methode keine parameter haben... also ist es im prinzip so, dass ich die action-methode aufrufe und dann einfach ein User-Objekt erzeuge und diese abspeichere..... richtig? Zitieren
DissonanceX Geschrieben 29. September 2007 Geschrieben 29. September 2007 Das User-Objekt brauchst Du schon vorher...im Konstruktor der Bean. Im Lifecycle werden zuerst die Properties gelesen und dann die Action Methode ausgeführt. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.