type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception javax.servlet.ServletException
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
com.quotation.util.EncodingFilter.doFilter(EncodingFilter.java:28)
root cause java.lang.NullPointerException
com.quotation.daoimp.UserLoginDaoImp.findUser(UserLoginDaoImp.java:22)
com.quotation.serviceimp.UserLoginImp.findUser(UserLoginImp.java:18)
com.quotation.action.LoginAction.one(LoginAction.java:31)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
org.apache.struts.actions.MappingDispatchAction.execute(MappingDispatchAction.java:169)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
com.quotation.util.EncodingFilter.doFilter(EncodingFilter.java:28)
JAVA页面的代码
public class UserLoginDaoImp implements UserLoginDao {
List list=null;
public List findUser(String name, String password) {
Session session=HibernateSessionFactory.getSession();
Transaction tx=null;
String hql=null;
try {
hql="from User as a where a.YONGHU_YHMC='"+name+"' and a.YONGHU_YHMM='"+password+"'";
tx=session.beginTransaction();
list=session.createQuery(hql).list();
tx.commit();
return list;
} catch (HibernateException e) {
e.printStackTrace();
if(tx!=null) tx.rollback();
return null;
}finally{
HibernateSessionFactory.closeSession();
}
}貌似是Session session=HibernateSessionFactory.getSession();这一句出了问题session取不到值我是一个新手,这是别人写的代码,先还可以运行的,我也没有改代码,就调试了之后就不知道怎么回事不能运行了
谢谢那位大哥帮帮小弟吧,小弟在这跟你磕头了

解决方案 »

  1.   

    Session session=HibernateSessionFactory.getSession();
    就是这一句,session取不到值,是null
      

  2.   

    session为null,就说明没构造出来,你把配置文件放出来看看
      

  3.   

    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE hibernate-configuration PUBLIC
              "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
              "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><!-- Generated by MyEclipse Hibernate Tools.                   -->
    <hibernate-configuration><session-factory>
    <property name="connection.url">jdbc:odbc:;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=D:\\workspace\\quotation\\WebRoot\\data.mdb</property>
    <property name="myeclipse.connection.profile">Access</property>
    <property name="connection.driver_class">
    sun.jdbc.odbc.JdbcOdbcDriver
    </property>
    <property name="show_sql">true</property>
    <property name="dialect">
    com.hxtt.support.hibernate.HxttAccessDialect
    </property>
    <mapping resource="com/quotation/orm/User.hbm.xml" />
    <mapping resource="com/quotation/orm/Rate.hbm.xml" />
    <mapping resource="com/quotation/orm/Menu.hbm.xml" />
    <mapping resource="com/quotation/orm/BanLeiXing.hbm.xml" />
    <mapping resource="com/quotation/orm/PcbFJCS.hbm.xml" />
    <mapping resource="com/quotation/orm/PoolCS.hbm.xml" />
    <mapping resource="com/quotation/orm/InterzoneRate.hbm.xml" />
    <mapping resource="com/quotation/orm/UserQ.hbm.xml" />
    <mapping resource="com/quotation/orm/YunFei.hbm.xml" />
    <mapping resource="com/quotation/orm/CanShuLX.hbm.xml" />
    </session-factory></hibernate-configuration>
      

  4.   

    晕Access 啊,
    这东西
    你先换SQL方言试下:
    org.hibernate.dialect.SQLServerDialect 
    只能一步一步的排除错误
    你也在其他地方搜索下
    hibernate配置Access 
    我估计没多少人用过另外HibernateSessionFactory.getSession();
    调试看看这里面有问题没有
      

  5.   

    你url是什么?连接access的吗??
      

  6.   

    String hql=null;
    try {
    hql="from User as a where a.YONGHU_YHMC='"+name+"' and a.YONGHU_YHMM='"+password+"'";
    tx=session.beginTransaction();
    list=session.createQuery(hql).list();
    tx.commit();
    return list; 先声明,我不会hibernate啊。
    弱弱的问一句,hql可以没有 select * 放在语句的前面吗?
      

  7.   

    <?xml version='1.0' encoding='utf-8'?>
    <!DOCTYPE hibernate-configuration PUBLIC 
    "-//Hibernate/Hibernate Configuration DTD//EN"
    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
    <hibernate-configuration> <session-factory> <property name="hibernate.dialect">
    com.hxtt.support.hibernate.HxttAccessDialect
    </property>
    <property name="hibernate.connection.url">
    jdbc:access:///d:/test.mdb
    </property>
    <property name="hibernate.connection.driver_class">
    com.hxtt.sql.access.AccessDriver
    </property>
    <mapping
    resource="com/nantian/bean/user.hbm.xml" />
    </session-factory>
    </hibernate-configuration>
      

  8.   

    接上下Access_JDBC30.jar jar包试试
      

  9.   

    弱弱的问题,Access的那个路径只能写绝对路径吗?可以写相当路径吗?可以的话怎么写
      

  10.   

    type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. 服务器内部错误!
      

  11.   

    数据源应该没有错,负责工程部署的时候就会报错了。当你访问这个页面的时候出错的话,我大胆的猜测一下,是因为你这个模块用到的User这个类的hibernate映射文件没有放到数据源的配置里面去,或者是这个类的映射文件写的有问题。
      

  12.   

    1、导入两个ACCESS的数据包
    Access_JDBC30.jar和hibernate.jar
    2、连接access的hibernate.cfg.xml的写法:(注意源文件的地址写入)    <session-factory>
        <property name="hibernate.connection.username"></property>
            <property name="hibernate.connection.password"></property>
            <property name="hibernate.dialect">com.hxtt.support.hibernate.HxttAccessDialect</property>
           <property name="hibernate.connection.url">jdbc:access:///F:/JSP/structs/Book/shop.mdb</property>
            <property name="hibernate.connection.driver_class">com.hxtt.sql.access.AccessDriver</property>        
           <property name="hiberante.show_sql">true</property>
           <mapping resource="com/shop/book/domain/Book.hbm.xml" />  
        </session-factory>