読者です 読者をやめる 読者になる 読者になる

この日記は私的なものであり、所属会社の見解ではありません。 GitHub: takahashikzn

struts.xmlで宣言した定数を参照する

Struts2

生きてます。


最近は、技術的に全く面白みのない仕事をしていたためブログをサボリ気味でしたが、
来月から自社の作業に戻るため、ぼちぼち再開できると思います。たぶん。


さて。


struts.xmlで、以下のように定数を宣言することがあるわけですが、コレを参照する方法を調べました。

<struts>

  <!-- 定数 -->
  <constant name="struts.devMode" value="true" />
  <constant name="struts.configuration.xml.reload" value="true" />

  ...

</struts>


こんな感じ。ActionContextのインスタンスを使ってます。

ActionContext ac = ...;

String devMode = ac.getContainer().getInstance(String.class, "struts.devMode");

単なる定数であろうと何であろうと、Struts2はすべてのオブジェクトを同列に扱っているので、
いちいちコンテナから型を指定して取り出す必要があるわけです。回りくどー!