我正在学习关于Java EE7-hands on lab 这里的教程。我按照那里的指示来设置我的WildFly Application server。一切都很好。本教程附带示例数据和用于初始化数据源的sql load scripts。如果persistence.xml中没有提供数据源,WildFly将提供本教程中提到的default data-source。
在教程链接第3步的末尾,下面是我的屏幕截图:

但是所期望的(如教程链接:图12所示)是:

不同的是“在电影院放映电影!”在我的例子中,“在7家影院放映20部电影!”在预期的时间里。用于显示这些数字的JSF模板进行EJB调用,从数据源获取数据。综上所述,我认为我的数据源还没有初始化.但我不知道为什么,因为我逐字逐句地遵守了教程。我也很难解决这个问题。
谢谢你提前帮忙
编辑
服务器日志显示Unable to determine H2 database version, certain features may not work.
2014-10-02 18:02:50,167 INFO [org.hibernate.Version] (ServerService Thread Pool -- 50) HHH000412: Hibernate Core {4.3.5.Final}
2014-10-02 18:02:50,170 INFO [org.hibernate.cfg.Environment] (ServerService Thread Pool -- 50) HHH000206: hibernate.properties not found
2014-10-02 18:02:50,172 INFO [org.hibernate.cfg.Environment] (ServerService Thread Pool -- 50) HHH000021: Bytecode provider name : javassist
2014-10-02 18:02:50,330 INFO [org.jboss.ws.common.management] (MSC service thread 1-6) JBWS022052: Starting JBoss Web Services - Stack CXF Server 4.2.4.Final
2014-10-02 18:02:50,491 INFO [org.jboss.as.jpa] (ServerService Thread Pool -- 50) JBAS011409: Starting Persistence Unit (phase 2 of 2) Service 'movieplex7.war#movieplex7PU'
2014-10-02 18:02:50,641 INFO [org.hibernate.annotations.common.Version] (ServerService Thread Pool -- 50) HCANN000001: Hibernate Commons Annotations {4.0.4.Final}
2014-10-02 18:02:50,875 INFO [org.hibernate.dialect.Dialect] (ServerService Thread Pool -- 50) HHH000400: Using dialect: org.hibernate.dialect.H2Dialect
2014-10-02 18:02:50,883 WARN [org.hibernate.dialect.H2Dialect] (ServerService Thread Pool -- 50) HHH000431: Unable to determine H2 database version, certain features may not work
2014-10-02 18:02:50,922 INFO [org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory] (ServerService Thread Pool -- 50) HHH000397: Using ASTQueryTranslatorFactory
2014-10-02 18:02:51,047 INFO [org.hibernate.dialect.Dialect] (ServerService Thread Pool -- 50) HHH000400: Using dialect: org.hibernate.dialect.H2Dialect
2014-10-02 18:02:51,048 WARN [org.hibernate.dialect.H2Dialect] (ServerService Thread Pool -- 50) HHH000431: Unable to determine H2 database version, certain features may not work
2014-10-02 18:02:51,055 WARN [org.hibernate.jpa.internal.schemagen.GenerationTargetToDatabase] (ServerService Thread Pool -- 50) Unable to execute JPA schema generation drop command [DROP TABLE SALES]
2014-10-02 18:02:51,055 WARN [org.hibernate.jpa.internal.schemagen.GenerationTargetToDatabase] (ServerService Thread Pool -- 50) Unable to execute JPA schema generation drop command [DROP TABLE POINTS]
2014-10-02 18:02:51,055 WARN [org.hibernate.jpa.internal.schemagen.GenerationTargetToDatabase] (ServerService Thread Pool -- 50) Unable to execute JPA schema generation drop command [DROP TABLE SHOW_TIMING]
2014-10-02 18:02:51,055 WARN [org.hibernate.jpa.internal.schemagen.GenerationTargetToDatabase] (ServerService Thread Pool -- 50) Unable to execute JPA schema generation drop command [DROP TABLE MOVIE]
2014-10-02 18:02:51,056 WARN [org.hibernate.jpa.internal.schemagen.GenerationTargetToDatabase] (ServerService Thread Pool -- 50) Unable to execute JPA schema generation drop command [DROP TABLE TIMESLOT]
2014-10-02 18:02:51,056 WARN [org.hibernate.jpa.internal.schemagen.GenerationTargetToDatabase] (ServerService Thread Pool -- 50) Unable to execute JPA schema generation drop command [DROP TABLE THEATER]
2014-10-02 18:02:51,250 INFO [javax.enterprise.resource.webcontainer.jsf.config] (MSC service thread 1-8) Initializing Mojarra 2.2.6-jbossorg-4 20140501-1134 for context '/movieplex7'
2014-10-02 18:02:51,867 INFO [org.wildfly.extension.undertow] (MSC service thread 1-8) JBAS017534: Registered web context: /movieplex7
2014-10-02 18:02:51,905 INFO [org.jboss.as.server] (ServerService Thread Pool -- 28) JBAS018559: Deployed "movieplex7.war" (runtime-name : "movieplex7.war")
2014-10-02 18:02:51,910 INFO [org.jboss.as] (Controller Boot Thread) JBAS015961: Http management interface listening on http://127.0.0.1:9990/management
2014-10-02 18:02:51,911 INFO [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
2014-10-02 18:02:51,911 INFO [org.jboss.as] (Controller Boot Thread) JBAS015874: WildFly 8.1.0.Final "Kenny" started in 5525ms - Started 256 of 310 services (91 services are lazy, passive or on-demand)我还在github中提出了一个问题:https://github.com/javaee-samples/javaee7-hol/issues/17#issuecomment-57561731
发布于 2014-10-03 19:30:28
于是我得到了这个应用程序,并试着运行它(Netbeans,Wildfli-8.1)。根本就没跑过。找不到数据源的问题。因此( Wildfly启动后),我转到管理控制台localhost:9990并输入了我的凭据。在控制台中,选择Configuration选项卡,然后是Datasources。没有defaultDataSource。有一个java:jboss/datasources/ExampleDS作为预先配置的数据源。因此,在persistence.xml中,我将数据源更改为该数据源,它起了作用。,我从下载的dir解决方案中运行了movieplex7。
这是我唯一改变到整个项目的东西。刚刚将数据源的jndi名称更改为<jta-data-source>java:jboss/datasources/ExampleDS</jta-data-source>
编辑
所以阿伦古普塔是正确的。在应用程序中,在persistence.xml中有以下注释行
<!--<jta-data-source>java:comp/DefaultDataSource</jta-data-source>-->我想我得取消评论了。通过取消评论,这就是导致它最初不起作用的原因。因此,我将其注释为out,并且没有指定任何数据源,即java:jboss/datasources/ExampleDS,它按照指定的方式工作。所以你的问题似乎在别的地方。
发布于 2014-10-03 22:53:54
添加
<jta-data-source>java:jboss/datasources/ExampleDS</jta-data-source>不应该是必需的,因为Java 7定义了一个新的默认数据源,应该自动获取。
https://github.com/javaee-samples/javaee7-hol/issues/17也在讨论这个问题。
https://stackoverflow.com/questions/26149976
复制相似问题