2

JPAを使用してPlay 2でデータを永続化しようとしていますが、次のようになります: Execution exception [IllegalArgumentException: Unknown entity: models.Stream];

Stream.java `

package models;
import javax.persistence.Entity;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Id;
import javax.persistence.Persistence;

import com.restfb.Facebook;

@Entity
public class Stream {
  @Facebook
  @Id
  public String post_id;

  @Facebook
  public String created_time;

  @Facebook
  public String message;

  @Facebook 
  public String permalink;

  @Override
  public String toString() {
    return String.format("%s, %s, %s, %s", created_time, message, permalink, post_id);
  }

  public void save(){
      EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("defaultPersistenceUnit");
      EntityManager entityManager = entityManagerFactory.createEntityManager();
      entityManager.getTransaction().begin();
      entityManager.persist(this);        
      entityManager.getTransaction().commit();
      entityManager.close();
  }
}

`

persistence.xml

`

<persistence-unit name="defaultPersistenceUnit">
    <provider>org.hibernate.ejb.HibernatePersistence</provider>
    <properties>
        <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/fiatbr_db"/>
        <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
        <property name="hibernate.connection.username" value="root"/>
        <property name="hibernate.connection.password" value="1234"/>
        <property name="hibernate.archive.autodetection" value="class"/>
        <property name="hibernate.show_sql" value="true"/>
        <property name="hibernate.format_sql" value="true"/>
        <property name="hbm2ddl.auto" value="create"/>
    </properties>
</persistence-unit>

`

何か不足していますか?設定が間違っていませんか? モデル Stream が見つからないように見えますが、どうして見つからないのでしょうか? クラスに注釈 @Entity をさらに追加するものはありますか? ありがとう :)

4

2 に答える 2

1

また、インポートした @Entity を確認してください。

休止状態のクラスをインポートして、30分ほど探していました。javax.persistence.Entity のインポートが機能しました...

Javaのスキルはそれほど高くありませんが、それが問題になる可能性があります。

于 2014-10-17T10:06:44.757 に答える