2016-04-20 15 views
0

WebsphereMQに接続しようとしています。JMSを使用しています。WebsphereMQへのJMS接続

以下の構成が定義されている:

properties.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory"); 
properties.put(Context.URL_PKG_PREFIXES, "com.ibm.ws.naming"); 
properties.put(Context.PROVIDER_URL, "iiop://localhost:2809"); 
properties.put(Context.SECURITY_PRINCIPAL, "user") 
properties.put(Context.SECURITY_CREDENTIALS, "password") 

次の依存関係がMavenのPOMファイルに含まれています。

<dependency> 
    <groupId>com.ibm</groupId> 
    <artifactId>com.ibm.mqjms</artifactId> 
    <version>7.0.1.4</version> 
</dependency> 
<dependency> 
    <groupId>com.ibm</groupId> 
    <artifactId>com.ibm.mq.jmqi</artifactId> 
    <version>7.0.1.4</version> 
</dependency> 
<dependency> 
    <groupId>com.ibm</groupId> 
    <artifactId>com.ibm.dhbcore</artifactId> 
    <version>7.0</version> 
</dependency> 

<dependency> 
    <groupId>com.ibm.mq</groupId> 
    <artifactId>com.ibm.mq.jar</artifactId> 
    <version>7.0.1.4</version> 
    <scope>runtime</scope> 
</dependency> 

コンテキスト(new InitialContext(properties))をインスタンス化しようとすると、次の例外がスローされます:

javax.naming.NoInitialContextException: Cannot instantiate class: com.ibm.websphere.naming.WsnInitialContextFactory [Root exception is java.lang.ClassNotFoundException: com.ibm.websphere.naming.WsnInitialContextFactory] 
    at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:674) 
    at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:307) 
    at javax.naming.InitialContext.init(InitialContext.java:242) 
    at javax.naming.InitialContext.<init>(InitialContext.java:216) 

何が欠けていますか?

おかげ

答えて

1

ない私は座標がレポ具体的になり、これらのライブラリは、任意のパブリックリポジトリであるとは思いませんが、this postによると、必要なjarファイルがあるので、Mavenの座標は、何であるかを確認します。

  • wssec.jar
  • naming.jar
  • namingclient.jar
  • lmproxy.jar
  • sas.jar
  • ecutils.jar
+0

おかげで、しかし、その投稿は12歳です。誰かが依存関係を知っていますか? – user1052610

0

ニコラス答えは正しいです。 (これをコメントからフォーマットするためにコメントに移動する)

IBMはJARファイルをMavenリポジトリに配布しません。組織内の誰かが手動で展開しました(これは一般的な方法です)。

次のいずれか:

  1. は、手動でリポジトリにMQのjarファイルを展開する必要がある組織の内部のMavenリポジトリにあなたのMavenののsettings.xmlまたはプロジェクトのpom.xmlを指していません。

    MVNの配備:配備ファイル-DgroupId = com.ibm.mq -DartifactId = MQJMS -Dversion = 7.5.0.2 -Dfile = mqjms.jar

参照:https://maven.apache.org/guides/mini/guide-3rd-party-jars-remote.html

+0

しかし、com.ibm.mqjmsを依存関係として追加しました(更新された質問を参照)。 – user1052610

+0

あなたはmqjms.jarだけのナットが必要です –

関連する問題