Fixed issue #3, avoid hung up of broker on any message processing error
This commit is contained in:
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user