commit | 6d4a8ffa86221ffa1fb518db5a2f662e9338c485 | [log] [tgz] |
---|---|---|
author | Ming Xia <xiaming@apache.org> | Wed May 02 06:39:14 2012 +0000 |
committer | Ming Xia <xiaming@apache.org> | Wed May 02 06:39:14 2012 +0000 |
tree | 6bc4c9148a679e8ad392977dea2ff88b1536a51e | |
parent | 54dc7b2e79e5354157149bb49cbef1066b178bf3 [diff] |
GERONIMO-6340 transform %7c back to | when writing back URL in a form to work around IE URL length limitation, for trunk git-svn-id: https://svn.apache.org/repos/asf/geronimo/server/trunk@1332928 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/plugins/console/console-portal-driver/src/main/java/org/apache/geronimo/console/filter/PlutoURLRebuildFilter.java b/plugins/console/console-portal-driver/src/main/java/org/apache/geronimo/console/filter/PlutoURLRebuildFilter.java index aac439e..4fd12a7 100644 --- a/plugins/console/console-portal-driver/src/main/java/org/apache/geronimo/console/filter/PlutoURLRebuildFilter.java +++ b/plugins/console/console-portal-driver/src/main/java/org/apache/geronimo/console/filter/PlutoURLRebuildFilter.java
@@ -113,7 +113,14 @@ // For IE could not handler the url of the length more than 2048 // Currently we only handler the location is begin with '/', which means that it should be an absolute path // For the location does not contain the http://server:port/, we use 1900 instead of 2048 + + location = location.replaceAll("%7C", "|"); + if (location.charAt(0) == '/' && location.length() > 1900) { + + if (location.endsWith("?")) + location = location.substring(0, location.length()-1); + PrintWriter writer = getWriter(); writer .write("<html><head></head><body onload='document.hform.submit()'><form name='hform' method='POST' action='");