Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.lang.ExceptionInInitializerError logic.HibernateUtil<;clinit>;(HibernateUtil.java:16)_Java_Postgresql_Hibernate_Servlets - Fatal编程技术网

java.lang.ExceptionInInitializerError logic.HibernateUtil<;clinit>;(HibernateUtil.java:16)

java.lang.ExceptionInInitializerError logic.HibernateUtil<;clinit>;(HibernateUtil.java:16),java,postgresql,hibernate,servlets,Java,Postgresql,Hibernate,Servlets,我已经开始学习Hibernate,出现了这样的错误: exception javax.servlet.ServletException: Servlet execution threw an exception org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) root cause java.lang.ExceptionInInitializerError logic.Hiberna

我已经开始学习Hibernate,出现了这样的错误:

exception

javax.servlet.ServletException: Servlet execution threw an exception
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

root cause

java.lang.ExceptionInInitializerError
    logic.HibernateUtil.<clinit>(HibernateUtil.java:16)
    logic.DefaultTableDAO.getItems(DefaultTableDAO.java:38)
    servlet.TestServlet.doGet(TestServlet.java:36)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

root cause

org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
    org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:267)
    org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:231)
    org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:210)
    org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:51)
    org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:94)
    org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:240)
    org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:210)
    org.hibernate.boot.model.process.spi.MetadataBuildingProcess.handleTypes(MetadataBuildingProcess.java:352)
    org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:111)
    org.hibernate.boot.model.process.spi.MetadataBuildingProcess.build(MetadataBuildingProcess.java:83)
    org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:418)
    org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:87)
    org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:691)
    org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:726)
    logic.HibernateUtil.<clinit>(HibernateUtil.java:14)
    logic.DefaultTableDAO.getItems(DefaultTableDAO.java:38)
    servlet.TestServlet.doGet(TestServlet.java:36)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

root cause

org.hibernate.HibernateException: Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set
    org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.determineDialect(DialectFactoryImpl.java:100)
    org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFactoryImpl.java:54)
    org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:137)
    org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:35)
    org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:88)
    org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:257)
    org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:231)
    org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:210)
    org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:51)
    org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:94)
    org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:240)
    org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:210)
    org.hibernate.boot.model.process.spi.MetadataBuildingProcess.handleTypes(MetadataBuildingProcess.java:352)
    org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:111)
    org.hibernate.boot.model.process.spi.MetadataBuildingProcess.build(MetadataBuildingProcess.java:83)
    org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:418)
    org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:87)
    org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:691)
    org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:726)
    logic.HibernateUtil.<clinit>(HibernateUtil.java:14)
    logic.DefaultTableDAO.getItems(DefaultTableDAO.java:38)
    servlet.TestServlet.doGet(TestServlet.java:36)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
调用Hibernate的类

package servlet;

import logic.DefaultTable;
import logic.DefaultTableDAO;
import logic.Factory;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;


public class TestServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setCharacterEncoding("UTF-8");

        List<Integer> list = new ArrayList<>();

        list.add(1);
        list.add(1);
        list.add(1);
        list.add(1);
        list.add(1);

        Factory factory = Factory.getInstance();

        DefaultTableDAO table = factory.getItemDao();

        List<DefaultTable> items = null;
        try {
            items = table.getItems();
        } catch (SQLException e) {
            e.printStackTrace();
        }

        req.setAttribute("listItem", list);
        req.setAttribute("str", items.get(0).getPartName());
        req.getRequestDispatcher("/WEB-INF/my_page.jsp").forward(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.getWriter().write("NOOOOOOOOOOOOOOOOOO");
    }
}
包servlet;
导入logic.DefaultTable;
导入logic.DefaultTableDAO;
进口逻辑工厂;
导入javax.servlet.ServletException;
导入javax.servlet.http.HttpServlet;
导入javax.servlet.http.HttpServletRequest;
导入javax.servlet.http.HttpServletResponse;
导入java.io.IOException;
导入java.sql.SQLException;
导入java.util.ArrayList;
导入java.util.List;
公共类TestServlet扩展了HttpServlet{
@凌驾
受保护的void doGet(HttpServletRequest-req,HttpServletResponse-resp)抛出ServletException,IOException{
要求setCharacterEncoding(“UTF-8”);
列表=新的ArrayList();
增加第(1)款;
增加第(1)款;
增加第(1)款;
增加第(1)款;
增加第(1)款;
Factory=Factory.getInstance();
DefaultTableDAO table=factory.getItemDao();
列表项=空;
试一试{
items=table.getItems();
}捕获(SQLE异常){
e、 printStackTrace();
}
请求setAttribute(“列表项”,列表);
setAttribute(“str”,items.get(0.getPartName());
req.getRequestDispatcher(“/WEB-INF/my_page.jsp”).forward(req,resp);
}
@凌驾
受保护的void doPost(HttpServletRequest-req,HttpServletResponse-resp)引发ServletException,IOException{
resp.getWriter().write(“nooooooooooo”);
}
}
圆木

05-Nov-2016 15:44:39.412 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 846 ms
05-Nov-2016 15:44:46.519 INFO [http-nio-80-exec-1] org.hibernate.Version.logVersion HHH000412: Hibernate Core {5.2.4.Final}
05-Nov-2016 15:44:46.522 INFO [http-nio-80-exec-1] org.hibernate.cfg.Environment.<clinit> HHH000206: hibernate.properties not found
05-Nov-2016 15:44:46.524 INFO [http-nio-80-exec-1] org.hibernate.cfg.Environment.buildBytecodeProvider HHH000021: Bytecode provider name : javassist
05-Nov-2016 15:44:46.567 INFO [http-nio-80-exec-1] org.hibernate.annotations.common.reflection.java.JavaReflectionManager.<clinit> HCANN000001: Hibernate Commons Annotations {5.0.1.Final}
05-Nov-2016 15:44:46.730 WARN [http-nio-80-exec-1] org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator.initiateService HHH000181: No appropriate connection provider encountered, assuming application will be supplying connections
05-Nov-2016 15:44:46.733 WARN [http-nio-80-exec-1] org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService HHH000342: Could not obtain connection to query metadata : The application must supply JDBC connections
org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
05-Nov-2016 15:46:49.454 INFO [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.core.StandardContext.reload Reloading Context with name [] has started
05-Nov-2016 15:46:49.986 INFO [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.core.StandardContext.reload Reloading Context with name [] is completed
org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
2016年11月5日15:44:39.412信息[main]org.apache.catalina.startup.catalina.start服务器启动846毫秒
2016年11月5日15:44:46.519信息[http-nio-80-exec-1]org.hibernate.Version.logVersion hh000412:hibernate核心{5.2.4.Final}
2016年11月5日15:44:46.522信息[http-nio-80-exec-1]org.hibernate.cfg.Environment。HH000206:找不到hibernate.properties
2016年11月5日15:44:46.524信息[http-nio-80-exec-1]org.hibernate.cfg.Environment.buildBytecodeProvider HH000021:字节码提供程序名称:javassist
2016年11月5日15:44:46.567信息[http-nio-80-exec-1]org.hibernate.annotations.common.reflection.java.JavaReflectionManager。HCANN000001:Hibernate Commons注释{5.0.1.Final}
2016年11月5日15:44:46.730警告[http-nio-80-exec-1]org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator.initiateService HHH000181:假设应用程序将提供连接,则未遇到适当的连接提供程序
2016年11月5日15:44:46.733警告[http-nio-80-exec-1]org.hibernate.engine.jdbc.env.internal.jdbc环境启动器.initiateService HHH000342:无法获取查询元数据的连接:应用程序必须提供jdbc连接
org.hibernate.service.spi.ServiceException:无法创建请求的服务[org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
2016年11月5日15:46:49.454信息[ContainerBackgroundProcessor[StandardEngine[Catalina]]]org.apache.Catalina.core.StandardContext.reload已开始重新加载名为[]的上下文
2016年11月5日15:46:49.986信息[ContainerBackgroundProcessor[StandardEngine[Catalina]]]org.apache.Catalina.core.StandardContext.reload重新加载名为[]的上下文已完成
org.hibernate.service.spi.ServiceException:无法创建请求的服务[org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]

当前错误是因为您没有正确配置
hibernate.dialogue
,您可以在
hibernate.cfg.xml
文件中如下设置:

 <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>

您可以参考

当前错误是因为您没有正确配置
hibernate.dialogue
,您可以在
hibernate.cfg.xml
文件中如下设置:

 <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>

您可以参考

我在hibernate.cfg.xml中写的,我使用的是一个站'@Entity'@Table@Id@Column etc在您的xml属性中,您缺少前缀“hibernate”。请参阅我在hibernate.cfg.xml中编写的文档,我使用了一个名称“@Entity”@Table@Id@Column在您的xml属性中,您缺少前缀“hibernate”,参考文件
 <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
hibernate.connection.driver_class = org.postgresql.Driver
hibernate.connection.url = yoururl
hibernate.connection.username = youruserid
hibernate.connection.password = yourpwd
hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect