jboss7 jndi mysql_JBoss 7.1上的GateIn portlet中的JNDI数据源

宿镜
2023-12-01

我试图在我在JBoss 7.1的GateIn 3.2.0中部署的portlet中获取数据源。

首先,我在standalone.xml中创建了数据源

jdbc:mysql://localhost:42006/contentrepository

com.mysql

node

100

true

我还添加了驱动程序和驱动程序模块。

在我的portlet中,我试图使用访问数据源

dataSource = (DataSource) new InitialContext().lookup("java:jboss/datasources/ccr");但我只得到一个javax.naming.NameNotFoundException:在上下文中找不到'jboss'。

我也试着去拿它

dataSource = (DataSource) new InitialContext().lookup("java:comp/env/datasources/ccr");并将其与web.xml和jboss-web.xml中的以下条目进行映射

web.xml中:

MySQL DS

datasources/ccr

javax.sql.DataSource

Container

的jboss-web.xml中:

datasources/ccr

javax.sql.DataSource

java:jboss/datasources/ccr

那么我得到了javax.naming.NameNotFoundException:在上下文''中找不到名称'comp'。

我错过了什么?是否有一些安全设置阻止我的应用程序获取数据源?

奇怪的是,我可以在使用servlet时在相同的web应用中获取数据源,但只能在doGet / doPost方法中获取数据源,而不能在init()中获取。

 类似资料: