protected void sendReply(final Message req, final long req_id, Object reply, boolean is_exception) { Buffer rsp_buf; try { // retval could be an exception, or a real value rsp_buf=replyToBuffer(reply, marshaller); } catch(Throwable t) { try { // this call should succeed (all exceptions are serializable) rsp_buf=replyToBuffer(t, marshaller); is_exception=true; } catch(NotSerializableException not_serializable) { if(log.isErrorEnabled()) log.error(Util.getMessage("FailedMarshallingRsp") + reply + "): not serializable"); return; } catch(Throwable tt) { if(log.isErrorEnabled()) log.error(Util.getMessage("FailedMarshallingRsp") + reply + "): " + tt); return; } } Message rsp=req.makeReply().setFlag(req.getFlags()).setBuffer(rsp_buf) .clearFlag(Message.Flag.RSVP, Message.Flag.INTERNAL); // JGRP-1940 sendResponse(rsp, req_id, is_exception); }
protected void sendReply(final Message req, final long req_id, Object reply, boolean is_exception) { Buffer rsp_buf; try { // retval could be an exception, or a real value rsp_buf=replyToBuffer(reply, marshaller); } catch(Throwable t) { try { // this call should succeed (all exceptions are serializable) rsp_buf=replyToBuffer(t, marshaller); is_exception=true; } catch(NotSerializableException not_serializable) { if(log.isErrorEnabled()) log.error(Util.getMessage("FailedMarshallingRsp") + reply + "): not serializable"); return; } catch(Throwable tt) { if(log.isErrorEnabled()) log.error(Util.getMessage("FailedMarshallingRsp") + reply + "): " + tt); return; } } Message rsp=req.makeReply().setFlag(req.getFlags()).setBuffer(rsp_buf) .clearFlag(Message.Flag.RSVP, Message.Flag.INTERNAL); // JGRP-1940 sendResponse(rsp, req_id, is_exception); }