Serwer WebSphere Application Server w wersji 5.1 automatycznie rzutował zwrócenie metody request.getAttribute("string") na String. W wersji 6 tak się nie dzieje. Zwracane dane są instancją java.lang.Object, a nie java.lang.String. Ta reguła wykrywa pozycję w plikach JSP, jeśli metoda request.getAttribute() jest częścią przypisania lub jest częścią deklaracji zmiennej.
Przykłady pozycji, które zostaną oznaczone flagą
Deklaracja zmiennej:
<% String myAtt = request.getAttribute("myAtt");%>
Przypisanie zmiennej:
<% String myAtt;
myAtt = request.getAttribute("myAtt");%>
Przypisanie zmiennej niebędącej obiektem bez operatora cast:
<% Date d= request.getAttribute("myDate");%>
Następujący kod nie zostanie oznaczony flagą:
Kod, który jest już rzutowany:
<% String myAtt= (String) request.getAttribute("myAtt");%>
Kod, który nie jest częścią przypisania ani deklaracji zmiennej:
<% request.getAttribute("myDate");%>
Aby nadal było stosowane zachowanie obowiązujące w wersji 5.1, można użyć właściwości niestandardowej com.ibm.wsspi.jsp.useStringCast. Więcej informacji na temat użycia tej właściwości zawiera następująca sekcja:
JavaServer Pages specific web container custom properties (Właściwości niestandardowe kontenera WWW specyficzne dla stron JavaServer Pages)