有趣的问题:
我有一个看起来像的域类
class Dummy {
String key = (''+new Date()).encodeAsSHA256()
}
当我尝试启动我的应用程序时,我收到一条很长的堆栈跟踪/错误消息说明
Invocation of init method failed; nested exception is org.hibernate.InstantiationException: could not instantiate test objectmad.Dummy
...
Caused by MissingMethodException: No signature of method: java.lang.String.encodeAsSHA256() is applicable for argument types: () values: []
现在,如果我删除.encodeAsSHA256()
,以开发模式启动应用程序并重新插入编码,它可以工作:-)
所以基本上,代码在@运行时工作,但似乎@初始化时间,String类还没有为编码器准备好。
知道如何在不创建自定义构造函数的情况下解决此问题吗?