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
+);