Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.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 马文和;不是已知的实体类型;错误_Java_Jpa_Eclipselink_Derby - Fatal编程技术网

Java 马文和;不是已知的实体类型;错误

Java 马文和;不是已知的实体类型;错误,java,jpa,eclipselink,derby,Java,Jpa,Eclipselink,Derby,我用quickstart原型生成了一个maven项目。因此,我获得了以下项目结构: |-- src | |-- main | | |-- java | | |-- resources | |-- test | | |-- java | | |-- resources |-- pom.xml 我修改了“pom.xml”文件: 当然,还有“主要阶层”: 我启动Derby服务器: ./derby/bin/startNetworkServer 问题是当我运行

我用quickstart原型生成了一个maven项目。因此,我获得了以下项目结构:

|-- src
| |-- main
| | |-- java      
| | |-- resources 
| |-- test
| | |-- java      
| | |-- resources 
|-- pom.xml       
我修改了“pom.xml”文件:

当然,还有“主要阶层”:

我启动Derby服务器:

./derby/bin/startNetworkServer
问题是当我运行主类时:

package com.apress.javaee6;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.EntityTransaction;
import javax.persistence.Persistence;


public class Main {

    public static void main(String[] args) {

        // Creates an instance of book
        Book book = new Book();
        book.setId(1231L);
        book.setTitle("The Hitchhiker's Guide to the Galaxy");
        book.setPrice(12.5F);
        book.setDescription("Science fiction comedy series created by Douglas Adams.");
        book.setIsbn("1-84023-742-2");
        book.setNbOfPage(354);
        book.setIllustrations(false);

        // Gets an entity manager and a transaction
        EntityManagerFactory emf = Persistence.createEntityManagerFactory("chapter02PU");
        EntityManager em = emf.createEntityManager();
        EntityTransaction tx = em.getTransaction();

        // Persists the book to the database
        tx.begin();
        em.persist(book);
        tx.commit();

        em.close();
        emf.close();
    }
}
mvn exec:java -Dexec.mainClass="com.apress.javaee6.Main"
我得到以下错误:

[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] An exception occured while executing the Java class. null

Object: Book{id=null, title='The Hitchhiker's Guide to the Galaxy', price=12.5, description='Science fiction comedy series created by Douglas Adams.', isbn='1-84023-742-2', nbOfPage=354, illustrations=false} is not a known entity type.
我认为问题在于“id=null”。但是,当我手动设置Id时(例如设置为123),我会收到相同的错误消息。我还尝试在Book类中使用以下陈述:

@GeneratedValue(strategy=GenerationType.AUTO)

有人能解决这个错误吗

PS:以下是启用错误stacktrace时的exec命令结果:

+ Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'exec'.
[INFO] ------------------------------------------------------------------------
[INFO] Building chapter02
[INFO]    task-segment: [exec:java]
[INFO] ------------------------------------------------------------------------
[INFO] Preparing exec:java
[INFO] No goals needed for project - skipping
[INFO] [exec:java {execution: default-cli}]
[EL Finest]: 2010-08-19 13:38:37.215--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Begin predeploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Initial; factoryCount 0
[EL Finest]: 2010-08-19 13:38:37.243--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=eclipselink.orm.throw.exceptions; default value=true
[EL Finer]: 2010-08-19 13:38:37.272--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Searching for default mapping file in file:/home/zakaria/Dev/chapter02/target/classes/
[EL Finer]: 2010-08-19 13:38:37.276--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Searching for default mapping file in file:/home/zakaria/Dev/chapter02/target/classes/
[EL Finest]: 2010-08-19 13:38:37.3--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--End predeploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Predeployed; factoryCount 0
[EL Finer]: 2010-08-19 13:38:37.3--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--JavaSECMPInitializer - transformer is null.
[EL Finest]: 2010-08-19 13:38:37.3--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Begin predeploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Predeployed; factoryCount 0
[EL Finest]: 2010-08-19 13:38:37.301--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--End predeploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Predeployed; factoryCount 1
[EL Finest]: 2010-08-19 13:38:37.309--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Begin deploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Predeployed; factoryCount 1
[EL Finer]: 2010-08-19 13:38:37.315--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Could not initialize Validation Factory. Encountered following exception: java.lang.NoClassDefFoundError: javax/validation/Validation
[EL Finest]: 2010-08-19 13:38:37.323--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=eclipselink.logging.level; value=FINEST; translated value=FINEST
[EL Finest]: 2010-08-19 13:38:37.323--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=eclipselink.logging.level; value=FINEST; translated value=FINEST
[EL Finest]: 2010-08-19 13:38:37.324--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=javax.persistence.jdbc.user; value=APP
[EL Finest]: 2010-08-19 13:38:37.324--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=javax.persistence.jdbc.password; value=xxxxxx
[EL Finest]: 2010-08-19 13:38:37.429--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=eclipselink.target-database; value=DERBY; translated value=org.eclipse.persistence.platform.database.DerbyPlatform
[EL Finest]: 2010-08-19 13:38:37.437--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=javax.persistence.jdbc.driver; value=org.apache.derby.jdbc.ClientDriver
[EL Finest]: 2010-08-19 13:38:37.438--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=javax.persistence.jdbc.url; value=jdbc:derby://localhost:1527/chapter02DB
[EL Info]: 2010-08-19 13:38:37.439--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--EclipseLink, version: Eclipse Persistence Services - 2.0.0.v20091127-r5931
[EL Config]: 2010-08-19 13:38:37.46--ServerSession(6419763)--Connection(22664464)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--connecting(DatabaseLogin(
    platform=>DerbyPlatform
    user name=> "APP"
    datasource URL=> "jdbc:derby://localhost:1527/chapter02DB"
))
[EL Config]: 2010-08-19 13:38:37.857--ServerSession(6419763)--Connection(25782860)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Connected: jdbc:derby://localhost:1527/chapter02DB
    User: APP
    Database: Apache Derby  Version: 10.6.1.0 - (938214)
    Driver: Apache Derby Network Client JDBC Driver  Version: 10.6.1.0 - (938214)
[EL Config]: 2010-08-19 13:38:37.857--ServerSession(6419763)--Connection(10594949)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--connecting(DatabaseLogin(
    platform=>DerbyPlatform
    user name=> "APP"
    datasource URL=> "jdbc:derby://localhost:1527/chapter02DB"
))
[EL Config]: 2010-08-19 13:38:37.863--ServerSession(6419763)--Connection(29499086)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Connected: jdbc:derby://localhost:1527/chapter02DB
    User: APP
    Database: Apache Derby  Version: 10.6.1.0 - (938214)
    Driver: Apache Derby Network Client JDBC Driver  Version: 10.6.1.0 - (938214)
[EL Info]: 2010-08-19 13:38:37.885--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU login successful
[EL Finest]: 2010-08-19 13:38:37.933--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--End deploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Deployed; factoryCount 1
[EL Finer]: 2010-08-19 13:38:38.004--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--client acquired
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] An exception occured while executing the Java class. null

Object: Book{id=1231, title='The Hitchhiker's Guide to the Galaxy', price=12.5, description='Science fiction comedy series created by Douglas Adams.', isbn='1-84023-742-2', nbOfPage=354, illustrations=false} is not a known entity type.
[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: An exception occured while executing the Java class. null
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:719)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
    at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
    at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
    at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
    at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoExecutionException: An exception occured while executing the Java class. null
    at org.codehaus.mojo.exec.ExecJavaMojo.execute(ExecJavaMojo.java:346)
    at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
    ... 17 more
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:291)
    at java.lang.Thread.run(Thread.java:636)
Caused by: java.lang.IllegalArgumentException: Object: Book{id=1231, title='The Hitchhiker's Guide to the Galaxy', price=12.5, description='Science fiction comedy series created by Douglas Adams.', isbn='1-84023-742-2', nbOfPage=354, illustrations=false} is not a known entity type.
    at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNewObjectForPersist(UnitOfWorkImpl.java:4147)
    at org.eclipse.persistence.internal.jpa.EntityManagerImpl.persist(EntityManagerImpl.java:368)
    at com.apress.javaee6.Main.main(Main.java:30)
    ... 6 more
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4 seconds
[INFO] Finished at: Thu Aug 19 13:38:38 CEST 2010
[INFO] Final Memory: 8M/68M
[INFO] ------------------------------------------------------------------------
[EL Finer]: 2010-08-19 13:38:38.213--UnitOfWork(24128584)--Thread(Thread[Finalizer,8,system])--release unit of work
[EL Finer]: 2010-08-19 13:38:38.214--ClientSession(23817301)--Thread(Thread[Finalizer,8,system])--client released
非常感谢你,
问候。

我自己没有使用EclipseLink,所以我只能猜测,但让我惊讶的是,您的类没有id属性的setter


根据JPA规范,我不知道这是否合法,但我以前从未遇到过这种情况。在我所知道的所有JPA应用程序中,所有非瞬态属性都有公共getter和setter。(当然,其中一些不应该手动使用,比如id属性,但持久性提供程序需要它们)。因此,尝试添加一个setId()方法,我们将从那里开始…

我自己没有使用EclipseLink,所以我只能猜测,但让我惊讶的是,您的类没有id属性的setter


根据JPA规范,我不知道这是否合法,但我以前从未遇到过这种情况。在我所知道的所有JPA应用程序中,所有非瞬态属性都有公共getter和setter。(当然,其中一些不应该手动使用,比如id属性,但持久性提供程序需要它们)。因此,尝试添加一个setId()方法,我们将从那里开始…

我在Eclipselink中经常遇到这种错误。 我找到的唯一答案是这个,一个开放的bug:

简而言之,这个bug来自EclipseLink+(osGI)联合使用,当重建jar时,会保留一个指向“旧”实体的指针,而不是使用新实体,因此该实体是未知的错误。我的解决方案是重新启动IDE、清理、构建、重新启动服务器、安装jar/war、运行


不知道这是否是你的问题,但可能是…

我在Eclipselink中经常遇到这种错误。 我找到的唯一答案是这个,一个开放的bug:

简而言之,这个bug来自EclipseLink+(osGI)联合使用,当重建jar时,会保留一个指向“旧”实体的指针,而不是使用新实体,因此该实体是未知的错误。我的解决方案是重新启动IDE、清理、构建、重新启动服务器、安装jar/war、运行

不知道这是否是你的问题,但可能是

我认为问题在于“id=null”。但是,当我手动设置Id时(例如设置为123),我会收到相同的错误消息

不,并且在使用
GeneratedValue
时,您不应该设置
Id

有人能解决这个错误吗

问题的根本原因是未生成
BOOK
表(因此EclipseLink无法正确映射
BOOK
实体,然后无法将其识别为实体)

这是因为
persistence.xml
中列出的类的完全限定名与实际FQN不匹配(
com.apress.javaee6.chapter02.Book
vs
com.apress.javaee6.Book

因此,要么更改类的包,要么修复
persistence.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">

    <persistence-unit name="chapter02PU" transaction-type="RESOURCE_LOCAL">
        <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
        <class>com.apress.javaee6.Book</class>
        <properties>
            <property name="eclipselink.target-database" value="DERBY"/>
            <property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
            <property name="eclipselink.logging.level" value="INFO"/>
            <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.ClientDriver"/>
            <property name="javax.persistence.jdbc.url" value="jdbc:derby://localhost:1527/chapter02DB;create=true"/>
            <property name="javax.persistence.jdbc.user" value="APP"/>
            <property name="javax.persistence.jdbc.password" value="APP"/>
        </properties>
    </persistence-unit>
</persistence>  
但在我看来,这个错误的报告非常糟糕,EclipseLink应该报告这个表丢失了

工具书类
  • JPA1.0规范
    • 6.2.1.6映射文件、jar文件、类、排除未列出的类
我认为问题在于“id=null”。但是,当我手动设置Id时(例如设置为123),我会收到相同的错误消息

不,并且在使用
GeneratedValue
时,您不应该设置
Id

有人能解决这个错误吗

问题的根本原因是未生成
BOOK
表(因此EclipseLink无法正确映射
BOOK
实体,然后无法将其识别为实体)

这是因为
persistence.xml
中列出的类的完全限定名与实际FQN不匹配(
com.apress.javaee6.chapter02.Book
vs
com.apress.javaee6.Book

因此,要么更改类的包,要么修复
persistence.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">

    <persistence-unit name="chapter02PU" transaction-type="RESOURCE_LOCAL">
        <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
        <class>com.apress.javaee6.Book</class>
        <properties>
            <property name="eclipselink.target-database" value="DERBY"/>
            <property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
            <property name="eclipselink.logging.level" value="INFO"/>
            <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.ClientDriver"/>
            <property name="javax.persistence.jdbc.url" value="jdbc:derby://localhost:1527/chapter02DB;create=true"/>
            <property name="javax.persistence.jdbc.user" value="APP"/>
            <property name="javax.persistence.jdbc.password" value="APP"/>
        </properties>
    </persistence-unit>
</persistence>  
但在我看来,这个错误的报告非常糟糕,EclipseLink应该报告这个表丢失了

工具书类
  • JPA1.0规范
    • 6.2.1.6映射文件、jar文件、类、排除未列出的类

请运行带有-e标志的mvn命令并发布堆栈trace@seanize:我添加了错误stacktrace。请运行带有-e标志的mvn命令并发布堆栈trace@seanize:我添加了错误stacktrace。我已尝试这样做。然后,我在主类中手动设置id(我在本文中讨论过)。但是它不起作用:(我已经试过这么做了。然后,我在主类中手动设置id(我在本文中讨论过)。但是它不起作用:(我不认为这是“IDE”的问题。我使用“IDE”来编辑代码。但是,对于编译和运行操作,我使用“mvn”命令。我不认为这是“IDE”的问题。我使用“IDE”来编辑代码。但是,对于编译和运行操作,我使用“mvn”命令来完成。我说不出话(或“writelesss”lol)。它成功了!非常感谢!@Zakaria:我发现了真正的问题(书的真正完全限定名与persistence.xml中的名称不匹配)并相应地更新了我的答案。天才。谢谢你的帮助。我也一样
@GeneratedValue(strategy=GenerationType.IDENTITY)
+ Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'exec'.
[INFO] ------------------------------------------------------------------------
[INFO] Building chapter02
[INFO]    task-segment: [exec:java]
[INFO] ------------------------------------------------------------------------
[INFO] Preparing exec:java
[INFO] No goals needed for project - skipping
[INFO] [exec:java {execution: default-cli}]
[EL Finest]: 2010-08-19 13:38:37.215--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Begin predeploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Initial; factoryCount 0
[EL Finest]: 2010-08-19 13:38:37.243--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=eclipselink.orm.throw.exceptions; default value=true
[EL Finer]: 2010-08-19 13:38:37.272--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Searching for default mapping file in file:/home/zakaria/Dev/chapter02/target/classes/
[EL Finer]: 2010-08-19 13:38:37.276--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Searching for default mapping file in file:/home/zakaria/Dev/chapter02/target/classes/
[EL Finest]: 2010-08-19 13:38:37.3--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--End predeploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Predeployed; factoryCount 0
[EL Finer]: 2010-08-19 13:38:37.3--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--JavaSECMPInitializer - transformer is null.
[EL Finest]: 2010-08-19 13:38:37.3--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Begin predeploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Predeployed; factoryCount 0
[EL Finest]: 2010-08-19 13:38:37.301--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--End predeploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Predeployed; factoryCount 1
[EL Finest]: 2010-08-19 13:38:37.309--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Begin deploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Predeployed; factoryCount 1
[EL Finer]: 2010-08-19 13:38:37.315--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Could not initialize Validation Factory. Encountered following exception: java.lang.NoClassDefFoundError: javax/validation/Validation
[EL Finest]: 2010-08-19 13:38:37.323--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=eclipselink.logging.level; value=FINEST; translated value=FINEST
[EL Finest]: 2010-08-19 13:38:37.323--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=eclipselink.logging.level; value=FINEST; translated value=FINEST
[EL Finest]: 2010-08-19 13:38:37.324--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=javax.persistence.jdbc.user; value=APP
[EL Finest]: 2010-08-19 13:38:37.324--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=javax.persistence.jdbc.password; value=xxxxxx
[EL Finest]: 2010-08-19 13:38:37.429--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=eclipselink.target-database; value=DERBY; translated value=org.eclipse.persistence.platform.database.DerbyPlatform
[EL Finest]: 2010-08-19 13:38:37.437--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=javax.persistence.jdbc.driver; value=org.apache.derby.jdbc.ClientDriver
[EL Finest]: 2010-08-19 13:38:37.438--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--property=javax.persistence.jdbc.url; value=jdbc:derby://localhost:1527/chapter02DB
[EL Info]: 2010-08-19 13:38:37.439--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--EclipseLink, version: Eclipse Persistence Services - 2.0.0.v20091127-r5931
[EL Config]: 2010-08-19 13:38:37.46--ServerSession(6419763)--Connection(22664464)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--connecting(DatabaseLogin(
    platform=>DerbyPlatform
    user name=> "APP"
    datasource URL=> "jdbc:derby://localhost:1527/chapter02DB"
))
[EL Config]: 2010-08-19 13:38:37.857--ServerSession(6419763)--Connection(25782860)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Connected: jdbc:derby://localhost:1527/chapter02DB
    User: APP
    Database: Apache Derby  Version: 10.6.1.0 - (938214)
    Driver: Apache Derby Network Client JDBC Driver  Version: 10.6.1.0 - (938214)
[EL Config]: 2010-08-19 13:38:37.857--ServerSession(6419763)--Connection(10594949)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--connecting(DatabaseLogin(
    platform=>DerbyPlatform
    user name=> "APP"
    datasource URL=> "jdbc:derby://localhost:1527/chapter02DB"
))
[EL Config]: 2010-08-19 13:38:37.863--ServerSession(6419763)--Connection(29499086)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--Connected: jdbc:derby://localhost:1527/chapter02DB
    User: APP
    Database: Apache Derby  Version: 10.6.1.0 - (938214)
    Driver: Apache Derby Network Client JDBC Driver  Version: 10.6.1.0 - (938214)
[EL Info]: 2010-08-19 13:38:37.885--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU login successful
[EL Finest]: 2010-08-19 13:38:37.933--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--End deploying Persistence Unit chapter02PU; session file:/home/zakaria/Dev/chapter02/target/classes/_chapter02PU; state Deployed; factoryCount 1
[EL Finer]: 2010-08-19 13:38:38.004--ServerSession(6419763)--Thread(Thread[com.apress.javaee6.Main.main(),5,com.apress.javaee6.Main])--client acquired
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] An exception occured while executing the Java class. null

Object: Book{id=1231, title='The Hitchhiker's Guide to the Galaxy', price=12.5, description='Science fiction comedy series created by Douglas Adams.', isbn='1-84023-742-2', nbOfPage=354, illustrations=false} is not a known entity type.
[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: An exception occured while executing the Java class. null
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:719)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
    at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
    at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
    at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
    at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoExecutionException: An exception occured while executing the Java class. null
    at org.codehaus.mojo.exec.ExecJavaMojo.execute(ExecJavaMojo.java:346)
    at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
    ... 17 more
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:291)
    at java.lang.Thread.run(Thread.java:636)
Caused by: java.lang.IllegalArgumentException: Object: Book{id=1231, title='The Hitchhiker's Guide to the Galaxy', price=12.5, description='Science fiction comedy series created by Douglas Adams.', isbn='1-84023-742-2', nbOfPage=354, illustrations=false} is not a known entity type.
    at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNewObjectForPersist(UnitOfWorkImpl.java:4147)
    at org.eclipse.persistence.internal.jpa.EntityManagerImpl.persist(EntityManagerImpl.java:368)
    at com.apress.javaee6.Main.main(Main.java:30)
    ... 6 more
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4 seconds
[INFO] Finished at: Thu Aug 19 13:38:38 CEST 2010
[INFO] Final Memory: 8M/68M
[INFO] ------------------------------------------------------------------------
[EL Finer]: 2010-08-19 13:38:38.213--UnitOfWork(24128584)--Thread(Thread[Finalizer,8,system])--release unit of work
[EL Finer]: 2010-08-19 13:38:38.214--ClientSession(23817301)--Thread(Thread[Finalizer,8,system])--client released
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">

    <persistence-unit name="chapter02PU" transaction-type="RESOURCE_LOCAL">
        <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
        <class>com.apress.javaee6.Book</class>
        <properties>
            <property name="eclipselink.target-database" value="DERBY"/>
            <property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
            <property name="eclipselink.logging.level" value="INFO"/>
            <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.ClientDriver"/>
            <property name="javax.persistence.jdbc.url" value="jdbc:derby://localhost:1527/chapter02DB;create=true"/>
            <property name="javax.persistence.jdbc.user" value="APP"/>
            <property name="javax.persistence.jdbc.password" value="APP"/>
        </properties>
    </persistence-unit>
</persistence>  
mvn exec:java -Dexec.mainClass="com.apress.javaee6.Main" -e + Error stacktraces are turned on. [INFO] Scanning for projects... [INFO] Searching repository for plugin with prefix: 'exec'. [INFO] ------------------------------------------------------------------------ [INFO] Building Q3521044 - Maven and the “is not a known entity type” error [INFO] task-segment: [exec:java] [INFO] ------------------------------------------------------------------------ [INFO] Preparing exec:java [INFO] No goals needed for project - skipping [INFO] [exec:java {execution: default-cli}] [EL Info]: 2010-08-19 16:39:54.442--ServerSession(2698418)--EclipseLink, version: Eclipse Persistence Services - 2.0.0.v20091127-r5931 [EL Info]: 2010-08-19 16:39:55.875--ServerSession(2698418)--file:/home/pascal/Projects/stackoverflow/Q3521044/target/classes/_chapter02PU login successful [EL Warning]: 2010-08-19 16:39:56.219--ServerSession(2698418)--Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.0.0.v20091127-r5931): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.SQLException: Table/View 'SEQUENCE' already exists in Schema 'APP'. Error Code: -1 Call: CREATE TABLE SEQUENCE (SEQ_NAME VARCHAR(50) NOT NULL, SEQ_COUNT DECIMAL(15), PRIMARY KEY (SEQ_NAME)) Query: DataModifyQuery(sql="CREATE TABLE SEQUENCE (SEQ_NAME VARCHAR(50) NOT NULL, SEQ_COUNT DECIMAL(15), PRIMARY KEY (SEQ_NAME))") [EL Info]: 2010-08-19 16:39:56.574--ServerSession(2698418)--file:/home/pascal/Projects/stackoverflow/Q3521044/target/classes/_chapter02PU logout successful [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESSFUL [INFO] ------------------------------------------------------------------------ [INFO] ------------------------------------------------------------------------ [INFO] Total time: 11 seconds [INFO] Finished at: Thu Aug 19 16:39:56 CEST 2010 [INFO] Final Memory: 17M/88M [INFO] ------------------------------------------------------------------------