You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2014/08/02 17:42:59 UTC

svn commit: r1615323 - in /jena/Experimental/jena-fuseki2/src/main: java/org/apache/jena/fuseki/servlets/FusekiFilter.java webapp/js/app/models/fuseki-server.js

Author: andy
Date: Sat Aug  2 15:42:59 2014
New Revision: 1615323

URL: http://svn.apache.org/r1615323
Log:
Catch URIs with context path in the Fuseki server filter

Modified:
    jena/Experimental/jena-fuseki2/src/main/java/org/apache/jena/fuseki/servlets/FusekiFilter.java
    jena/Experimental/jena-fuseki2/src/main/webapp/js/app/models/fuseki-server.js

Modified: jena/Experimental/jena-fuseki2/src/main/java/org/apache/jena/fuseki/servlets/FusekiFilter.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-fuseki2/src/main/java/org/apache/jena/fuseki/servlets/FusekiFilter.java?rev=1615323&r1=1615322&r2=1615323&view=diff
==============================================================================
--- jena/Experimental/jena-fuseki2/src/main/java/org/apache/jena/fuseki/servlets/FusekiFilter.java (original)
+++ jena/Experimental/jena-fuseki2/src/main/java/org/apache/jena/fuseki/servlets/FusekiFilter.java Sat Aug  2 15:42:59 2014
@@ -24,13 +24,16 @@ import javax.servlet.* ;
 import javax.servlet.http.HttpServletRequest ;
 import javax.servlet.http.HttpServletResponse ;
 
+import org.apache.jena.fuseki.Fuseki ;
 import org.apache.jena.fuseki.server.DataAccessPointRegistry ;
+import org.slf4j.Logger ;
 
 /** Look at all requests and see if they match a registered dataset name; 
  * if they do, pass down to the uber servlet, which can dispatch any request
  * for any service. 
  */
 public class FusekiFilter implements Filter {
+    private static Logger log = Fuseki.serverLog ;
     private static SPARQL_UberServlet überServlet = new SPARQL_UberServlet.AccessByConfig() ;
     
     @Override
@@ -39,6 +42,8 @@ public class FusekiFilter implements Fil
 //        log.info("Filter: ["+Utils.className(this)+"] ContextPath        = "+filterConfig.getServletContext().getContextPath()) ;
     }
 
+    private static final boolean LogFilter = false ;     // Development debugging (can be excessive!)
+    
     @Override
     public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
         throws IOException, ServletException {
@@ -46,27 +51,31 @@ public class FusekiFilter implements Fil
             HttpServletRequest req = (HttpServletRequest)request ;
             HttpServletResponse resp = (HttpServletResponse)response ;
 
-            String x = request.getServletContext().getContextPath() ;
+            // Handle context path
             String uri = ActionLib.actionURI(req) ;
             String datasetUri = ActionLib.mapActionRequestToDataset(uri) ;
 
             // is it a long running operation?
             // (this could be a separate filter)
             
-            // is it a request to a DataService via an access point.
-            if ( x != null )
-                datasetUri = datasetUri.substring(x.length()) ;
+            if ( LogFilter ) {
+                log.info("Filter: Request URI = "+req.getRequestURI()) ;
+                log.info("Filter: Action URI  = "+uri) ;
+                log.info("Filter: Dataset URI = "+datasetUri) ;
+            }
             
             if ( datasetUri != null ) {        
                 if ( DataAccessPointRegistry.get().isRegistered(datasetUri) ) {
-                    // Intercept and redirect
-                    //log.info("Redirect: "+uri);
+                    if ( LogFilter )
+                        log.info("Filter: dispatch") ;
                     überServlet.doCommon(req, resp) ;
                     return ;
                 }
             }
         } catch (Exception ex) {}
         
+        if ( LogFilter )
+            log.info("Filter: pass to chain") ;
         // Not found - continue. 
         chain.doFilter(request, response);
     }

Modified: jena/Experimental/jena-fuseki2/src/main/webapp/js/app/models/fuseki-server.js
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-fuseki2/src/main/webapp/js/app/models/fuseki-server.js?rev=1615323&r1=1615322&r2=1615323&view=diff
==============================================================================
--- jena/Experimental/jena-fuseki2/src/main/webapp/js/app/models/fuseki-server.js (original)
+++ jena/Experimental/jena-fuseki2/src/main/webapp/js/app/models/fuseki-server.js Sat Aug  2 15:42:59 2014
@@ -140,4 +140,4 @@ define(
 
     return FusekiServer;
   }
-);
\ No newline at end of file
+);