request.getAttribute() メソッドでの振る舞いの変更を確認する

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 コンテナーのカスタム・プロパティー