A WebSphere Application Server 5.1 változata automatikusan hajtotta végre a request.getAttribute("string") metódus visszatérési értékének String típusra való típuskényszerítését. A 6-os változatban ez már nem így történik: a visszaadott adatok a java.lang.Object, nem pedig a java.lang.String osztály egy-egy példányát jelentik. A szabály ezt a bejegyzést ismeri fel a JSP fájlokban, ha a request.getAttribute() metódus egy értékadó utasítás vagy változódeklaráció része.
Példák a rendszer által jelzővel ellátott bejegyzésekre
Változódeklaráció:
<% String myAtt = request.getAttribute("myAtt");%>
Értékadó utasításban szereplő változó:
<% String myAtt;
myAtt = request.getAttribute("myAtt");%>
Értékadó utasításban szereplő, nem objektum típusú változó típuskényszerítési operátor nélkül:
<% Date d= request.getAttribute("myDate");%>
A következő kódrészt a rendszer nem látja el jelzővel:
Típuskényszerítésen már átesett kód:
<% String myAtt= (String) request.getAttribute("myAtt");%>
Értékadó utasítás vagy változódeklaráció részét nem képező kód:
<% request.getAttribute("myDate");%>
Az 5.1 változatra jellemző viselkedés megőrzéséhez a com.ibm.wsspi.jsp.useStringCast egyéni tulajdonságot használhatja fel. A tulajdonság használatával kapcsolatos további részletekért tekintse meg a következő leírást:
JavaServer Pages rendszerre jellemző webtároló egyéni tulajdonságai