Wie man Bean-Daten in der JSP
Habe ich bean definiert als PersonBean
im Gültigkeitsbereich einer session.
Was ich will, ist zu finden die PersonBean.personId
in der jsp-Seite.
Möchte ich es in jsp-Seite, weil ich will ein paar Berechnung auf dieser Grundlage personId
. Jemand ne Idee, wie man das gleiche.
In JSP, bin ich in der Lage zu drucken, das gleiche mit jsf
<h:outputText value="#{PersonBean.personId}" />
Aber ich brauche diese Wert zugewiesen, einige integer-Wert in jsp, wie unten gezeigt.
<h:outputText value="#{PersonBean.personId}" />
<%
int i = new PersonBean().getPersonId;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
%>
Dachte ich int i = new PersonBean().getPersonId;
funktionieren würde, aber es funktioniert nicht. Irgendeine Idee, wie ich das bekomme???
Update 1
Ich habe auch versucht
<jsp:useBean id="sessionPersonalDataBean" class="com.sac.databean.PersonalInformationDataBean" scope="session"/>
<%
out.print("my id is " + sessionPersonalDataBean.getPersonId());
%>
Trotzdem bekomme ich als Ausgabe my id is 0
statt my id is 0
.
HINWEIS:
Wenn ich, <h:outputText value=#{PersonalInformationDataBean.personId} />
bekomme ich die korrekte Ausgabe.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie vermeiden von scriptlets in JSPs, aber um deine Frage zu beantworten: eine JSP ein servlet. Wenn eine bean gespeichert in der session-scope unter dem Attribut "PersonBean", dann einfach Holen Sie es aus der Sitzung:
Wenn es gespeichert unter dem Attribut "PersonalInformationDataBean", der code ist natürlich
Den code
new PersonBean()
erstellt eine neue PersonBean Instanz, so natürlich, es gibt keinen Grund für diese Instanz zu haben, die dieselbe ID wie die Instanz in der session gespeichert. Das ist ziemlich basic-Java-Zeug, und ich würde Ihnen raten, zu lernen ein bisschen mehr über die Programmiersprache Java und grundlegende OO-Konzepte vor der Verwendung von JSF.