繁体   English   中英

jboss和音速mq播放不好

[英]jboss and sonic mq not playing nice

这就是我今天一直在反对的一天。
我有一个旧版本的jboss(jboss4),从中我启动了一些代码以出去并连接到我作为客户端运行的sonic mq(7.6,我认为)的实现。 我正在运行Java 1.6.0_23。 话虽如此,我看到了我似乎无法弄清的非常奇怪的行为。

当我的过程开始时,我会加载建立与音波mq服务器的连接所需的所有jndi道具,然后像这样调用

Context ic = new InitialContext(jndiEnv);

但是,那时我的丝鲨没有任何交通,这让我感到困惑。 最终,这会超时给我例外

javax.naming.NamingException.  Root exception is com.sonicsw.mf.comm.ConnectTimeoutException: Timeout occured while attempting to connect

真正的麻烦在于,我是从同一台服务器上的独立jar(而不是从jboss内部)运行我的进程的,并且连接正常吗?

嘿,遇到这个问题的任何人...所以我解决了我的问题,以为我会分享...

事实证明,即使是音速技术团队也说过,他们的代码从不看jvm变量javax.ssl.keystore ...确实如此...

像这样设置javax.ssl.keystore = C:something,这将导致初始上下文生成挂起直到超时。 但是,此javax.ssl.keystore = C:\\ something可以工作。 如果未设置,它将同样有效...

我本来希望会抛出某种异常:?

希望这对某人有所帮助! :)

谢谢J

两件事情:
您可以在JBoss服务器的类路径中检查所需的jar吗?
您是否正在设置Sonic MQ的域名属性,这是获取Sonic目录服务的初始上下文对象引用所必需的?

private Properties getConnectionEnv(String initialContextFactory,String providerURL, String domain, String userName, String password) {
  Properties connectionEnv = new Properties();
  if (initialContextFactory != null && initialContextFactory.length() != 0) {
    connectionEnv.put(Context.INITIAL_CONTEXT_FACTORY,initialContextFactory);
  }
  if (providerURL != null && providerURL.length() != 0)
    connectionEnv.put(Context.PROVIDER_URL, providerURL);
  if (domain != null && domain.length() != 0)
    connectionEnv.put("com.sonicsw.jndi.mfcontext.domain", domain); 
  if (userName != null && userName.length() != 0) {
    connectionEnv.put(Context.SECURITY_PRINCIPAL, userName);
    connectionEnv.put(Context.SECURITY_CREDENTIALS, password);
  }
  return connectionEnv;
}

希望这对您有所帮助。

GK

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM