Update of /var/cvs/src/org/mmbase/servlet
In directory james.mmbase.org:/tmp/cvs-serv16732/src/org/mmbase/servlet
Modified Files:
Tag: MMBase-1_8
BridgeServlet.java
Log Message:
Refactor: Extract method for QueryParts based on requestURI
See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/servlet
Index: BridgeServlet.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/servlet/BridgeServlet.java,v
retrieving revision 1.32
retrieving revision 1.32.2.1
diff -u -b -r1.32 -r1.32.2.1
--- BridgeServlet.java 14 Jul 2006 15:30:24 -0000 1.32
+++ BridgeServlet.java 3 Apr 2008 13:57:37 -0000 1.32.2.1
@@ -36,7 +36,7 @@
* but /img.db). Normally this is no problem, because the alias is resolved by
the image-tag. But if
* for some reason you need aliases to be working on the URL, you must map to
URL's with a question mark.
*
- * @version $Id: BridgeServlet.java,v 1.32 2006/07/14 15:30:24 michiel Exp $
+ * @version $Id: BridgeServlet.java,v 1.32.2.1 2008/04/03 13:57:37 nklasens
Exp $
* @author Michiel Meeuwissen
* @since MMBase-1.6
*/
@@ -100,8 +100,35 @@
String q = req.getQueryString();
- String fileNamePart;
if (q == null || "".equals(q)) { // should be null if no query string,
but http://issues.apache.org/bugzilla/show_bug.cgi?id=38113, there is version
of tomcat in which it isn't.
+ qp = readQueryFromRequestURI(req, res);
+ } else {
+ if(log.isDebugEnabled()) {
+ log.debug("using query " + q + " to find node number");
+ }
+ // attachment.db?[session=abc+]number
+ qp = readQuery(q);
+ if (qp == null && res != null) {
+ res.sendError(HttpServletResponse.SC_BAD_REQUEST, "Malformed
URL: No node number found after session.");
+ req.setAttribute(MESSAGE_ATTRIBUTE, "Malformed URL: No node
number found after session.");
+ }
+
+ }
+
+ if (qp == null) return null;
+
+ qp.setRequest(req);
+ qp.setResponse(res);
+
+ req.setAttribute("org.mmbase.servlet.BridgeServlet$QueryParts", qp);
+ return qp;
+ }
+
+
+
+ protected QueryParts readQueryFromRequestURI(HttpServletRequest req,
HttpServletResponse res)
+ throws IOException {
+ QueryParts qp;
// also possible to use
/attachments/[session=abc+]<number>/filename.pdf
if (contextPathLength == -1) {
contextPathLength = req.getContextPath().length();
@@ -134,25 +161,6 @@
log.debug("found " + qp);
}
}
- } else {
- if(log.isDebugEnabled()) {
- log.debug("using query " + q + " to find node number");
- }
- // attachment.db?[session=abc+]number
- qp = readQuery(q);
- if (qp == null && res != null) {
- res.sendError(HttpServletResponse.SC_BAD_REQUEST, "Malformed
URL: No node number found after session.");
- req.setAttribute(MESSAGE_ATTRIBUTE, "Malformed URL: No node
number found after session.");
- }
-
- }
-
- if (qp == null) return null;
-
- qp.setRequest(req);
- qp.setResponse(res);
-
- req.setAttribute("org.mmbase.servlet.BridgeServlet$QueryParts", qp);
return qp;
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs