Play Framework 2.1 (Java) eBean @Encrypted Annotation-Fehler

Ich versuche, die eBean @Encrypted-Annotation für ein String-Feld für das Datenbankmodell zu verwenden. Die Dokumentation lässt es einfach erscheinen, aber im Browser wird ein sehr vager Laufzeitfehler für den folgenden Beispielstandardcode angezeigt, der die integrierte H2-In-Memory-Datenbank verwendet:

package models; 

import java.util.*; 
import javax.persistence.*; 
import play.db.ebean.*; 
import play.db.ebean.Model.Finder; 
import play.data.format.*; 
import play.data.validation.*; 
import com.avaje.ebean.*; 
import com.avaje.ebean.annotation.*; 

@Entity  
public class Test extends Model { 

 @Id 
 public Long id; 

 @Encrypted 
 public String identifier;

}

Erzeugt den folgenden Laufzeitfehler im Zusammenhang mit der Annotation @Encrypted:

Unexpected exception
RuntimeException: Error reading annotations for models.Test
No source available, here is the exception stack trace:
->java.lang.RuntimeException: Error reading annotations for models.Test
     com.avaje.ebeaninternal.server.deploy.parse.ReadAnnotations.readInitial(ReadAnnotations.java:26)
     com.avaje.ebeaninternal.server.deploy.BeanDescriptorManager.createDeployBeanInfo(BeanDescriptorManager.java:1026)
     com.avaje.ebeaninternal.server.deploy.BeanDescriptorManager.readEntityDeploymentInitial(BeanDescriptorManager.java:533)
     com.avaje.ebeaninternal.server.deploy.BeanDescriptorManager.deploy(BeanDescriptorManager.java:250)
     com.avaje.ebeaninternal.server.core.InternalConfiguration.<init>(InternalConfiguration.java:124)
     com.avaje.ebeaninternal.server.core.DefaultServerFactory.createServer(DefaultServerFactory.java:210)
     com.avaje.ebeaninternal.server.core.DefaultServerFactory.createServer(DefaultServerFactory.java:64)
     com.avaje.ebean.EbeanServerFactory.create(EbeanServerFactory.java:59)
     play.db.ebean.EbeanPlugin.onStart(EbeanPlugin.java:79)
     play.api.Play$anonfun$startErzeugt den folgenden Laufzeitfehler im Zusammenhang mit der Annotation @Encrypted:$anonfun$apply$mcV$sp$1.apply(Play.scala:63)
     play.api.Play$anonfun$startErzeugt den folgenden Laufzeitfehler im Zusammenhang mit der Annotation @Encrypted:$anonfun$apply$mcV$sp$1.apply(Play.scala:63)
     scala.collection.immutable.List.foreach(List.scala:309)
     play.api.Play$anonfun$start$1.apply$mcV$sp(Play.scala:63)
     play.api.Play$anonfun$start$1.apply(Play.scala:63)
     play.api.Play$anonfun$start$1.apply(Play.scala:63)
     play.utils.Threads$.withContextClassLoader(Threads.scala:18)
     play.api.Play$.start(Play.scala:62)
     play.core.ReloadableApplication$anonfun$getErzeugt den folgenden Laufzeitfehler im Zusammenhang mit der Annotation @Encrypted:$anonfun$1.apply(ApplicationProvider.scala:133)
     play.core.ReloadableApplication$anonfun$getErzeugt den folgenden Laufzeitfehler im Zusammenhang mit der Annotation @Encrypted:$anonfun$1.apply(ApplicationProvider.scala:106)
     scala.Option.map(Option.scala:145)
     play.core.ReloadableApplication$anonfun$get$1.apply(ApplicationProvider.scala:106)
     play.core.ReloadableApplication$anonfun$get$1.apply(ApplicationProvider.scala:104)
     scala.util.Either$RightProjection.flatMap(Either.scala:523)
     play.core.ReloadableApplication.get(ApplicationProvider.scala:104)
     play.core.server.Server$class.sendHandler$1(Server.scala:56)
     play.core.server.Server$anonfun$getHandlerFor$4.apply(Server.scala:88)
     play.core.server.Server$anonfun$getHandlerFor$4.apply(Server.scala:87)
     scala.util.Either$RightProjection.flatMap(Either.scala:523)
     play.core.server.Server$class.getHandlerFor(Server.scala:87)
     play.core.server.NettyServer.getHandlerFor(NettyServer.scala:34)
     play.core.server.netty.PlayDefaultUpstreamHandler.messageReceived(PlayDefaultUpstreamHandler.scala:103)
     org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:75)
     org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:565)
     org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:793)
     org.jboss.netty.handler.codec.http.HttpContentDecoder.messageReceived(HttpContentDecoder.java:104)
     org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:75)
     org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:565)
     org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:793)
     org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
     org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:455)
     org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:538)
     org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder.java:437)
     org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:75)
     org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:565)
     org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:560)
     org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
     org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
     org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:84)
     org.jboss.netty.channel.socket.nio.AbstractNioWorker.processSelectedKeys(AbstractNioWorker.java:472)
     org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:333)
     org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:35)
     org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:102)
     org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42)
     java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
     java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
     java.lang.Thread.run(Thread.java:722)

Ich habe die Einstellungen für encryptionKeyManager ordnungsgemäß in der Konfiguration konfiguriert (ebean.encryptKeyManager = "com.avaje.tests.basic.encrypt.BasicEncyptKeyManager"). Alles funktioniert ohne Probleme oder Warnungen.

Ich habe sogar versucht, eBean 2.7.1 als Abhängigkeit manuell ohne Erfolg in das Projekt einzufügen.

Irgendeine Idee, was dies bedeutet und warum ich diesen Fehler erhalte?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage