polish
This commit is contained in:
@@ -31,7 +31,7 @@ import org.springframework.js.ajax.SpringJavascriptAjaxHandler;
|
||||
import org.springframework.web.context.support.WebApplicationObjectSupport;
|
||||
|
||||
/**
|
||||
* Ajax handler that works with Rich Faces, allowing support for Web Flow ajax features with the Rich Faces toolkit.
|
||||
* Ajax handler that works with Rich Faces, allowing support for Web Flow Ajax features with the Rich Faces toolkit.
|
||||
*
|
||||
* @author Jeremy Grelle
|
||||
*/
|
||||
@@ -40,28 +40,31 @@ public class RichFacesAjaxHandler extends WebApplicationObjectSupport {
|
||||
private AjaxHandler delegate = new SpringJavascriptAjaxHandler();
|
||||
|
||||
public boolean isAjaxRequest(HttpServletRequest request, HttpServletResponse response) {
|
||||
FacesContextHelper helper = new FacesContextHelper();
|
||||
try {
|
||||
if (AjaxContext.getCurrentInstance(helper.getFacesContext(getServletContext(), request, response))
|
||||
.isAjaxRequest(helper.getFacesContext(getServletContext(), request, response))) {
|
||||
return true;
|
||||
} else {
|
||||
return delegate.isAjaxRequest(request, response);
|
||||
}
|
||||
} finally {
|
||||
helper.cleanup();
|
||||
if (isRichFacesAjaxRequest(request, response)) {
|
||||
return true;
|
||||
} else {
|
||||
return delegate.isAjaxRequest(request, response);
|
||||
}
|
||||
}
|
||||
|
||||
public void sendAjaxRedirect(String targetUrl, HttpServletRequest request, HttpServletResponse response,
|
||||
boolean popup) throws IOException {
|
||||
if (isRichFacesAjaxRequest(request, response)) {
|
||||
response.sendRedirect(response.encodeRedirectURL(targetUrl));
|
||||
} else {
|
||||
delegate.sendAjaxRedirect(targetUrl, request, response, popup);
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isRichFacesAjaxRequest(HttpServletRequest request, HttpServletResponse response) {
|
||||
FacesContextHelper helper = new FacesContextHelper();
|
||||
try {
|
||||
if (AjaxContext.getCurrentInstance(helper.getFacesContext(getServletContext(), request, response))
|
||||
.isAjaxRequest(helper.getFacesContext(getServletContext(), request, response))) {
|
||||
response.sendRedirect(response.encodeRedirectURL(targetUrl));
|
||||
FacesContext facesContext = helper.getFacesContext(getServletContext(), request, response);
|
||||
AjaxContext context = AjaxContext.getCurrentInstance(facesContext);
|
||||
if (context != null) {
|
||||
return context.isAjaxRequest(facesContext);
|
||||
} else {
|
||||
delegate.sendAjaxRedirect(targetUrl, request, response, popup);
|
||||
return false;
|
||||
}
|
||||
} finally {
|
||||
helper.cleanup();
|
||||
|
||||
Reference in New Issue
Block a user