クラス UserCredentialsConnectionFactoryAdapter

java.lang.ObjectSE
org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter
実装されたすべてのインターフェース:
ConnectionFactoryEEQueueConnectionFactoryEETopicConnectionFactoryEEInitializingBean

public class UserCredentialsConnectionFactoryAdapter extends ObjectSE implements ConnectionFactoryEE, QueueConnectionFactoryEE, TopicConnectionFactoryEE, InitializingBean
ターゲット JMS ConnectionFactoryEE 用のアダプター。指定されたユーザー資格情報を、認証にも使用できるすべての標準メソッド(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
関連事項: