WebSphere Application Server v5.1 は、以下のリターンを自動的にキャストしました。 request.getAttribute("string") から String 。 バージョン 6 では、これはもはや当てはまりません。戻されるデータは、 java.lang.Stringではなく、 java.lang.Objectのインスタンスです。 規則は、request.getAttribute() が代入の一部または変数宣言の一部である場合に、JSP ファイルのエントリーを検出します。
フラグが立てられるエントリーの例は次のとおりです。
変数宣言
<% String myAtt = request.getAttribute("myAtt");%>
変数代入
<% String myAtt;
myAtt = request.getAttribute("myAtt");%>
キャスト演算子を使用しない非オブジェクト変数の代入
<% Date d= request.getAttribute("myDate");%>
次のコードにはフラグが立ちません。
既にキャストされたコード
<% String myAtt= (String) request.getAttribute("myAtt");%>
代入または変数宣言の一部ではないコード
<% request.getAttribute("myDate");%>
V5.1の動作を保持するために、カスタム・プロパティーを使用できます。 com.ibm.wsspi.jsp.useStringCast 。 プロパティーの使用法について詳しくは、以下を参照してください。
JavaServer Pages 固有の Web コンテナーのカスタム・プロパティー