Hibernate 未能创建sessionfactory:需要annotationConfiguration实例

Hibernate 未能创建sessionfactory:需要annotationConfiguration实例,hibernate,exception,gwt,rpc,sessionfactory,Hibernate,Exception,Gwt,Rpc,Sessionfactory,我无法使我的hibernate函数(例如getusers())在RPC实现中工作(例如在login()中) 我将所有hibernate函数放入服务器上的dataServiceImpl类中,但是当我有自己的类函数并将其作为普通java应用程序运行时,它就可以正常工作了,所以我不知道为什么我不能在rpc功能中使用相同的函数 在我的RPC登录函数中,我尝试使用以下内容进行测试: List<User> userlist = getUsers(); Window.alert(u

我无法使我的hibernate函数(例如getusers())在RPC实现中工作(例如在login()中)

我将所有hibernate函数放入服务器上的dataServiceImpl类中,但是当我有自己的类函数并将其作为普通java应用程序运行时,它就可以正常工作了,所以我不知道为什么我不能在rpc功能中使用相同的函数

在我的RPC登录函数中,我尝试使用以下内容进行测试:

List<User> userlist = getUsers();
        Window.alert(userlist.toString());
我的gwt应用程序引发以下错误:

[WARN] Server class 'org.eclipse.jetty.servlet.listener.ELContextCleaner' could not be found in the web app, but was found on the system classpath
   [WARN] Adding classpath entry 'file:/C:/Program%20Files/eclipse/plugins/com.google.gwt.eclipse.sdkbundle_2.6.0/gwt-2.6.0/gwt-dev.jar' to the web app classpath for this session
   For additional info see: file:/C:/Program%20Files/eclipse/plugins/com.google.gwt.eclipse.sdkbundle_2.6.0/gwt-2.6.0/doc/helpInfo/webAppClassPath.html
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Environment <clinit>
Information: Hibernate 3.0.5
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Environment <clinit>
Information: hibernate.properties not found
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Environment <clinit>
Information: using CGLIB reflection optimizer
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Environment <clinit>
Information: using JDK 1.4 java.sql.Timestamp handling
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Configuration configure
Information: configuring from resource: /swmhibernate.cfg.xml
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Configuration configure
Information: configuring from resource: /swmhibernate.cfg.xml
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Configuration getConfigurationInputStream
Information: Configuration resource: /swmhibernate.cfg.xml
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Configuration getConfigurationInputStream
Information: Configuration resource: /swmhibernate.cfg.xml
Failed to create sessionFactory object.org.hibernate.MappingException: An AnnotationConfiguration instance is required to use <mapping clazz="de.team2.kraftwerk.hibernate.Address"/>Starting Jetty on port 8888
   [WARN] Exception while dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract de.team2.kraftwerk.client.UserDTO de.team2.kraftwerk.client.DataService.loginServer(java.lang.String,java.lang.String)' threw an unexpected exception: java.lang.ExceptionInInitializerError

    at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:389)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:579)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:265)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:305)
    at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:501)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
    at org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:68)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
    at org.eclipse.jetty.server.Server.handle(Server.java:370)
    at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
    at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960)
    at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ExceptionInInitializerError
    at de.team2.kraftwerk.server.DataServiceImpl.getUsers(DataServiceImpl.java:239)
    at de.team2.kraftwerk.server.DataServiceImpl.loginServer(DataServiceImpl.java:42)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:561)
    ... 30 more
Caused by: org.hibernate.MappingException: An AnnotationConfiguration instance is required to use <mapping clazz="de.team2.kraftwerk.hibernate.Address"/>
    at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1273)
    at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1235)
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1217)
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1184)
    at org.hibernate.cfg.Configuration.configure(Configuration.java:1112)
    at de.team2.kraftwerk.server.DataServiceImpl.getUsers(DataServiceImpl.java:233)
    ... 36 more
[ERROR] 500 - POST /kraftwerk/data (127.0.0.1) 57 bytes
   Request headers
      Host: 127.0.0.1:8888
      User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0
      Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
      Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
      Accept-Encoding: gzip, deflate
      X-GWT-Permutation: HostedMode
      X-GWT-Module-Base: http://127.0.0.1:8888/kraftwerk/
      Content-Type: text/x-gwt-rpc; charset=utf-8
      Referer: http://127.0.0.1:8888/Kraftwerk.html?gwt.codesvr=127.0.0.1:9997
      Content-Length: 173
      Connection: keep-alive
      Pragma: no-cache
      Cache-Control: no-cache
   Response headers
      Content-Type: text/plain

现在我解决了这个问题。如果您使用hibernate4.1.0版而不是hibernate4.3.5版,那么就没有问题了

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration SYSTEM "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
    <!-- connecting to the database --> 
    <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="hibernate.connection.url">url</property> 
    <property name="connection.username">user</property>
    <property name="connection.password">pw</property>  


    <property name="connection.pool_size">1</property>

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

     <property name="hibernate.connection.autocommit">false</property>
     <property name="show_sql">true</property>
     <property name="format_sql">true</property>
     <property name="use_sql_comments">true</property>
     <!-- for jdbc transaction -->
     <property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>

     <!-- mapping file -->
     <mapping class="de.team2.kraftwerk.hibernate.Address"/>
     <mapping class="de.team2.kraftwerk.hibernate.Plant"/>
     <mapping class="de.team2.kraftwerk.hibernate.Plantprocessinfo"/>
     <mapping class="de.team2.kraftwerk.hibernate.User"/>
     <mapping class="de.team2.kraftwerk.hibernate.Directmarketing"/>
     <mapping class="de.team2.kraftwerk.hibernate.Account"/>
     <mapping class="de.team2.kraftwerk.hibernate.Customer"/>
     <mapping class="de.team2.kraftwerk.hibernate.Report"/>
     <mapping class="de.team2.kraftwerk.hibernate.Mrl"/>
     <mapping class="de.team2.kraftwerk.hibernate.Srl"/>
     <mapping class="de.team2.kraftwerk.hibernate.MrlmarketingInfo"/>
     <mapping class="de.team2.kraftwerk.hibernate.Srl_outputpreis"/>
      <mapping class="de.team2.kraftwerk.hibernate.Srl_workprice"/>
     <mapping class="de.team2.kraftwerk.hibernate.InvoiceMailingaddress"/>

    </session-factory>
</hibernate-configuration>
antlr-2.7.7.jar
datanucleus-api-jdo-3.1.3.jar
datanucleus-api-jpa-3.1.3.jar
datanucleus-appengine.2.1.2.jar
datanucleus-core-3.1.3.jar
dom4j-1.6.1.jar
geronimo-jpa_2.0_spec-1.0.jar
gwt-servlet.jar
hibernate-commons-annotations-4.0.4.Final.jar
hibernate-core-4.3.5.Final.jar
hibernate-entitiymanager-4.3.5.Final.jar
hibernate-jpa-2.1-api-1.0.0.Final.jar
jandex-1.1.0.Final.jar
javassist-3.18.1-GA.jar
jboss-logging-3.1.3.GA.jar
jboss-logging-annotations-1.2.0.Beta1.jar
jboss-transaction-api_1.2_spec-1.0.0.Final.jar
jdo-api-3.0.1.jar
jsr107cache-1.1.jar
jta-1.1.jar
mysql-connector-java-5.1.30-bin.jar
[WARN] Server class 'org.eclipse.jetty.servlet.listener.ELContextCleaner' could not be found in the web app, but was found on the system classpath
   [WARN] Adding classpath entry 'file:/C:/Program%20Files/eclipse/plugins/com.google.gwt.eclipse.sdkbundle_2.6.0/gwt-2.6.0/gwt-dev.jar' to the web app classpath for this session
   For additional info see: file:/C:/Program%20Files/eclipse/plugins/com.google.gwt.eclipse.sdkbundle_2.6.0/gwt-2.6.0/doc/helpInfo/webAppClassPath.html
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Environment <clinit>
Information: Hibernate 3.0.5
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Environment <clinit>
Information: hibernate.properties not found
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Environment <clinit>
Information: using CGLIB reflection optimizer
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Environment <clinit>
Information: using JDK 1.4 java.sql.Timestamp handling
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Configuration configure
Information: configuring from resource: /swmhibernate.cfg.xml
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Configuration configure
Information: configuring from resource: /swmhibernate.cfg.xml
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Configuration getConfigurationInputStream
Information: Configuration resource: /swmhibernate.cfg.xml
Jun 22, 2014 1:54:05 PM org.hibernate.cfg.Configuration getConfigurationInputStream
Information: Configuration resource: /swmhibernate.cfg.xml
Failed to create sessionFactory object.org.hibernate.MappingException: An AnnotationConfiguration instance is required to use <mapping clazz="de.team2.kraftwerk.hibernate.Address"/>Starting Jetty on port 8888
   [WARN] Exception while dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract de.team2.kraftwerk.client.UserDTO de.team2.kraftwerk.client.DataService.loginServer(java.lang.String,java.lang.String)' threw an unexpected exception: java.lang.ExceptionInInitializerError

    at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:389)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:579)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:265)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:305)
    at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:501)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
    at org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:68)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
    at org.eclipse.jetty.server.Server.handle(Server.java:370)
    at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
    at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960)
    at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ExceptionInInitializerError
    at de.team2.kraftwerk.server.DataServiceImpl.getUsers(DataServiceImpl.java:239)
    at de.team2.kraftwerk.server.DataServiceImpl.loginServer(DataServiceImpl.java:42)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:561)
    ... 30 more
Caused by: org.hibernate.MappingException: An AnnotationConfiguration instance is required to use <mapping clazz="de.team2.kraftwerk.hibernate.Address"/>
    at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1273)
    at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1235)
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1217)
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1184)
    at org.hibernate.cfg.Configuration.configure(Configuration.java:1112)
    at de.team2.kraftwerk.server.DataServiceImpl.getUsers(DataServiceImpl.java:233)
    ... 36 more
[ERROR] 500 - POST /kraftwerk/data (127.0.0.1) 57 bytes
   Request headers
      Host: 127.0.0.1:8888
      User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0
      Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
      Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
      Accept-Encoding: gzip, deflate
      X-GWT-Permutation: HostedMode
      X-GWT-Module-Base: http://127.0.0.1:8888/kraftwerk/
      Content-Type: text/x-gwt-rpc; charset=utf-8
      Referer: http://127.0.0.1:8888/Kraftwerk.html?gwt.codesvr=127.0.0.1:9997
      Content-Length: 173
      Connection: keep-alive
      Pragma: no-cache
      Cache-Control: no-cache
   Response headers
      Content-Type: text/plain
Caused by: java.lang.NoSuchMethodError: org.hibernate.SessionFactory.openSession()Lorg/hibernate/Session;
    at de.team2.kraftwerk.hibernate.Funktionen.getUsers(Funktionen.java:42)
    at de.team2.kraftwerk.server.DataServiceImpl.loginServer(DataServiceImpl.java:31)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:561)
    ... 30 more