public class DefaultJndiSupport extends org.springframework.jndi.JndiLocatorSupport implements JndiSupport
TERASOLUNAが提供するJNDI関連のユーティリティデフォルト実装クラス。
WebAPコンテナのJNDIリソースを扱うユーティリティである。
JNDIの認証情報が必要な場合は、Bean定義ファイルに必要なプロパティを
以下のように設定し、initializeメソッドを実行すること。
Bean定義ファイル経由でこのクラスのインスタンスを生成する場合は
init-method属性でinitializeメソッドを指定すること。
factory | JNDIファクトリクラス名を指定する。 | weblogic.jndi.WLInitialContextFactory |
url | JNDIプロバイダがおかれているURIを指定する。 | t3://localhost:7001 |
username | JNDIサーバのユーザ名を指定する。 | weblogic |
password | JNDIサーバのパスワードを指定する。 | password |
<bean id="jndiSupport" scope="singleton"
class="jp.terasoluna.fw.web.jndi.DefaultJndiSupport">
init-method="initialize">
<!-- セッタインジェクションで認証情報設定 -->
<property name="jndiEnvironmentMap">
<map>
<entry key="factory">
<value>weblogic.jndi.WLInitialContextFactory</value>
</entry>
<entry key="url">
<value>t3://localhost:7001</value>
</entry>
<entry key="username">
<value>weblogic</value>
</entry>
<entry key="password">
<value>password</value>
</entry>
</map>
</property>
<!-- プロパティjndiPrefixの設定 -->
<property name="jndiPrefix"><value>false</value></property>
</bean>
TomcatのBean定義ファイル設定例
<bean id="jndiSupport" scope="singleton"
class="jp.terasoluna.fw.web.jndi.DefaultJndiSupport" >
<!-- プロパティjndiPrefixの設定(デフォルト値はfalse) -->
<property name="jndiPrefix"><value>false</value></property>
</bean>
使用方法
Bean定義ファイルにサービスロジックの設定を以下のように行う。
サービスロジックで以下のように
<bean id="jndiLogic" scope="singleton"
class="jp.sample.JndiLogic">
<property name="jndiSupport">
<ref bean="jndiSupport" />
</property>
</bean>
<!-- JndiSupport設定 -->
<bean id="jndiSupport" scope="singleton"
class="jp.terasoluna.fw.web.jndi.DefaultJndiSupport" />
DefaultJndiSupport
を取得する。
public class JndiLogic {
private JndiSupport jndiSupport = null;
public void setJndiSupport(jndiSupport) {
this.jndiSupport = jndiSupport;
}
public Object jndiLookup(String name) {
return jndiSupport.lookup(name);
}
}
JNDI_SUPPORT_KEY
コンストラクタと説明 |
---|
DefaultJndiSupport()
コンストラクタ。
|
修飾子とタイプ | メソッドと説明 |
---|---|
Map<String,String> |
getJndiEnvironmentMap()
jndiEnvironmentMapを取得する。
|
void |
initialize()
JndiTemplateの環境設定を行う。
|
boolean |
isJndiPrefix()
リソース名のプリフィックスのゲッター。
|
Object |
lookup(String name)
指定されたオブジェクトを取得する。
|
void |
rebind(String name,
Object obj)
名前をオブジェクトにバインドして、
既存のバインディングを上書きする。
|
void |
setJndiEnvironmentMap(Map<String,String> jndiEnvironmentMap)
jndiEnvironmentMapを設定する。
|
void |
setJndiPrefix(boolean jndiPrefix)
リソース名のプリフィックスのセッター。
|
void |
unbind(String name)
指定されたオブジェクトをアンバインドする。
|
convertJndiName, isResourceRef, lookup, setResourceRef
public void setJndiPrefix(boolean jndiPrefix)
jndiPrefix
- リソース名のプリフィックス付加フラグpublic boolean isJndiPrefix()
public Map<String,String> getJndiEnvironmentMap()
Map
。public void setJndiEnvironmentMap(Map<String,String> jndiEnvironmentMap)
jndiEnvironmentMap
- JNDI認証情報を格納するMap
。public void initialize()
public void rebind(String name, Object obj)
rebind
インタフェース内 JndiSupport
name
- オブジェクト名obj
- バインドされるオブジェクトpublic void unbind(String name)
unbind
インタフェース内 JndiSupport
name
- オブジェクト名public Object lookup(String name)
lookup
インタフェース内 JndiSupport
lookup
クラス内 org.springframework.jndi.JndiLocatorSupport
name
- オブジェクト名Copyright © 2014. All Rights Reserved.