JSP: Liste in Bean über Session aufbauen

px5

Mitglied
Hallo,

ich habe hier ein Problem mit JSP und Beans, wo ich einfach nicht weiterkomme.
Ich will Daten aus einem WebFormular in einen Bean zwischenspeichern und diesen Bean einer List hinzufügen auf die ich auch als Bean zugreife.
Sinn des ganzen soll sein, dass ich jedesmal wenn ich das Formular abschicke einen neuen Eintrag in der Liste habe, die ich mir als ganze ausgeben lasse.
Nur funktioniert das Ganze leider überhaupt nicht, wenn ich den Scope des eines Beans auf Session stelle. Obwohl das doch genau dafür gedacht ist?
Hier mal der ganze Code, evtl sieht jemand den Fehler oder kann mir erklären warum das gar nicht so funktionieren kann ;)


Java:
<form method="POST">
   Artikelname:
   <input type="text" id="form_name" name="form_name" />
   <br/>
   Preis Trennung mit Punkt:
   <input type="text" id="form_preis" name="form_preis" />
   <br/>
   Anzahl
       <select name="form_anzahl" size="1">
      <option>1</option>
      <option>2</option>
      <option>3</option>
      <option>4</option>
      <option>5</option>
    </select>  <br/>
   <input type="submit" value="Hinzufuegen" />
</form>
<%@ page import="mmn.*" %>
<jsp:useBean id="item" class="mmn.Item" scope="request" >
<jsp:setProperty name="item" property="name" param="form_name"/>
<jsp:setProperty name="item" property="anzahl" param="form_anzahl"/>
<jsp:setProperty name="item" property="preis" param="form_preis"/>

<jsp:useBean id="shop" class="mmn.Shop" scope="session" >
<% 
for(Item i : shop.getItems())
{
out.println(i.getName());
out.println(i.getAnzahl());
out.println(i.getPreis());
}

shop.addItem(item);

 %>

</jsp:useBean>
</jsp:useBean>
 

thommy.s

Aktives Mitglied
wär's denn hier nicht angebrachter, den Request-Scope zu nutzen. Du wolltest doch, wie du schreibst, das Ganze nur zwischenspeichern.
 

px5

Mitglied
wär's denn hier nicht angebrachter, den Request-Scope zu nutzen. Du wolltest doch, wie du schreibst, das Ganze nur zwischenspeichern.

"zwischenspeichern" so lange der User auf der Seite ist. Also auch nach erneuten absenden des Formulars, sollte das Bean Objekt weiter bestehen und ich füge die aktuellen Formulardaten in die Liste ein. So hab ich mir das gedacht und deswegen Session Scope. Mit Request erzeug ich mir ja bei jedem Mal ein neues Bean oder?
 

thommy.s

Aktives Mitglied
dann solltest du es vllt. doch ein wenig genauer beschreiben. Was genau funktioniert nicht? Fehlermeldungen etc.. Kommt irgendetwas in deiner Liste an? Oder nicht, oder ggf. zuviel (also der Inhalt deiner Bean mehr als einmal) . Um nicht die Glaskugel bemühen zu müssen, braucht man wohl noch einige Informationen.
 

px5

Mitglied
es kommt nichts in der liste an.
sobald ich den scope auf request stelle, kommt nach einem submit das element an.
nur ich will ja das bei mehrmaligem submit alle in der liste gespeichert werden.
 

tagedieb

Top Contributor
Du musst die jsp:useBean Tags wieder schliessen wenn du die Beans erstellt hast. Ich bin mir nicht sicher aber ich denke der Code zwischen dem Start- und End tag wird NUR beim erzeugen des Beans ausgefuehrt. Im Request scope funktioniert dein Code da der Shop ja in jedem Request erstellt wird, aber im Session Scope wird dein code nur beim ersten mal ausgefuehrt!

Versuch mal die mal hier:


Java:
<%@ page import="mmn.*"%>
<jsp:useBean id="item" class="mmn.Item" scope="request">
	<jsp:setProperty name="item" property="name" param="form_name" />
	<jsp:setProperty name="item" property="anzahl" param="form_anzahl" />
	<jsp:setProperty name="item" property="preis" param="form_preis" />
</jsp:useBean>

<jsp:useBean id="shop" class="mmn.Shop" scope="session">
</jsp:useBean>

<%
	for (Item i : shop.getItems()) {
		out.println(i.getName());
		out.println(i.getAnzahl());
		out.println(i.getPreis());
	}

	shop.addItem(item);
%>
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
X JSF - eine Liste aller Sessions, Instanzen bzwFacesContexte bekommen? Web Tier 4
A JSF Liste im RequestScope Web Tier 5
D Anzahl Objekte in Liste in JSF ausgeben. Web Tier 2
C PanelGrid aus einer Liste Web Tier 3
T Liste nach Anfangsbuchstaben getrennt ausgeben? Web Tier 2
6 JSF Form Attribute nicht an Bean übergeben Web Tier 2
G HTML Fragment in Bean erzeugen? Web Tier 1
W JSF Probleme mit Zugriff zur Managed Bean Web Tier 11
R get-methode der Managed-Bean wird immer 3 mal ausgeführt Web Tier 4
F JSF Bean funktioniert nicht immer.. Web Tier 3
I CSS von Client -> an Bean senden Web Tier 0
H JSF jsf/sessionScoped Bean - Bilder (jpg) werden nicht richtig dargestellt Web Tier 1
S Java Bean und Java Servlet Web Tier 2
G jsf bean erstellen die mir die aktuelle uhrzeit ausgibt als xhtml Web Tier 5
M viele Objekte des Managed Bean Web Tier 3
S [JSF] Zugriff auf Bean (Eclispe,JBoss) Web Tier 12
P JSF Prob mit xhtml / Bean / JS Web Tier 6
J JSF Initialisierung einer ApplicationScoped Bean Web Tier 2
B Berechnen und Anzeigen von Formeln aus der Chemie und Physik mit JSP und Bean Web Tier 14
H Bean-Objekte aus XML erstellen Web Tier 2
L expression language Bean && Bean Web Tier 3
C JSF Methoden in Backing-Bean als JSF-Property Web Tier 3
P JSF Merkwürdiges Verhalten einer Bean Web Tier 11
S CDI: Bean aus einem anderen jar Web Tier 3
X Managed Bean Scope zwischen Request und Session gesucht Web Tier 6
D JSF EL #{not null bean.property} Parse exception Web Tier 2
T Seam-Komponenten oder Java Bean soll direkt nach Appserver-Start "leben" Web Tier 4
B JSF Servlectexception: Verwalteter Bean "..bean" kann nicht erstellt werden Web Tier 2
G JSF Bean Vererbung Web Tier 5
J Validieren abhängiger Felder mit JEE6/Bean validation Web Tier 33
F Leere Bean? Web Tier 7
S JSF2: Managed bean aus anderer Dependency Web Tier 7
W MVC mit Bean, JSP und Servlet Web Tier 6
S Style bei fehlerhafter Eingabe (Bean Validation) ändern Web Tier 2
H Managed Bean Aufruf auf Stack legen Web Tier 10
S Bean Validation (JSF 2.0) funktioniert nicht. Web Tier 4
V Vector aus Bean "holen" / JSP Web Tier 3
B JSF session bean mit worker thread updaten Web Tier 7
K bean methode von jslt aufrufen Web Tier 7
I Eine Bean von einer anderen Bean aufrufen Web Tier 2
J Managed bean und javascript kommunikation (JSF 2) Web Tier 2
G JSF javax.faces.bean Web Tier 2
K Anfängerfrage in JSF: <h:inputText> aus Managed Bean ansprechen Web Tier 6
S Managed bean nicht initialisiert Web Tier 2
A JSF+Glassfish: Probleme mit Managed Bean Web Tier 2
E Methode einer Bean aus anderer Bean aufrufen Web Tier 10
S [SelectItems value(herkunft bean)] in [UI:repeat] lädt daten nicht neu nach Web Tier 3
N MessageResources von Struts in Form-Bean Web Tier 4
N java bean in eclipse Web Tier 6
A JSF SelectOneMenu mit Werten aus Bean vorbelegen Web Tier 2
S JSF: Frage wegen managed-bean Web Tier 3
pusteblume Mehrere Objekte einer Bean Web Tier 10
M Problem mit JSP und Bean Web Tier 2
O 2 Fragen zu JSP und Bean Web Tier 4
E value übergabe an bean! aber wie? Web Tier 3
F Datei von bean aus laden Web Tier 3
N JSF kann Bean nicht finden! Web Tier 7
H JSF - Bean (scope session) - Verfallsdatum? Web Tier 3
G Mit JSTL Rückgabe von Bean Methode ausgeben Web Tier 3
D ResultSet aus Bean an JSP übergeben Web Tier 11
M JSF - Bean aus SessionScope direkt im JSF Code auslesen Web Tier 1
G Eine Instanz pro Managed Bean? Web Tier 2
L Validation über ManagedBeans Web Tier 7
K Internationalisierung über Properties Datei Web Tier 6
P JSF ArrayList über InputText befüllen Web Tier 10
S Ich brauche Buchempfehlung über JSP und Servlet Web Tier 2
M JSF Actions über Methodenrückgabe? Web Tier 3
E JSF Applikation läuft nicht über Tomcat Web Tier 3
M Velocity - Dropdown-Felder über Macro generieren Web Tier 4
M Ton wiedergabe über jsp-Seite Web Tier 2
P For-Schleife mit JSTL über ArrayList Web Tier 8
R Datenbankzugriff über JSP mit JDBC connector ! Web Tier 2
G JSF h:form Tag Login über j_security_check und weiterleiten Web Tier 5
R Array oder Listen einlesen mit JSF über javaserverpage Web Tier 2
G Dateiupload über JSF? Web Tier 5
G Überblick über Web-Technologien Web Tier 2
M Authentifizierung über PhaseListener je nach Seite Web Tier 11

Ähnliche Java Themen

Neue Themen


Oben