クラス UserCredentialsConnectionFactoryAdapter
- 実装されたすべてのインターフェース:
ConnectionFactoryEE
、QueueConnectionFactoryEE
、TopicConnectionFactoryEE
、InitializingBean
ConnectionFactory
EE のアダプター。指定されたユーザー資格情報を、認証にも使用できるすべての標準メソッド (この createConnection()
および createContext()
) に適用します。つまり、ターゲットで createConnection(username, password)
または createContext(username, password)
を暗黙的に呼び出します。他のすべてのメソッドは、ターゲット ConnectionFactory の対応するメソッドに委譲するだけです。 ユーザー資格情報が構成されていないターゲット JNDI ConnectionFactory をプロキシするために使用できます。クライアントコードは、すべての createConnection()
および createContext()
呼び出しでユーザー名とパスワードを渡すことなく、ConnectionFactory で動作できます。
次の例では、クライアントコードは、事前構成された "myConnectionFactory" を透過的に操作し、指定されたユーザー資格情報を使用して "myTargetConnectionFactory" に暗黙的にアクセスできます。
<bean id="myTargetConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/jms/mycf"/> </bean> <bean id="myConnectionFactory" class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter"> <property name="targetConnectionFactory" ref="myTargetConnectionFactory"/> <property name="username" value="myusername"/> <property name="password" value="mypassword"/> </bean>
"username" が空の場合、このプロキシはターゲット ConnectionFactory の標準 createConnection()
または createContext()
メソッドに委譲するだけです。これを使用すると、特定のターゲット ConnectionFactory で必要な場合にユーザー資格情報を暗黙的に渡すオプションのためだけに、UserCredentialsConnectionFactoryAdapter Bean 定義を保持できます。
Spring Framework 5 の時点で、このクラスは JMS 2.0 JMSContext
呼び出しを委譲するため、実行時に JMS 2.0 API が存在する必要があります。それでも、アプリケーションのセットアップによって実際の JMS 2.0 呼び出しがトリガーされない限り、JMS 1.1 ドライバー(JMS 2.0 API にバインドされている)に対して実行できます。
- 導入:
- 1.2
- 作成者:
- Juergen Hoeller, Stephane Nicoll
- 関連事項:
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明void
final ConnectionEE
現在スレッドにバインドされた資格情報があるかどうかを確認し、可能な場合はそれらを使用して、静的に指定されたユーザー名とパスワード(つまりcreateConnection
(StringSE username, StringSE password) 呼び出しをターゲット ConnectionFactory に直接委譲します。createContext
(int sessionMode) createContext
(StringSE userName, StringSE password) createContext
(StringSE userName, StringSE password, int sessionMode) final QueueConnectionEE
現在スレッドにバインドされた資格情報があるかどうかを確認し、可能な場合はそれらを使用して、静的に指定されたユーザー名とパスワード(つまりcreateQueueConnection
(StringSE username, StringSE password) 呼び出しをターゲット QueueConnectionFactory に直接委譲します。final TopicConnectionEE
現在スレッドにバインドされた資格情報があるかどうかを確認し、可能な場合はそれらを使用して、静的に指定されたユーザー名とパスワード(つまりcreateTopicConnection
(StringSE username, StringSE password) 呼び出しをターゲット TopicConnectionFactory に直接委譲します。protected ConnectionEE
doCreateConnection
(StringSE username, StringSE password) この実装は、ターゲット ConnectionFactory のcreateConnection(username, password)
メソッドに委譲し、指定されたユーザー資格情報を渡します。protected JMSContextEE
doCreateContext
(StringSE username, StringSE password) protected JMSContextEE
doCreateContext
(StringSE username, StringSE password, int sessionMode) protected QueueConnectionEE
doCreateQueueConnection
(StringSE username, StringSE password) この実装は、ターゲット QueueConnectionFactory のcreateQueueConnection(username, password)
メソッドに委譲し、指定されたユーザー資格情報を渡します。protected TopicConnectionEE
doCreateTopicConnection
(StringSE username, StringSE password) この実装は、ターゲット TopicConnectionFactory のcreateTopicConnection(username, password)
メソッドに委譲し、指定されたユーザー資格情報を渡します。void
現在のスレッドからこのプロキシのユーザー資格情報を削除します。void
setCredentialsForCurrentThread
(StringSE username, StringSE password) このプロキシと現在のスレッドのユーザー資格情報を設定します。void
setPassword
(StringSE password) このアダプターが接続の取得に使用するパスワードを設定します。void
setTargetConnectionFactory
(ConnectionFactoryEE targetConnectionFactory) この ConnectionFactory が委譲するターゲット ConnectionFactory を設定します。void
setUsername
(StringSE username) このアダプターが接続の取得に使用するユーザー名を設定します。
コンストラクターの詳細
UserCredentialsConnectionFactoryAdapter
public UserCredentialsConnectionFactoryAdapter()
メソッドの詳細
setTargetConnectionFactory
この ConnectionFactory が委譲するターゲット ConnectionFactory を設定します。setUsername
このアダプターが接続の取得に使用するユーザー名を設定します。デフォルトは特定のユーザーなしです。setPassword
このアダプターが接続の取得に使用するパスワードを設定します。デフォルトは特定のパスワードなしです。afterPropertiesSet
public void afterPropertiesSet()インターフェースからコピーされた説明:InitializingBean
すべての Bean プロパティを設定し、BeanFactoryAware
、ApplicationContextAware
などを満たした後、包含BeanFactory
によって呼び出されます。このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。
- 次で指定:
- インターフェース
InitializingBean
のafterPropertiesSet
setCredentialsForCurrentThread
このプロキシと現在のスレッドのユーザー資格情報を設定します。指定されたユーザー名とパスワードは、この ConnectionFactory プロキシでの後続のすべてのcreateConnection()
呼び出しに適用されます。これにより、静的に指定されたユーザー資格情報、つまり "username" および "password" Bean プロパティの値が上書きされます。
- パラメーター:
username
- 適用するユーザー名password
- 適用するパスワード- 関連事項:
removeCredentialsFromCurrentThread
public void removeCredentialsFromCurrentThread()現在のスレッドからこのプロキシのユーザー資格情報を削除します。静的に指定されたユーザー資格情報は、その後再び適用されます。createConnection
現在スレッドにバインドされた資格情報があるかどうかを確認し、可能な場合はそれらを使用して、静的に指定されたユーザー名とパスワード(つまり、Bean プロパティの値)にフォールバックします。- 次で指定:
- インターフェース
ConnectionFactoryEE
のcreateConnectionEE
- 例外:
JMSExceptionEE
- 関連事項:
createConnection
呼び出しをターゲット ConnectionFactory に直接委譲します。- 次で指定:
- インターフェース
ConnectionFactoryEE
のcreateConnectionEE
- 例外:
JMSExceptionEE
doCreateConnection
protected ConnectionEE doCreateConnection(@Nullable StringSE username, @Nullable StringSE password) throws JMSExceptionEE この実装は、ターゲット ConnectionFactory のcreateConnection(username, password)
メソッドに委譲し、指定されたユーザー資格情報を渡します。指定されたユーザー名が空の場合、ターゲット ConnectionFactory の標準createConnection()
メソッドに委譲するだけです。- パラメーター:
username
- 使用するユーザー名password
- 使用するパスワード- 戻り値:
- 接続
- 例外:
JMSExceptionEE
- 関連事項:
createQueueConnection
現在スレッドにバインドされた資格情報があるかどうかを確認し、可能な場合はそれらを使用して、静的に指定されたユーザー名とパスワード(つまり、Bean プロパティの値)にフォールバックします。createQueueConnection
public QueueConnectionEE createQueueConnection(StringSE username, StringSE password) throws JMSExceptionEE 呼び出しをターゲット QueueConnectionFactory に直接委譲します。- 次で指定:
- インターフェース
QueueConnectionFactoryEE
のcreateQueueConnectionEE
- 例外:
JMSExceptionEE
doCreateQueueConnection
protected QueueConnectionEE doCreateQueueConnection(@Nullable StringSE username, @Nullable StringSE password) throws JMSExceptionEE この実装は、ターゲット QueueConnectionFactory のcreateQueueConnection(username, password)
メソッドに委譲し、指定されたユーザー資格情報を渡します。指定されたユーザー名が空の場合、ターゲット ConnectionFactory の標準createQueueConnection()
メソッドに委譲するだけです。- パラメーター:
username
- 使用するユーザー名password
- 使用するパスワード- 戻り値:
- 接続
- 例外:
JMSExceptionEE
- 関連事項:
createTopicConnection
現在スレッドにバインドされた資格情報があるかどうかを確認し、可能な場合はそれらを使用して、静的に指定されたユーザー名とパスワード(つまり、Bean プロパティの値)にフォールバックします。createTopicConnection
public TopicConnectionEE createTopicConnection(StringSE username, StringSE password) throws JMSExceptionEE 呼び出しをターゲット TopicConnectionFactory に直接委譲します。- 次で指定:
- インターフェース
TopicConnectionFactoryEE
のcreateTopicConnectionEE
- 例外:
JMSExceptionEE
doCreateTopicConnection
protected TopicConnectionEE doCreateTopicConnection(@Nullable StringSE username, @Nullable StringSE password) throws JMSExceptionEE この実装は、ターゲット TopicConnectionFactory のcreateTopicConnection(username, password)
メソッドに委譲し、指定されたユーザー資格情報を渡します。指定されたユーザー名が空の場合、ターゲット ConnectionFactory の標準createTopicConnection()
メソッドに委譲するだけです。- パラメーター:
username
- 使用するユーザー名password
- 使用するパスワード- 戻り値:
- 接続
- 例外:
JMSExceptionEE
- 関連事項:
createContext
- 次で指定:
- インターフェース
ConnectionFactoryEE
のcreateContextEE
doCreateContext
createContext
- 次で指定:
- インターフェース
ConnectionFactoryEE
のcreateContextEE
createContext
- 次で指定:
- インターフェース
ConnectionFactoryEE
のcreateContextEE
createContext
- 次で指定:
- インターフェース
ConnectionFactoryEE
のcreateContextEE
doCreateContext
protected JMSContextEE doCreateContext(@Nullable StringSE username, @Nullable StringSE password, int sessionMode)