日期:2014-05-20  浏览次数:20818 次

又是100分求助,JNDI
现在我如果在JSP中直接连接数据库或import连接类可以正常连接,但单纯用类测试就不行··(javax.naming.NoInitialContextException:   Need   to   specify   class   name   in   environment   or   system   property)

我知道测试类中的代码   java:comp/env   是由tomcat提供的,代码必须在tomcat中运行。。那该怎样配置Context的属性呢?

这是一个JNDI有关得问题  

如果服务器是weblogic得话(可能是网络中得其它计算机,但weblogic必须启动)
用下面代码也可以访问该JNDI资源
Hashtable   env   =   new   Hashtable();
env.put   (Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory ");
env.put(Context.PROVIDER_URL,   "t3://192.168.100.1:80 ");
//env.put(Context.SECURITY_PRINCIPAL,   "weblogic ");
//env.put(Context.SECURITY_CREDENTIALS,   "weblogic ");
Context   ctx   =   new   InitialContext(env);

每种服务器的访问方法不一样
主要是Context.INITIAL_CONTEXT_FACTORY得值不一样
还有Context.PROVIDER_URL得写法格式不一样

jboss、resin、webspere得网上都有
不过tomcat得写法没有查到。。。大人知道TOMcAT该怎么写么?

------解决方案--------------------
你直接在tomcat里面打印出这两个属性看看
------解决方案--------------------
你的配置有问题!

------解决方案--------------------
同意楼上
------解决方案--------------------
帮你顶!!楼下继续
------解决方案--------------------
继续顶
------解决方案--------------------
继续顶

------解决方案--------------------
环境的问题 你丢一段代码上来是没用的
------解决方案--------------------
继续顶