私はプレイを使用しています!1.2.3
yaml ファイルからデータをロードし、JPA を使用して永続化しようとしていますが、例外が発生します
実行例外 RuntimeException が発生しました: フィクスチャ rss-sources.yml を読み込めません: モデル models.RSSSource はどのプラグインでも管理されていません
誰かアドバイスをお願いできますか?
スタックトレースは
Internal Server Error (500) for request GET /
Execution exception (In /app/controllers/Bootstrap.java around line 19)
RuntimeException occured : Cannot load fixture rss-sources.yml: Model models.RSSSource is not managed by any plugin
play.exceptions.JavaExecutionException: Cannot load fixture rss-sources.yml: Model models.RSSSource is not managed by any plugin
at play.jobs.Job.call(Job.java:155)
at Invocation.Job(Play!)
Caused by: java.lang.RuntimeException: Cannot load fixture rss-sources.yml: Model models.RSSSource is not managed by any plugin
at play.test.Fixtures.loadModels(Fixtures.java:223)
at controllers.Bootstrap.doJob(Bootstrap.java:19)
at play.jobs.Job.doJobWithResult(Job.java:50)
at play.jobs.Job.call(Job.java:146)
... 1 more
Caused by: play.exceptions.UnexpectedException: Model models.RSSSource is not managed by any plugin
at play.db.Model$Manager.factoryFor(Model.java:57)
at play.test.Fixtures.resolveDependencies(Fixtures.java:386)
at play.test.Fixtures.loadModels(Fixtures.java:197)
... 4 more
私のモデルクラスは次のとおりです。
package models;
import javax.persistence.*;
import play.db.jpa.*;
import play.data.validation.*;
import org.yaml.snakeyaml.Yaml;
/**
* Class to describe a news url
* contains url string and category
*
*
*
*/
@Entity
@Table(name="RSSSourcesTable")
public class RSSSource
{
//variable to old source
@Required
@Id
private String source;
//variables to hold urls for news category RSS feeds
private String topNewsURL;
private String worldNewsURL;
private String ukNewsURL;
private String usaNewsURL;
private String sportsNewsURL;
private String businessNewsURL;
private String technologyNewsURL;
public RSSSource(String source)
{
this.source = source;
}
//getters and setters here
}
私のブートストラップクラスは次のとおりです。
package controllers;
import play.jobs.Job;
import play.jobs.OnApplicationStart;
import play.jobs.OnApplicationStop;
import play.test.Fixtures;
@OnApplicationStart
public class Bootstrap extends Job
{
/**
* On start up this method loads the configuration that is set in the config loader, this contains the connection details for the
* RSS feed sources.
*
*/
public void doJob()
{
System.out.println("Loading RSS sources from file: rss-sources.yml");
Fixtures.loadModels("rss-sources.yml");
}
}