/** * Removes Open_ElementID_Suffix or Close_ElementID_Suffix before evaluating senderID. * * @see er.ajax.AjaxComponent#shouldHandleRequest(com.webobjects.appserver.WORequest, com.webobjects.appserver.WOContext) * * @return <code>true</code> if this request is for this component */ @Override protected boolean shouldHandleRequest(WORequest request, WOContext context) { String elementID = context.elementID(); String senderID = context.senderID(); if (senderID != null && (senderID.endsWith(Open_ElementID_Suffix) || senderID.endsWith(Close_ElementID_Suffix))) { senderID = NSPathUtilities.stringByDeletingPathExtension(senderID); } boolean shouldHandleRequest = elementID != null && (elementID.equals(senderID) || elementID.equals(ERXAjaxApplication.ajaxSubmitButtonName(request))); return shouldHandleRequest; }
public static boolean shouldHandleRequest(WORequest request, WOContext context, String containerID) { String elementID = context.elementID(); String senderID = context.senderID(); String updateContainerID = null; if (containerID != null) { if (AjaxResponse.isAjaxUpdatePass(request)) { updateContainerID = AjaxUpdateContainer.updateContainerID(request); } } boolean shouldHandleRequest = elementID != null && (elementID.equals(senderID) || (containerID != null && containerID.equals(updateContainerID)) || elementID.equals(ERXAjaxApplication.ajaxSubmitButtonName(request))); return shouldHandleRequest; }
@Override public WOActionResults invokeAction(WORequest request, WOContext context) { WOActionResults result = null; WOComponent component = context.component(); String nameInContext = nameInContext(context, component, this); boolean shouldHandleRequest = !context.wasActionInvoked() && context.wasFormSubmitted() && nameInContext.equals(ERXAjaxApplication.ajaxSubmitButtonName(request)); if (shouldHandleRequest) { String updateContainerID = AjaxUpdateContainer.updateContainerID(this, component); AjaxUpdateContainer.setUpdateContainerID(request, updateContainerID); context.setActionInvoked(true); result = (WOActionResults)valueForBinding("action", component); if (result == null) { result = handleRequest(request, context); } ERXAjaxApplication.enableShouldNotStorePage(); } else { result = invokeChildrenAction(request, context); } return result; }