访问模型中的公共关系时出错

时间:2013-04-11 22:04:13

标签: java mysql playframework persistence playframework-1.x

在我的项目中,我遇到了一些模型的问题。在控制器中,我调用模型中的对象(ManyToOne关系),如下所示:

Logger.debug("my model %s", myModel.relObject);

这可以打印该relObject的toString。我的relObject定义如下:

public class RelObject GenericModel{   
@Id 
@GeneratedValue(strategy= GenerationType.AUTO) 
@Column(name="My_ID")

public Long myId;    

@Column(name="MY_NAME",  length=24, nullable=false,  unique=false)
@Required
@MaxSize(value=24)
public String myName;   

public toString(){
    return myName;
}    
}

但是,如果我在该记录器下面编码:

Logger.debug("my model's id %s", myModel.relObject.myId);

它发送一个null。这在我项目的许多模型中都有发生。关于为什么以及如何解决这个问题的任何想法?

1 个答案:

答案 0 :(得分:0)

似乎根本没有任何意义。看来play Framework的Controller类中存在一个错误。特别是在只接收一个参数(A Future对象)的await方法中。尝试使用Promise等Future对象时,可以使用此方法创建另一个Thread,这样它就不会阻塞整个应用程序。

如果我在我的项目中的任何地方使用此方法,它将无法正确编译,直到第二次编译而不清理项目并导致模型有奇怪的行为。

我将在堆栈溢出和googlecode播放论坛中发布另一个主题,我将在这里粘贴这些讨论的链接。