diff --git a/akka-remote/src/main/scala/akka/remote/Remote.scala b/akka-remote/src/main/scala/akka/remote/Remote.scala index a0f933ce7c..fe175aeaa1 100644 --- a/akka-remote/src/main/scala/akka/remote/Remote.scala +++ b/akka-remote/src/main/scala/akka/remote/Remote.scala @@ -301,9 +301,6 @@ trait RemoteMarshallingOps { messageBuilder } - def createErrorReplyMessage(exception: Throwable, request: RemoteMessageProtocol): AkkaRemoteProtocol = - createMessageSendEnvelope(createRemoteMessageProtocolBuilder(Right(request.getSender), Left(exception), None).build) - def receiveMessage(remoteMessage: RemoteMessage, untrustedMode: Boolean) { val recipient = remoteMessage.recipient diff --git a/akka-remote/src/main/scala/akka/remote/netty/NettyRemoteSupport.scala b/akka-remote/src/main/scala/akka/remote/netty/NettyRemoteSupport.scala index 416c9b5dda..a724c18b42 100644 --- a/akka-remote/src/main/scala/akka/remote/netty/NettyRemoteSupport.scala +++ b/akka-remote/src/main/scala/akka/remote/netty/NettyRemoteSupport.scala @@ -635,20 +635,11 @@ class RemoteServerHandler( server.notifyListeners(RemoteServerClientClosed(server, clientAddress)) } - override def messageReceived(ctx: ChannelHandlerContext, event: MessageEvent) = { + override def messageReceived(ctx: ChannelHandlerContext, event: MessageEvent) = try { event.getMessage match { case remote: AkkaRemoteProtocol if remote.hasMessage ⇒ - try { - try { - receiveMessage(new RemoteMessage(remote.getMessage, server.remoteSupport, applicationLoader), UNTRUSTED_MODE) - } catch { - case e: SecurityException ⇒ - server.notifyListeners(RemoteServerError(e, server)) - write(event.getChannel, createErrorReplyMessage(e, remote.getMessage)) //TODO FIXME What is the purpose of this response? - } - } catch { - case e: Exception ⇒ server.notifyListeners(RemoteServerError(e, server)) - } + receiveMessage(new RemoteMessage(remote.getMessage, server.remoteSupport, applicationLoader), UNTRUSTED_MODE) + case remote: AkkaRemoteProtocol if remote.hasInstruction ⇒ remote.getInstruction.getCommandType match { case CommandType.CONNECT ⇒ //TODO FIXME Create passive connection here @@ -657,6 +648,8 @@ class RemoteServerHandler( } case _ ⇒ //ignore } + } catch { + case e: Exception ⇒ server.notifyListeners(RemoteServerError(e, server)) } override def exceptionCaught(ctx: ChannelHandlerContext, event: ExceptionEvent) = {