4

Akkaで動作する 1 つのアクターをアプリに追加しました。SpringOSGI

私はこのようにアクターを使用しようとしますSpring @Component bean:

private final ActorSystem system = ActorSystem.create("actor-system");
private ActorRef managerActorRef = system.actorOf(Props.create(ManagerActor.class), "ldapManagerActor");

アプリを起動すると、例外がスローされます ( No configuration setting found for key 'akka'):

Instantiation of bean failed; nested exception is org.springframework.
beans.BeanInstantiationException: Could not instantiate bean class [com.myconpany....ByBean]: Constructor threw exception; nested exception is com.typesafe.config.ConfigException$Missing: No configuration setting found for key 'akka'

私はこれを見てきました doc。そして、私の問題の根本は、これを説明する / forおよびファイルclass loaderに渡す必要があることに関連しているようです。akka-systemapplication.conf

stetsしかし、これまでのところ、すべてを機能させるのに適切なものは見つかりませんでした。

誰か助けてくれませんか?


私の試み:

この記事を流します。

私が置くとき:

<bean id="actorSystem" class="akka.actor.ActorSystem" factory-method="create" scope="singleton"></bean>

同様のエラーがあります:

Could not autowire field: private akka.actor.ActorSystem

com.typesafe.config.ConfigException$Missing: No configuration setting fou
nd for key 'akka'
4

1 に答える 1

1

Akka アクターを使用するだけの場合は、application.conf 設定を渡す必要はありません。デフォルトのまま使用できます。クラスパスに設定ライブラリがあることを確認してください。

使用している Akka のバージョンについては言及していませんが、最新の Akka 2.2 RC を入手すると、IndirectActorProducer を使用してスプリング ワイヤリングを処理できます。

その方法については、この記事を参照してください。http://blog.nemccarthy.me/?p=272

また、完全にシャットダウンするために、ActorSystem でシャットダウンを呼び出すように Spring に指示する必要があります。ActorSystem を Spring または Web アプリに統合する方法に関する最新のガイドもここにあります。

于 2013-06-06T10:49:42.010 に答える