[Seasar-user:561] Re: Sel でstaticな変数をを参照

B gluegent.com Masataka Kurihara kurihara
2004年 4月 1日 (木) 10:23:07 JST


栗原です。

> (お昼休みに)対応してみました。
> org.seasar.framework.sel.parserにSelParser.java,StaticFieldParser.javaを
> 置いて、build.xmlを実行すると最新のモジュールになります。

  パッチあてて確認しました。

package sample;
public class TestImpl implements Test {
  public static final String STATIC_STR = "static value";
  public static Map STATIC_MAP;
  static {
    STATIC_MAP = new HashMap();
    STATIC_MAP.put("key", "val");
  }
}

<component name="testName" class="sample.TestImpl">
  <initMethod>out.println(sample.TestImpl.STATIC_VAL)</initMethod>
  <initMethod>out.println(sample.TestImpl.STATIC_MAP)</initMethod>
  <initMethod>out.println(sample.TestImpl.STATIC_MAP.get('key'))</initMethod>
  <initMethod>out.println(sample.TestImpl.STATIC_MAP.key)</initMethod>
  <!-- 以上全部OK -->

  <initMethod>out.println(testName.STATIC_VAL)</initMethod>
  <initMethod>out.println(this.STATIC_VAL)</initMethod>
  <!-- 以上全部NG -->
</component>

  このStaticアクセス、thisやコンポーネント名を介すような、イン
スタンス経由の場合、仕様としてNGというのはちょっと惜しい!優先
順位高くはないかと思いますけど。フルパッケージ書くの長い時が多
いんで。

--
株式会社グルージェント
栗原 傑享(くりはら まさたか)
渋谷区渋谷3-7-6 第6矢木ビル4F
TEL:03-5469-8869 FAX:03-5469-8879
URL:http://www.gluegent.com/
--





Seasar-user メーリングリストの案内