actorSelection与相对路径消息去死信

时间:2014-05-23 17:26:31

标签: java akka actor

我创建了一个ActorSystem,我的系统的概要是

akka://JL/user/store/meatProcessor
akka://JL/user/store/Server/

商店构造器看起来像这样

.....
public Store(){
    server = this.getContext().actorOf(
            Props.create(Server.class)
            .withDispatcher("my-thread-pool-dispatcher")
            .withRouter(new RoundRobinPool(lowerBound)
            .withResizer(resizer)),
            "Server");
....
meatProcessor = this.getContext().actorOf(Props.create(meatProcessor.class)
                            .withRouter(new RoundRobinPool(lowerBound)
                            .withResizer(resizer)),
            "meatProcessor");
......}

所以如果"存储"创造这两个演员应该是他们的父母吗?

当我进入meatProcessor actor

我尝试使用以下

向服务器发送消息
getContext().actorSelection("../Server").tell(new SomeMsg(), getSelf());  

我的邮件被发送到死信。

但是当我使用

的绝对路径时它会起作用
getContext().actorSelection("user/store/Server").tell(new SomeMsg(), getSelf()); 

任何人都可以告诉我为什么" .."不起作用?

1 个答案:

答案 0 :(得分:0)

我认为使用路由器时这是一个错误。

我这样做是为了工作

getContext().actorSelection("../../Server").tell(new SomeMsg(), getSelf());