gianugo     2002/12/13 01:02:19

  Modified:    java/src/org/apache/xindice/server XindiceServlet.java
  Log:
  Patch  by Michael Westbay ([EMAIL PROTECTED]) removing hardcoded paths from 
the debug tool.
  
  Revision  Changes    Path
  1.10      +15 -9     
xml-xindice/java/src/org/apache/xindice/server/XindiceServlet.java
  
  Index: XindiceServlet.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xindice/java/src/org/apache/xindice/server/XindiceServlet.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- XindiceServlet.java       30 Nov 2002 18:32:07 -0000      1.9
  +++ XindiceServlet.java       13 Dec 2002 09:02:19 -0000      1.10
  @@ -263,21 +263,23 @@
                        HttpServletResponse response)
            throws ServletException, IOException {
         try {
  +      String contextPath = request.getContextPath();
            StringBuffer sb = new StringBuffer();
            String path = request.getQueryString();
            sb.append("<html><body><center>");
            if (path == null) {
               sb.append("<h2>THIS IS AN UGLY DEBUG TOOL!</h2><p>");
               sb.append("To browse the database, follow the link ");
  -            sb.append("<a href=\"Xindice?/" + db.getName() + "\">" + 
db.getName() + "</a>");
  +            sb.append("<a href=\"" + contextPath + "?/" +
  +            db.getName() + "\">" + db.getName() + "</a>");
            } else {
               // we have something to chew on
               XPathPseudoParser parser = new XPathPseudoParser(path);
   
               /* building the page once we have all the information */
               sb.append("<table border=\"1\" width=\"90%\">");
  -            sb.append("<tr><td rowspan=\"1\" colspan=\"2\">" + 
getPathNavigation(parser) + "</td></tr>");
  -            sb.append("<tr><td valign=\"top\">" + getHierarchy(parser) + 
"</td>");
  +            sb.append("<tr><td rowspan=\"1\" colspan=\"2\">" + 
getPathNavigation(parser, contextPath) + "</td></tr>");
  +            sb.append("<tr><td valign=\"top\">" + getHierarchy(parser, 
contextPath) + "</td>");
               sb.append("<td valign=\"top\">" + getDetailView(parser) + 
"</td></tr>");
               sb.append("</table>");
            }
  @@ -297,11 +299,12 @@
         }
      }
   
  -   protected String getPathNavigation(XPathPseudoParser parser) {
  +   protected String getPathNavigation(XPathPseudoParser parser,
  +                                      String contextPath) {
         String path = parser.getQuery();
         StringBuffer result = new StringBuffer();
         StringTokenizer st = new StringTokenizer(path, "/");
  -      String currentPath = "<a href=\"Xindice?";
  +      String currentPath = "<a href=\"" + contextPath + "?";
         while (st.hasMoreTokens()) {
            String token = st.nextToken();
            if (token.indexOf("&") > 0) {
  @@ -314,7 +317,8 @@
         return result.toString();
      }
   
  -   protected String getHierarchy(XPathPseudoParser parser)
  +   protected String getHierarchy(XPathPseudoParser parser,
  +                                 String contextPath)
            throws DBException, Exception {
         StringBuffer result = new StringBuffer();
   
  @@ -334,7 +338,8 @@
   
         String[] cols = col.listCollections();
         for (int i = 0; i < cols.length; i++) {
  -         result.append("<a href=\"Xindice?" + parser.getDatabase() + "/" + 
parser.getPath());
  +         result.append("<a href=\"" + contextPath + "?" +
  +            parser.getDatabase() + "/" + parser.getPath());
            result.append("/");
            result.append(cols[i]);
            result.append("\">");
  @@ -345,7 +350,8 @@
         try {
            String[] docs = col.listDocuments();
            for (int i = 0; i < docs.length; i++) {
  -            result.append("<a href=\"Xindice?" + parser.getDatabase() + "/" 
+ parser.getPath());
  +            result.append("<a href=\"" + contextPath + "?" +
  +               parser.getDatabase() + "/" + parser.getPath());
               result.append("&");
               result.append(docs[i]);
               result.append("\">");
  
  
  

Reply via email to