不知道你用的是不是WEB 服务器的连接池? 也不知道你的具体问题是什么,所以只给你一个提示吧.
你的问题是你的JNDI 的名字无效的,如果你用的TOMCAT 的那你的HIBERNATE的配置应该是 "java:/comp/env/YOURJNID", 如果是WEBLOGIC 或是 JBOSS , WEBSPHERE 等应用服务器不需要加"java:/comp/env"前缀,直接写YOURJNID名字就可以了.
你的问题是你的JNDI 的名字无效的,如果你用的TOMCAT 的那你的HIBERNATE的配置应该是 "java:/comp/env/YOURJNID", 如果是WEBLOGIC 或是 JBOSS , WEBSPHERE 等应用服务器不需要加"java:/comp/env"前缀,直接写YOURJNID名字就可以了.
解决方案 »
- 求助:关于在oracle中使用hibernate SQLQuery进行distinct分页的问题
- 在Linux下启动Tomcat端口被占,换端口一样被占,什么原因啊?
- j2ee和web程序有什么区别?
- 数据库和网页上的字符编码不一致会引起什么问题?
- 在resin或tomcat的配置文件中,怎么让在IE地址栏内不需要端口号,直接访问某个页面?
- 事务方式内无法捕获异常
- 请教?在tomcat admin中配置的datasource存放在什么文件中.
- 怎样在jsp页面中区分显示器的分辨率是多少呢?????在线等你。。。。。!!!
- 连接webservice报异常
- 网站首页js文件有冲突谁能解决一下啊。
- 关于struts配置的问题
- Apache整合Tomcat,在Apache下找不到*.html网页的错误!
不同的服务,配置的方法不一样...
这是 Sun 默认的 JNDI SPI 初始化的。不同的服务器提供不同的 SPI 工厂类,也就是 java.naming.factory.initial 的值 。
然后结合 javax.naming.Context 中的一些常量, 比较一下。package com.sun.naming.internal;
public final class ResourceManager { /*
* Name of provider resource files (without the package-name prefix.)
*/
private static final String PROVIDER_RESOURCE_FILE_NAME =
"jndiprovider.properties"; /*
* Name of application resource files.
*/
private static final String APP_RESOURCE_FILE_NAME = "jndi.properties"; /*
* Name of properties file in <java.home>/lib.
*/
private static final String JRELIB_PROPERTY_FILE_NAME = "jndi.properties";
}
在 classes/放置一个 jndi.properties 文件,
里面写着
java.naming.factory.initial = 这里应该是你的应用服务器具体使用的 工厂名。如果我使用OpenLDAP 它就是com.sun.jndi.ldap.LdapCtxFactory .java.naming.provider.url = 你服务器 JNDI 地址及端口. 如 : ldap://localhost:369 不同实现可以不一样。java.naming.security.authentication = simple / none / xx/yy 认证方式 , none 是匿名. simple 是简单用户名、密码不加密java.naming.security.principal = 用户名。java.naming.security.credentials = 密码( 或证书当你使用其它认证方式时)这些条目 都从 javax.naming. Context. 中拷贝的, 自己看看 javax.naming.Context 类文档。
PROVIDER_RESOURCE_FILE_NAME = "jndiprovider.properties";
APP_RESOURCE_FILE_NAME = "jndi.properties";
JRELIB_PROPERTY_FILE_NAME = "jndi.properties";有些是从 /META-INF/ 或者 /META-INF/services/ 目录读, 这也是 jar 比 zip 格式新增的东西,Jar 类提供读取功能。
从它们常量名能看出这些文件应该位于 JRE/lib 还是应用程序的 classpath 中。