DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=17950>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=17950 Defect of the jax-rpc handler impl on the processing model Summary: Defect of the jax-rpc handler impl on the processing model Product: Axis Version: 1.1rc2 Platform: All URL: http://marc.theaimsgroup.com/?t=104584191000004&r=1&w=2 OS/Version: All Status: NEW Severity: Major Priority: Other Component: Basic Architecture AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] The jax-rpc ver 1.0 spec says as described below in the event of 'return false' on processing a handleRequest method of handlers. [extract of the spec] "In the default processing model, the respose handler chain starts processing from the same Handler instance (that returned false) and goes backward in the execution sequence". However, the current impl of AXIS mishandles the rule, it has been processing as the fixed logic as follows; [*] Please take particular note of the index 'i' in the 'for-loop' on the handleResponse method. .........*.........*.........*.........*.........*.........*.........* package org.apache.axis.handlers; : : public class HandlerChainImpl extends ArrayList implements javax.xml.rpc.handler.HandlerChain { : : public boolean handleRequest(MessageContext _context) { SOAPMessageContext context = (SOAPMessageContext) _context; boolean processFault = false; for (int i = 0; i < size(); i++) { Handler currentHandler = getHandlerInstance(i); try { if (currentHandler.handleRequest(context) == false) { return false; } } catch (SOAPFaultException sfe) { throw sfe; } } return true; } public boolean handleResponse(MessageContext context) { for (int i = size() - 1; i >= 0; i--) if (getHandlerInstance(i).handleResponse(context) == false) return false; return true; } : : .........*.........*.........*.........*.........*.........*.........* This code doesn't follow the spec, so 'Sreekant Thirunagari' <[EMAIL PROTECTED]> and I have discussed how to resolve this issue on axis-user-ml. In addition, the URL shows you the archival record of our course. Best Regards, Toshi (Toshiyuki Kimura) <[EMAIL PROTECTED]> R&D Headquarters NTT DATA Corporation
