クラス Renderer_FILTER

  • すべての実装されたインタフェース:
    CellRenderer

    public class Renderer_FILTER
    extends AbstractRenderer
    特定のHTMLタグのエスケープ文字を元のタグに戻して表示するクラスです。 HTMLレンデラーで、HTMLタグ('<' や '>')が('&lt;' や '&gt;' に)変換 されますが、この FILTERでは、特定の変換済みタグを元のHTMLに戻す処理を行います。 現時点では、<u> , </u> , <br /> の3種類です。 これは、帳票システムで、データに含まれるHTMLを変換しないと、HTMLのレイアウトが 崩れる為、3.7.0.1 (2005/01/31) で、帳票データのHTMLエスケープ処理を導入しました。 この時点で、セル内の改行を表す <br> も、エスケープされる為、3.7.1.1 (2005/05/31)にて <br>のみ、そのまま元に戻す処理が入っています。 今回は、指定のデータに下線を引く <u> タグと、今後もこのような変換対象が現れる 可能性を考慮して、既存のレンデラーに実装しました。 現状の帳票システムでは、エンジンのレンデラー経由で変換され、HTML可されているため、 カラムリソース(システムIDがGE)に逆変換したいカラムをこの FILTER レンデラーで 登録すれば、元に戻すことが可能になります。 クロスサイトスクリプティング問題に対応するフィールドに対して 定義することにより、エスケープ処理を行います。 このクラスは、不変オブジェクトとして、共有されます。
    導入されたバージョン:
    JDK5.0,
    • コンストラクタの詳細

      • Renderer_FILTER

        public Renderer_FILTER()
        デフォルトコンストラクター
    • メソッドの詳細

      • newInstance

        public CellRenderer newInstance​(DBColumn clm)
        各オブジェクトから自分のインスタンスを返します。 自分自身をキャッシュするのか、新たに作成するのかは、各サブクラスの実装に まかされます。
        パラメータ:
        clm - DBColumnオブジェクト
        戻り値:
        CellRendererオブジェクト