锁定老帖子 主题:项目发布到服务器上的问题,本地测试功过。
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-01-25
sessionfactory 配置如下:
package connection; import org.hibernate.HibernateException; import org.hibernate.Session; import org.hibernate.cfg.Configuration; public class HibConnection { // private static Logger logger=null; /** * Location of hibernate.cfg.xml file. * NOTICE: Location should be on the classpath as Hibernate uses * #resourceAsStream style lookup for its configuration file. That * is place the config file in a Java package - the default location * is the default Java package.<br><br> * Examples: <br> * <code>CONFIG_FILE_LOCATION = "/hibernate.conf.xml". * CONFIG_FILE_LOCATION = "/com/foo/bar/myhiberstuff.conf.xml".</code> */ private static String CONFIG_FILE_LOCATION = "/hibernate.cfg.xml"; /** Holds a single instance of Session */ private static final ThreadLocal<Session> threadLocal = new ThreadLocal<Session>(); /** The single instance of hibernate configuration */ private static final Configuration cfg = new Configuration(); /** The single instance of hibernate SessionFactory */ private static org.hibernate.SessionFactory sessionFactory; /** * Returns the ThreadLocal Session instance. Lazy initialize * the <code>SessionFactory</code> if needed. * * @return Session * @throws HibernateException */ public static Session currentSession() throws HibernateException { Session session = (Session) threadLocal.get(); // System.out.println("sssssss"); if (session == null) { if (sessionFactory == null) { try { // System.out.println("sssssss1"); cfg.configure(CONFIG_FILE_LOCATION); // System.out.println("sssssss2"); sessionFactory = cfg.buildSessionFactory(); } catch (Exception e) { System.err.println("%%%% Error Creating SessionFactory %%%%"); e.getMessage(); e.printStackTrace(); } } session = sessionFactory.openSession(); threadLocal.set(session); } return session; } /** * Close the single hibernate session instance. * * @throws HibernateException */ public static void closeSession() throws HibernateException { Session session = (Session) threadLocal.get(); threadLocal.set(null); if (session != null) { session.close(); } } /** * Default constructor. */ private HibConnection() { } } |
|
返回顶楼 | |
发表时间:2007-01-25
抛出异常的爱 写道 找份好用的对一对
我用过的c3po都是放在另一个文件中的 看着清楚你也可以试试 能发一份过来看看吗? sessionfactory代码我已经贴出。 |
|
返回顶楼 | |
发表时间:2007-01-25
<!-- connection pool-->
<!-- <property name="connection.pool_size">10</property>--> MS没设池的最大连接数 |
|
返回顶楼 | |
发表时间:2007-01-25
抛出异常的爱 写道 <!-- connection pool-->
<!-- <property name="connection.pool_size">10</property>--> MS没设池的最大连接数 怎么这个有问题吗?我注释掉了,感觉是hibernate 连接池 与 tomcat连接池的问题。不知道如何解决? 但是我在本地测试的时候的配置也是这样。难道是这个问题吗?需要配置,还是不要配置呢〉 |
|
返回顶楼 | |
发表时间:2007-01-25
从错误看,应该和具体配置项的内容没有关系。
是XML文档本身格式有问题。 你可以用相关的Validater验证一下 |
|
返回顶楼 | |
发表时间:2007-01-25
页面报出的错误如下:
java.lang.NullPointerException connection.HibConnection.currentSession(HibConnection.java:56) bean.ProductBean.getProductListByMainType(ProductBean.java:1207) blog.bean.IndexBean.<init>(IndexBean.java:48) blog.servlet.BlogIndexServlet.doGet(BlogIndexServlet.java:34) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) |
|
返回顶楼 | |
发表时间:2007-01-25
配置hibernate.properties时指定连接池就好,不过记得加上相应的jar.
hibernate.dialect=org.hibernate.dialect.MySQLDialect hibernate.connection.driver_class=com.mysql.jdbc.Driver hibernate.connection.url=jdbc:mysql://localhost:3306/ADD hibernate.connection.username=ADDRESSBOOK hibernate.connection.password=6696397 hibernate.show_sql=true hibernate.c3p0.max_size=2 hibernate.c3p0.min_size=2 hibernate.c3p0.timeout=5000 hibernate.c3p0.max_statements=100 hibernate.c3p0.idle_test_period=3000 hibernate.c3p0.acquire_increment=2 hibernate.c3p0.validate=false 我记的不是配在hibernate里么。。。 配在里面太乱了。 山里有鬼 写道 从错误看,应该和具体配置项的内容没有关系。
是XML文档本身格式有问题。 你可以用相关的Validater验证一下 你的机器自动生成了一个hibernate.cnf.xml(1) 并且里面没有内容所以会出这个错误。 |
|
返回顶楼 | |
发表时间:2007-01-25
山里有鬼 写道 从错误看,应该和具体配置项的内容没有关系。
是XML文档本身格式有问题。 你可以用相关的Validater验证一下 谢谢您的回复: 我是用myeclipse5.0GA 本身自带的验证没有出错。阿? 这个我本地为什么可以 出来呢? |
|
返回顶楼 | |
发表时间:2007-01-25
java_zhanghui 写道 log4 日志如下: [INFO ] 2007-01-25 09:55:22,062 method:org.hibernate.cfg.Environment.<clinit>(Environment.java:479) Hibernate 3.1.3 [INFO ] 2007-01-25 09:55:22,093 method:org.hibernate.cfg.Environment.<clinit>(Environment.java:509) hibernate.properties not found 对hibernate不熟悉,不过根据你的日志可以分析,Environment类初始化的时候找不到hibernate.properties文件。 你自己看看是不是因为这个错误引起的。 |
|
返回顶楼 | |
发表时间:2007-01-25
抛出异常的爱 写道 配置hibernate.properties时指定连接池就好,不过记得加上相应的jar.
hibernate.dialect=org.hibernate.dialect.MySQLDialect hibernate.connection.driver_class=com.mysql.jdbc.Driver hibernate.connection.url=jdbc:mysql://localhost:3306/ADD hibernate.connection.username=ADDRESSBOOK hibernate.connection.password=6696397 hibernate.show_sql=true hibernate.c3p0.max_size=2 hibernate.c3p0.min_size=2 hibernate.c3p0.timeout=5000 hibernate.c3p0.max_statements=100 hibernate.c3p0.idle_test_period=3000 hibernate.c3p0.acquire_increment=2 hibernate.c3p0.validate=false 我记的不是配在hibernate里么。。。 配在里面太乱了。 山里有鬼 写道 从错误看,应该和具体配置项的内容没有关系。
是XML文档本身格式有问题。 你可以用相关的Validater验证一下 你的机器自动生成了一个hibernate.cnf.xml(1) 并且里面没有内容所以会出这个错误。 就这样配置一下就可以了吗? |
|
返回顶楼 | |