以编程方式为JBoss 4.2.x创建数据源

是否有可能在jboss中以编程方式创建数据源,并且仍然有一个有效的jndi条目供实体管理器使用?

创建数据源是我迷失的地方,我希望我可以使用在stat-up上运行的MBean来处理这个问题。

这不是我首选的方法,但我正在处理的应用程序有一个全局配置文件托管在我想用于配置的另一台服务器上。

更新:在这个实例中,我需要以编程方式创建数据源或更改现有数据源的jdbc url。 直到运行时我才知道数据库服务器的URL。

为了做到这一点,我建议使用第三方连接池实用程序,例如Apache Commons DBCP ,而不是在JBoss的内容中徘徊。 这里有关于如何以编程方式在JNDI上注册DBCP数据源的说明。

示例代码的前两行应该是不必要的,只需创建默认的InitialContext ,然后按照描述将数据源引用rebind到它中。

这篇文章描述了如何创建一个jboss服务存档(SAR),您可以将其放入EAR中,在部署EAR时部署数据源,并在取消部署EAR时将其删除。