是否有可能在jboss中以編程方式創建數據源並且仍然有實體管理器使用的有效jndi條目?爲JBoss 4.2.x編程創建數據源
創建數據源是我丟失的地方,我希望我可以使用一個在stat-up上運行的MBean來處理這個問題。
這不是我的首選方法,但我正在使用的應用程序有一個全局配置文件託管在另一臺服務器上,我想用於配置。
更新:在這種情況下,我需要編程創建一個數據源或更改現有數據源的jdbc url。直到運行時,我才知道數據庫服務器的url。
是否有可能在jboss中以編程方式創建數據源並且仍然有實體管理器使用的有效jndi條目?爲JBoss 4.2.x編程創建數據源
創建數據源是我丟失的地方,我希望我可以使用一個在stat-up上運行的MBean來處理這個問題。
這不是我的首選方法,但我正在使用的應用程序有一個全局配置文件託管在另一臺服務器上,我想用於配置。
更新:在這種情況下,我需要編程創建一個數據源或更改現有數據源的jdbc url。直到運行時,我才知道數據庫服務器的url。
Here's這篇文章描述瞭如何創建一個jboss服務檔案(SAR),您可以將它放入您的EAR中,以在部署EAR時部署數據源,並在解除部署EAR時將其刪除。
爲了做到這一點,我建議使用第三方連接池實用程序,比如Apache Commons DBCP,而不是在JBoss的內核中尋找答案。有關於如何在JNDI here上以編程方式註冊DBCP數據源的說明。
示例代碼的前兩行應該是不必要的,只需按照所述創建默認的InitialContext
然後rebind
數據源引用即可。