X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;ds=sidebyside;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fkernel%2FNodeHttp.java;h=f0fbe461a1dfc8ecc5d5c5be3862c60587d48983;hb=759a7c0396796565b231738b855c8b0a8413be6b;hp=490a1134f4f19ffac9d9ca4ac0ee730389c6bcd5;hpb=b894473914eac5636370399d84c1806908249264;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/internal/kernel/NodeHttp.java b/org.argeo.cms/src/org/argeo/cms/internal/kernel/NodeHttp.java index 490a1134f..f0fbe461a 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/kernel/NodeHttp.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/kernel/NodeHttp.java @@ -23,7 +23,6 @@ import org.argeo.jackrabbit.servlet.WebdavServlet; import org.argeo.jcr.ArgeoJcrConstants; import org.eclipse.equinox.http.servlet.ExtendedHttpService; import org.eclipse.jetty.servlets.DoSFilter; -import org.eclipse.jetty.servlets.QoSFilter; import org.osgi.framework.BundleContext; import org.osgi.service.http.NamespaceException; import org.osgi.util.tracker.ServiceTracker; @@ -53,8 +52,8 @@ class NodeHttp implements KernelConstants, ArgeoJcrConstants { // Filters private final RootFilter rootFilter; - private final DoSFilter dosFilter; - private final QoSFilter qosFilter; + // private final DoSFilter dosFilter; + // private final QoSFilter qosFilter; // remoting private OpenInViewSessionProvider sessionProvider; @@ -84,8 +83,8 @@ class NodeHttp implements KernelConstants, ArgeoJcrConstants { // Filters rootFilter = new RootFilter(); - dosFilter = new CustomDosFilter(); - qosFilter = new QoSFilter(); + // dosFilter = new CustomDosFilter(); + // qosFilter = new QoSFilter(); // DAV sessionProvider = new OpenInViewSessionProvider(); @@ -106,9 +105,9 @@ class NodeHttp implements KernelConstants, ArgeoJcrConstants { registerRemotingServlet(PATH_REMOTING_PRIVATE, ALIAS_NODE, false, privateRemotingServlet); - httpService.registerFilter("/", dosFilter, null, null); + // httpService.registerFilter("/", dosFilter, null, null); httpService.registerFilter("/", rootFilter, null, null); - httpService.registerFilter("/", qosFilter, null, null); + // httpService.registerFilter("/", qosFilter, null, null); } catch (Exception e) { throw new CmsException("Cannot publish HTTP services to OSGi", e); } @@ -230,9 +229,11 @@ class NodeHttp implements KernelConstants, ArgeoJcrConstants { } // redirect long RWT paths to anchor - String path = request.getRequestURI() - .substring(servletPath.length()).trim(); - if (!servletPath.endsWith("rwt-resources") && !path.equals("") + String path = request.getRequestURI().substring( + servletPath.length()); + int pathLength = path.length(); + if (pathLength != 0 && (path.charAt(0) == '/') + && !servletPath.endsWith("rwt-resources") && !path.equals("/")) { String newLocation = request.getServletPath() + "#" + path; response.setHeader("Location", newLocation);