cannot be cast to java.lang.Integer in Bean-Aufruf

riseX

Mitglied
Hallo,

ich hab ne JSP ...

Code:
...
<div class="text">
	<%=lang.getText(lang.WELCOME_TEXT,1) %>
</div>
...

"lang" ist die ID der eingebunde Bean. "getText" benötigt 2 ints als Parameter.
Der zweite Parameter soll aus der session gelesen werden. Dann würde das quasi so aussehen:

Code:
...
<div class="text">
	<%=lang.getText(lang.WELCOME_TEXT,(Interger)session.getAttribute("lang")) %>
</div>
...

nun bekomme ich allerdings die Fehlermeldung, dass ich CLanguage (das ist die eingebundene Bean) nicht zu java.lang.Integer casten kann.

Mir schwant Fürchterliches und Wörter wie "Generic Types" schwirren mir im Kopf herum

Bitte sagt mir ne fixere Lösung.

Danke schonmal und
Gruß vom riseX
 
Offenbar hast du an der Session im Attribut "lang" keinen Integer sondern in Instanz von CLanguage hinterlegt.
 
Schreibfehler?
Interger

CLanguage ist halt kein Integer...vielleicht hat es eins als Attribut....
 
Zuletzt bearbeitet:
yeah.. da steht Interger ^^

Wenns ein String ist dann Integer.valueOf()

Und wenns dann immer noch nicht geht dann poste mal den Bean Code.

Gruss
 
ja der Tippfehler ist aber nicht drin ... ich habs nur grad hier im Post von Hand umgeändert ... teste grad mal die anderen Sachen .. melde mich in ein paar Minuten
 
Ausgabe von Sessionvariablen NullPointerException

also ich habe es nun soweit hinbekommen.

ich hab da ne weitere Frage

wenn ich mittels <%= %> direkt einen Wert aus der Session ausgeben will ... dann bekomme ich ne NullPointerException ...

wenn ich es so gestalte dass ich schreib
Code:
<%
	if (session.getAttribute("langObject") != null) {
		out.println(((CLanguage) session.getAttribute("langObject")).getText(((CLanguage) session.getAttribute("langObject")).WELCOME_TEXT));
	}
%>

dann gehts ... Kann ich die Abfrage irgendwie umgehen ....denn ich möchte nicht jedesmal wenn ich auf der Seite ne Ausgabe aus der Session mache diese komplette Abfrage da reinbasteln ... denn das sieht dann aus wie unter aller ....

Gruß vom riseX
 
Zuletzt bearbeitet:
Hi

Kannst du dir am Anfang nicht einfach follgendes Objekt holen:
session.getAttribute("langObject")).getText(((CLanguage) session.getAttribute("langObject"))
und dann die einzelnen Strings oder was auch immer da raus holen?
 
Zurück