0

Play からオブジェクトを送信できるアーキテクチャに取り組んでいます。一連の Akka リモート システムへのアプリケーション。

パッケージはすべてのシステムで共有されmodels.*ますが、モデルは Play! ユーザー入力に基づくアプリケーション。現在、集中的な操作のために、これらのモデル オブジェクトはリモート アクターに渡されて処理されます。リモート アクターは、オブジェクトを永続化するためのものではなく、データに基づいてオブジェクトを操作するためのものです。

したがって、たとえば、サード パーティの API でユーザーを更新する必要がある場合、DB からのオブジェクトはリモート アクターに送信されます。

remoteActorSelection ! User.find.byId(100)

EbeanPlay!で使用しています。

これに関する障害は、Akka システム側で、Ebean がエラーをスローすることです。

java.lang.RuntimeException: DataSource user is null?
at com.avaje.ebeaninternal.server.lib.sql.DataSourcePool.<init>(DataSourcePool.java:204)
at com.avaje.ebeaninternal.server.core.DefaultServerFactory.getDataSourceFromConfig(DefaultServerFactory.java:419)

これは、私の意見では、モデル クラスが拡張Modelされているため、Ebean はデータベースへの接続を想定していることを意味します。これは目的を打ち負かします。

これはどのように解決できますか?シリアル化はオプションではありません。

4

0 に答える 0