2017-01-23 3 views
0

私は、Java 6からアップグレードしようとしていますすべてのものは、Java 6 で正常に動作します。しかし、私は、Java 7を使用する場合、プレーは、次のエラーにプレイフレームワーク:Ebeanサーバーにクラスを登録することはできません

Cannot register class [models.ActivityMetrics] in Ebean server 
In conf/dev.conf at line 43. 
41 
42 evolutionplugin=disabled 
43 ebean.default = "models.*" <<<<<<<<<<<<<<<<<<<<< 
44 

を与える7にそれはプロジェクトです。これは正常に構築されますが、実行時に上記のエラーが発生します。

私は遊び2.2.0を使用しています。

私はこれまで、同じような質問に答えるために推奨されているコマンドシーケンスclean, compile, playを試しましたが、役に立たなかったです。

Java 6ではなくJava 7を使用する場合、モデルの要件は変更されますか?私は何を変えるべきかの勧告。

更新:

は、ログファイルに次のスタックトレースを発見しました。

play.api.Configuration$$anon$1: Configuration error[Cannot register class [models.ActivityMetrics] in Ebean server] 
    at play.api.Configuration$.play$api$Configuration$$configError(Configuration.scala:92) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.api.Configuration.reportError(Configuration.scala:570) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.Configuration.reportError(Configuration.java:307) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.db.ebean.EbeanPlugin.onStart(EbeanPlugin.java:71) ~[play-java-ebean_2.10-2.2.6.jar:2.2.6] 
    at play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:88) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:88) ~[play_2.10-2.2.6.jar:2.2.6] 
    at scala.collection.immutable.List.foreach(List.scala:318) ~[scala-library-2.10.2.jar:na] 
    at play.api.Play$$anonfun$start$1.apply$mcV$sp(Play.scala:88) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.api.Play$$anonfun$start$1.apply(Play.scala:88) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.api.Play$$anonfun$start$1.apply(Play.scala:88) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.utils.Threads$.withContextClassLoader(Threads.scala:18) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.api.Play$.start(Play.scala:87) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1$$anonfun$1.apply(ApplicationProvider.scala:139) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1$$anonfun$1.apply(ApplicationProvider.scala:112) ~[play_2.10-2.2.6.jar:2.2.6] 
    at scala.Option.map(Option.scala:145) ~[scala-library-2.10.2.jar:na] 
    at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1.apply(ApplicationProvider.scala:112) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1.apply(ApplicationProvider.scala:110) ~[play_2.10-2.2.6.jar:2.2.6] 
    at scala.util.Success.flatMap(Try.scala:200) ~[scala-library-2.10.2.jar:na] 
    at play.core.ReloadableApplication$$anonfun$get$1.apply(ApplicationProvider.scala:110) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.core.ReloadableApplication$$anonfun$get$1.apply(ApplicationProvider.scala:102) ~[play_2.10-2.2.6.jar:2.2.6] 
    at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.forkjoin.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1361) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) ~[scala-library-2.10.2.jar:na] 
Caused by: java.lang.VerifyError: Stack map does not match the one at exception handler 188 
Exception Details: 
    Location: 
    models/ActivityMetrics.delete()V @188: astore_2 
    Reason: 
    Type 'models/Activity' (current frame, locals[5]) is not assignable to 'java/lang/String' (stack map, locals[5]) 
    Current Frame: 
    bci: @117 
    flags: { } 
    locals: { 'models/ActivityMetrics', 'java/lang/String', 'java/util/ArrayList', top, 'models/ActivityMetrics', 'models/Activity' } 
    stack: { 'java/lang/Exception' } 
    Stackmap Frame: 
    bci: @188 
    flags: { } 
    locals: { 'models/ActivityMetrics', 'java/lang/String', top, top, 'java/lang/Object', 'java/lang/String' } 
    stack: { 'java/lang/Exception' } 
    Bytecode: 
    0000000: bb00 3459 b700 3513 0107 b600 372a 3a04 
    0000010: 013a 0519 04b6 03c4 3a05 1905 3a04 013a 
    0000020: 0519 04b6 03de 3a05 1905 b600 3713 0108 
    0000030: b600 37b6 0039 4cb2 0015 2bb6 0017 b200 
    0000040: 152a 3a04 013a 0519 04b6 03c4 3a05 1905 
    0000050: 3a04 013a 0519 04b6 03e0 3a05 1905 b600 
    0000060: 17bb 002f 59b7 0030 4d2c 2a3a 0401 3a05 
    0000070: 1904 b603 c43a 0519 053a 0401 3a05 1904 
    0000080: b603 e03a 0519 05b9 0091 0200 57b8 000a 
    0000090: 4e2a 57b2 000e 2d3a 0401 3a05 1904 b603 
    00000a0: bf3a 0519 053a 0401 3a05 1904 b603 c23a 
    00000b0: 0519 052b 2cb6 00fb 57a7 0016 4db2 0015 
    00000c0: 1301 09b6 0017 bb01 0a59 2cb7 010b bfb1 
    00000d0: 
    Exception Handler Table: 
    bci [97, 185] => handler: 188 
    Stackmap Table: 
    full_frame(@188,{Object[#373],Object[#410],Top,Top,Object[#376],Object[#410]},{Object[#414]}) 
    full_frame(@207,{Object[#373],Object[#410],Object[#408],Object[#407],Object[#536],Object[#410]},{}) 

    at java.lang.Class.forName0(Native Method) ~[na:1.7.0_79] 
    at java.lang.Class.forName(Class.java:274) ~[na:1.7.0_79] 
    at play.db.ebean.EbeanPlugin.onStart(EbeanPlugin.java:69) ~[play-java-ebean_2.10-2.2.6.jar:2.2.6] 
    ... 23 common frames omitted 

答えて

0

エラーがゲッターを使用して代わりの変化が働い直下 をフィールドにアクセスした後に消えていました。

スレッドhttps://groups.google.com/forum/#!topic/play-framework/eWFwZ75T6wk答えを探すのに役立ちました。

 public void delete() throws Exception { 
-  String query = "DELETE FROM " + this.activity.merchant + "_activity_metrics WHERE uuid = ?"; 
+  String merchant = this.getActivity().getMerchant(); 
+  String query = "DELETE FROM " + merchant + "_activity_metrics WHERE uuid = ?"; 
     System.out.println(query); 
-  System.out.println(this.activity.uuid); 
+  System.out.println(this.getActivity().getUuid()); 
関連する問題