运行Play Framework 2.2.x(Java)项目时出现以下错误:
Configuration error
Cannot register class [models.SomeClass] in Ebean server
Run Code Online (Sandbox Code Playgroud)
浏览器中显示的错误消息将我指向我的行ebean.default="models.*",application.conf控制台告诉我我的java.lang.VerifyError: Bad type on operand stack一个方法.对于这种情况发生的方法没有什么特别之处,现在已经发生了一些方法.
我发现使用静态方法可以避免错误:即替换someObject.doJob()为SomeClass.doJob(someObject).我已经使用过这个hack,它可以工作,但是我不是很高兴我的所有方法都应该是静态的.
有没有人遇到同样的问题,并找到了解决方法(不使方法静态)?
从我在自动生成的application.conf文件中看到的内容,Play Framework 2.2中的日期/时间根据date.format该文件中的定义进行格式化.例如,我已经定义了
date.format=yyyy-MM-dd
date.format.dk=d. MMMM yyyy
Run Code Online (Sandbox Code Playgroud)
但是,在Scala模板中打印日期时,框架似乎忽略了这些值.该线程提供了一个解决方案,其中一个人将模式直接输入到模板中myDate.format("yyyy-MM-dd").(如果使用Jodatime,我想这就是myDate.toDate().format("yyyy-MM-dd")因为类没有format()定义DateTime.)但是这不仅会强制每次显示日期时重复模式,它也会忽略当前的语言环境.
那么,针对不同的语言环境,在Play Framework 2.2.x中格式化日期和时间的预期方式是什么?
我有一个 HOCON 格式的文件,其中一个很长的字符串被分配给一个键。该字符串包含单引号(和其他“非法”字符),因此我需要将值括在双引号中。像这样的东西:
key="extremely long string with 'illegal' characters :;/. bla bla ..."
Run Code Online (Sandbox Code Playgroud)
为了可读性,我想把它分成多行。我很简单还没有找到一种方法来做到这一点。如果字符串没有用双引号括起来,我可以使用\分割线。如果我不关心添加换行符,我可以使用""". 但我确实关心这些事情。
我研究了非正式的 HOCON 规范,但仍未找到解决方案。
(由于 HOCON 类似于 JSON(我对此一无所知),因此我也将这个问题标记为“JSON”。)