问题标签 [jndi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
232 浏览

design-patterns - 在实现 EJBHomeFactory 模式时是否需要同步映射?

当您想从客户端调用 an时,首先您需要通过 JNDI 查找EJBBean来获取对象引用。EJBHome每次您需要使用此代码时都需要执行此代码,EJBBean这样会变得多余且昂贵。

要解决此问题,您可以缓存EJBHome对象引用并从缓存中一次又一次地重用它们,而无需重复 JNDI 查找。

这是EJBHomeFactory Pattern(或更通用的服务定位器模式)。

我见过的大多数实现都使用同步Map作为缓存,或者Hashtable. 如果缓存是在应用程序部署在服务器上时构建的,并且之后没有对缓存进行任何修改(仅执行 get() 方法),我真的需要同步MapHashMap意志吗?

我知道HashMap如果至少有一个线程修改了地图是不安全的(这里甚至有一个 SO 帖子,但在这种情况下线程只执行读取。

那么,在HashMap中使用安全EJBHomeFactory Pattern吗?

0 投票
4 回答
36660 浏览

java - 为什么我对 QueueConnectionFactory 的 JNDI 查找返回 null?

我正在尝试通过 Geronimo 的 JNDI查找QueueConnectionFactory和查找。Queue得到很好的Queue返回,但QueueConnectionFactory查找总是返回 null。它不会抛出NamingException,如果 JNDI 名称不正确,这是我所期望的。

谁能看到我做错了什么?下面的测试代码输出:

如果它有所作为:我已将 openejb-client-3.0.1.jar、geronimo-ejb_3.0_spec-1.0.1.jar 和 activemq-core-4.1.2-G20090207.jar 添加到我的类路径中,并且我的 jndi.properties 文件具有以下属性:

0 投票
4 回答
3717 浏览

java - Tomcat JDBC 连接池是否在实例之间共享?

我们现在有一个 Web 应用程序,我们为每个客户端部署一个副本。我们当前的部署策略是为每个实例创建一个唯一命名的 jdbc 连接池。所以说jdbc/client。它们是这样指定的......

问题是,如果我要对其进行标准化,以便在所有部署的实例上将连接池称为 jdbc/database 而不是唯一名称,是否存在数据库交叉的机会,即另一个客户的数据库中的一个客户,或者这些本地化到一个特定的部署实例?

想法?谢谢,斯科特

0 投票
1 回答
3816 浏览

java - 从 Spring 应用程序上下文中解析 JNDI 查找?

在我们的 Spring 应用程序中,我们使用带有 ActiveMQ 的集群 Hibernate Search,它通过 JNDI 设置一些对象。这些对象是通过 Spring 应用程序上下文配置的,我正在寻找一种方法来解决对这些对象的 JNDI 调用。

我只能找到来自 Spring 上下文的 JNDI 查找。

我们需要它的另一种方式:从 Spring 应用程序上下文中解析 JNDI 查找。

任何指针表示赞赏。

0 投票
1 回答
2366 浏览

java - 为什么在 InitialContext 上调用 close() 会破坏所有未来查找的 JNDI(Glassfish)?

以下代码中的第二个 JNDI 查找在作为针对 Glassfish 的独立应用程序(已配置为通过 JNDI公开 aQueueConnectionFactory和 a )运行时失败并出现异常。DataSource但是,删除该行后代码可以正常工作jndiContext.close()

在实际代码中,调用close()是由 Spring 在 a 中进行的JndiObjectFactoryBean,所以我不能轻易删除它。

这是 Glassfish 中的错误,还是我做错了什么(例如配置错误或编码不正确)?

0 投票
1 回答
1972 浏览

java - 我可以使用 ObjectChangeListener 来监听任何对象的变化吗?

我有一个Integer叫 x;如果它发生变化,那么我想在 GUI 中更新我的表。听“x”我试过

我实施javax.naming.event.ObjectChangeListener

我重写了objectChanged更新表的方法。没啥事儿

如果我更改“x”,那么我的表中没有任何变化。我做错了什么?

第二个问题是,x 只能按值调用。我只能从我的数据库或我的属性文件中访问 x。当数据库发生变化时,即使监听器监听,x 也无法理解它是否发生变化。我所做的就是听 y 等于 x。当 x 更改时,y 不明白,因为 x 没有被引用调用。我能做些什么?

0 投票
4 回答
73947 浏览

java - JNDI的目的是什么

您如何实现 JNDI 的使用,如果可能的话,举个例子?

0 投票
1 回答
807 浏览

java - Apache Tomcat:添加/删除/编辑 JNDI 资源

Tomcat(版本 6)中是否有添加/删除/编辑 JNDI 资源的工具?如果可能,我将如何更新 JDBC 数据源(例如)?请注意,我正在寻找一种在重新部署应用程序的情况下更新 JNDI 资源的可能性。显然 Glassfish 让你这样做,不幸的是,使用另一个应用程序服务器目前不是我的选择。

0 投票
2 回答
2630 浏览

websphere - 两个 WAS 配置文件共享同一台机器时的 JNDI 查找

我的机器中有两个配置文件,在一个配置文件中我部署了一个 EJB,可以从另一个配置文件中的 POJO 中查找该 EJB。但是我从中进行查找的配置文件最终会在其自己的节点中进行查找。如果我将这两个应用程序部署在两台不同的机器上,我可以执行查找。有人告诉我在 WAS 中创建虚拟机名称会有所帮助,但我不知道如何使用它。有人可以帮助我如何解决这个问题吗?

谢谢,

克什蒂·古普塔

0 投票
1 回答
7733 浏览

java - GWT 1.7 - 在 Jetty 中配置数据源(托管模式)

我是 GWT (1.7) 的新手,并试图从 servlet 建立到我的 MySQL 数据库的连接。因为我遇到了一些错误,所以我搜索了它们并发现,我必须在 Jetty 中配置一个 DataSource 才能让它在托管模式下工作。我遵循了本教程: 教程

我按照描述创建了自己的 JettyLauncher 类,并将相应的参数添加到 Run 配置中。之后,我将此条目添加到我的 WEB-INF/web.xml 中:

之后,我使用以下内容创建了 jetty-env.xml:

当我现在尝试在 Eclipse 中启动应用程序(Galileo,使用 GWT 插件)时,我收到以下错误:

我使用 jetty-naming-6.1.11.jar 和 jetty-plus-6.1.11.jar。两者都在 WEB-INF/lib 目录中。我已经尝试了两个库的更新版本,结果相同。

谁能告诉我,我哪里出错了?