Fixed issue #3, avoid hung up of broker on any message processing error

This commit is contained in:
andrea
2015-01-31 12:19:50 +01:00
parent 97dd07e1d4
commit 9562f56a3a
3 changed files with 20 additions and 3 deletions
@@ -80,5 +80,10 @@ public class NettyChannel implements ServerChannel {
public void write(Object value) {
m_channel.writeAndFlush(value);
}
@Override
public String toString() {
String clientID = (String) getAttribute(Constants.ATTR_CLIENTID);
return "session [clientID "+ clientID +"]";
}
}
@@ -152,7 +152,11 @@ public class SimpleMessaging implements IMessaging, EventHandler<ValueEvent> {
if (evt instanceof ProtocolEvent) {
ServerChannel session = ((ProtocolEvent) evt).getSession();
AbstractMessage message = ((ProtocolEvent) evt).getMessage();
annotationSupport.dispatch(session, message);
try {
annotationSupport.dispatch(session, message);
} catch (Throwable th) {
LOG.error("Grave error processing the message {} for {}", message, session, th);
}
}
}