Java 为什么Ebean不从ZenTasks示例应用程序加载字段项目?
我正在关注play framework教程的ZenTask应用程序,目前我在这里结束: 现在我想我要么发现了一个bug,要么在推理过程中遗漏了一些东西,无论如何,本教程在Java 为什么Ebean不从ZenTasks示例应用程序加载字段项目?,java,playframework-2.0,ebean,Java,Playframework 2.0,Ebean,我正在关注play framework教程的ZenTask应用程序,目前我在这里结束: 现在我想我要么发现了一个bug,要么在推理过程中遗漏了一些东西,无论如何,本教程在Application.java中有以下代码行: Task.find.all() Task类有两个有趣的字段: @ManyToOne public User assignedTo; @ManyToOne public Project project; 现在我有以下测试用例: @Test public void succes
Application.java
中有以下代码行:
Task.find.all()
Task类有两个有趣的字段:
@ManyToOne
public User assignedTo;
@ManyToOne
public Project project;
现在我有以下测试用例:
@Test
public void successUserLoadTest(){
List<Task> tasks = Task.find.all();
for(Task t : tasks){
if(t.assignedTo != null)
assertNotNull(t.assignedTo.name);
}
}
@Test
public void failingProjectLoadTest(){
List<Task> tasks = Task.find.all();
for(Task t : tasks){
if(t.project != null)
assertNotNull(t.project.name);
}
}
@Test
public void successProjectLoadTest(){
List<Task> tasks = Task.find.fetch("project").findList();
for(Task t : tasks){
if(t.project != null)
assertNotNull(t.project.name);
}
}
@测试
public void successUserLoadTest(){
List tasks=Task.find.all();
for(任务t:任务){
如果(t.assignedTo!=null)
assertNotNull(t.assignedTo.name);
}
}
@试验
public void failingProjectLoadTest()失败{
List tasks=Task.find.all();
for(任务t:任务){
如果(t.project!=null)
assertNotNull(t.project.name);
}
}
@试验
public void successProjectLoadTest(){
List tasks=Task.find.fetch(“项目”).findList();
for(任务t:任务){
如果(t.project!=null)
assertNotNull(t.project.name);
}
}
问题在于,当assignedTo字段处于活动状态时,项目字段未填充/加载。当我显式加载project字段时,没有问题
有什么办法可以解决这个问题吗?或者显式加载所有manytone
字段更好吗
你好 升级到play-2.2.2-RC2似乎解决了这个问题。这里描述了一个类似的问题: 仍然没有解释为什么填充了
分配到
字段,在这种情况下最有可能出现错误