开发者社区> 问答> 正文

Tomcat下无法访问数据池:Name [java:comp/env/jdbc/bbs] is not bound in this Context问题

软件环境:Tomcat7.0 Myelipse 10.x

最近在学jsp,想通过数据池获取数据,但我把tomcat下的context.xml和web项目下的web.xml都配置好后,我在jsp页面下测试访问数据池成功,但我自己在工程包内写了一个数据池连接类:DBHelper.class测试数据池连接居然报错:
`javax.naming.NameNotFoundException: Name [java:comp/env/jdbc/bbs] is not bound in this Context. Unable to find [java:comp].
at org.apache.naming.NamingContext.lookup(NamingContext.java:820)
at org.apache.naming.NamingContext.lookup(NamingContext.java:168)
at javax.naming.InitialContext.lookup(InitialContext.java:392)
at test.test.main(test.java:27)`
我在网上找遍了相关问题都解决不了,种种方法也试过,但就是出现这种问题
DBHepler.class代码如下:

package test;

import java.util.Hashtable;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
import org.apache.naming.java.javaURLContextFactory;
public class test {

 /**
  * @param args
  * @throws NamingException 
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  InitialContext ctx;
  Hashtable hashTab = new Hashtable();
  try {
        hashTab.put("java.naming.factory.initial","org.apache.naming.java.javaURLContextFactory");
        hashTab.put(Context.PROVIDER_URL,"iiop://localhost:7070");
   ctx = new InitialContext(hashTab);
   DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/bbs");
  } catch (NamingException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }

 }

}

这个问题已经困扰我很久了,一直解决不了,大家来帮帮忙,感激不尽啊~

展开
收起
落地花开啦 2016-03-25 18:23:32 4203 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载