如何从运行在 WebSphere 应用程序服务器 v7 上的 Web 应用程序通过 JMS 连接到 Web 方法?
Posted
技术标签:
【中文标题】如何从运行在 WebSphere 应用程序服务器 v7 上的 Web 应用程序通过 JMS 连接到 Web 方法?【英文标题】:how to connect to webmethods over JMS from a web application running on WebSphere application server v7? 【发布时间】:2013-10-01 22:30:07 【问题描述】:如何从运行在 64 位 WebSphere 应用程序服务器 v7.0.0.23 上的 Web 应用程序通过 JMS 连接到 Web 方法?
我有一个标准的基于 Spring 的 Web 应用程序,它部署在 websphere 7 应用程序服务器上。我需要从此应用程序连接到 SoftwareAG WebMethods JMS Provider。
我尝试使用spring jndi查找在webmethods的远程JNDI服务器中配置的connectionFactory。
使用 NPE 初始化 initialContext 失败。我尝试在 websphere 管理控制台中的资源下创建自定义 JMS 提供程序,该资源将 Webmethods 的外部 JNDI 资源映射到本地可用的 JNDI 资源。然后我使用spring jndi从websphere的本地JNDI中查找connectionFactory。
NoClassDefFoundError 失败:javax.jms.ConnectionFactory之前有没有人成功集成过 websphere 和 webmethods ?请分享经验以及如何开始?
【问题讨论】:
你好。你找到解决方案了吗?如果是,请与我分享。 【参考方案1】:您好,我已经通过在 WebSphere 中设置队列并以这种方式在 Java 中外部连接到它:
`Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory");
env.put(Context.PROVIDER_URL, "iiop://localhost:2809");
Context jndiContext = null;
try
jndiContext = new InitialContext(env);
catch (NamingException e) ....`
WebMethods 已使用我在 env HashTable 中指定的相同属性连接到相同的队列
【讨论】:
【参考方案2】:另一种解决方案是在 webMethods 中公开一个 Web 服务,并让您的 Spring 应用程序调用该 Web 服务。
然后,您可以将 webMethods Web 服务处理程序发布到 webMethods 代理,以便触发您需要的任何内容。
【讨论】:
以上是关于如何从运行在 WebSphere 应用程序服务器 v7 上的 Web 应用程序通过 JMS 连接到 Web 方法?的主要内容,如果未能解决你的问题,请参考以下文章
如何从 WebSphere Liberty Maven 插件部署到 WebSphere Liberty 应用程序目录?
如何计划从 WebSphere 迁移到更便宜的应用程序服务器,如 JBoss、Tomcat 或 Payara
当配置文件本身不在 WebSphere 文件夹中时,如何从 eclipse 引用 WebSphere 服务器?