弁財天

ゴフマン「専門家を信じるのではなく、自分自身で考えて判断せよ」

java:global/jdbc/DataSource1

JNDI look up binding

<subsystem xmlns="urn:jboss:domain:naming:1.1" >
<bindings>
<lookup name="java:global/c" lookup="java:global/b" />
</bindings>
</subsystem>
従来のリソースの参照とはアプリケーションとデータソースの環境定義を切り離す為のものだったのだが、JBossはjava:/glocal/some/entryなる定義が可能で それをstandalone.xmlで関連付け可能にしてる。

EAP-6.4.0/standalone/configuration/standalone-full.xmlで

<subsystem xmlns="urn:jboss:domain:naming:1.4">
    <bindings>
        <simple name="java:global/jdbc/DataSource1" value="java:/jdbc/HogeDataSource1"/>
    </bindings>
    <remote-naming/>
</subsystem>
みたいな定義をして
String refJndiName = "jdbc/DataSource1";
String jndiName = (String) FwLookupUtil.lookup("java:global/" + refJndiName);
DataSource dataSource = (DataSource) FwLookupUtil.lookup(jndiName);
なかんじで使う。

おもろい。こうすることでweb.xmlとかjboss-web.xmlの混乱はなくなる。 土人F/Wのヘンテコな.propertiesファイルのデータソースマッピングとも噛み合う。

投稿されたコメント:

コメント
コメントは無効になっています。