From f4a79ccd85d6175cef27e081628dd013a0b6d77e Mon Sep 17 00:00:00 2001 From: ulrich <undisclosed> Date: Mon, 28 Nov 2016 22:06:44 +0000 Subject: [PATCH] NiceFilter --- src/java/de/uhilger/um/web/NiceFilter.java | 43 +++++++++++++++++++++ web/WEB-INF/web.xml | 16 ++++++++ web/ui/user.jsp | 1 web/show.jsp | 26 +++++++++++++ 4 files changed, 85 insertions(+), 1 deletions(-) diff --git a/src/java/de/uhilger/um/web/NiceFilter.java b/src/java/de/uhilger/um/web/NiceFilter.java new file mode 100644 index 0000000..61d5a39 --- /dev/null +++ b/src/java/de/uhilger/um/web/NiceFilter.java @@ -0,0 +1,43 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package de.uhilger.um.web; + +import java.io.IOException; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServletRequest; + +/** + * + * @author hilgeru + */ +public class NiceFilter implements Filter { + + @Override + public void init(FilterConfig filterConfig) throws ServletException { + // ... + } + + @Override + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { + if(request instanceof HttpServletRequest) { + HttpServletRequest hr = (HttpServletRequest) request; + String servletPath = hr.getServletPath(); + String[] path = servletPath.split("/"); + request.getRequestDispatcher("../api?c=de.uhilger.um.api.UserMgr&m=" + path[2]).forward(request, response); + } + } + + @Override + public void destroy() { + // ... + } + +} diff --git a/web/WEB-INF/web.xml b/web/WEB-INF/web.xml index 3187293..eb731ab 100644 --- a/web/WEB-INF/web.xml +++ b/web/WEB-INF/web.xml @@ -5,6 +5,14 @@ <param-name>dsname</param-name> <param-value>jdbc/NewUserDB</param-value> </context-param> + <filter> + <filter-name>NiceFilter</filter-name> + <filter-class>de.uhilger.um.web.NiceFilter</filter-class> + </filter> + <filter-mapping> + <filter-name>NiceFilter</filter-name> + <url-pattern>/svc/*</url-pattern> + </filter-mapping> <listener> <listener-class>de.uhilger.um.App</listener-class> </listener> @@ -16,10 +24,18 @@ <param-value>de.uhilger.um.api</param-value> </init-param> </servlet> + <servlet> + <servlet-name>TestServlet</servlet-name> + <jsp-file>/show.jsp</jsp-file> + </servlet> <servlet-mapping> <servlet-name>TransitServlet</servlet-name> <url-pattern>/api</url-pattern> </servlet-mapping> + <servlet-mapping> + <servlet-name>TestServlet</servlet-name> + <url-pattern>/test/*</url-pattern> + </servlet-mapping> <session-config> <session-timeout> 30 diff --git a/web/show.jsp b/web/show.jsp new file mode 100644 index 0000000..47eea25 --- /dev/null +++ b/web/show.jsp @@ -0,0 +1,26 @@ +<%@page contentType="text/html" pageEncoding="UTF-8"%> +<!DOCTYPE html> +<html> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> + <title>um Werte</title> + </head> + <body> + <p>Werte</p> + <p>pathInfo: <%=request.getPathInfo()%></p> + <p>requestURL <%=request.getRequestURL()%></p> + <p>contextPath <%=request.getContextPath()%></p> + <p>servletPath <%=request.getServletPath()%></p> + <p> + <% + String pathInfo = request.getPathInfo(); + String[] path = pathInfo.split("/"); + for(int i = 0; i < path.length; i++) { + %> + <p>path[<%=i%>]: <%=path[i]%></p> + <% + } + %> + </p> + </body> +</html> diff --git a/web/ui/user.jsp b/web/ui/user.jsp index baa8319..39620e5 100644 --- a/web/ui/user.jsp +++ b/web/ui/user.jsp @@ -22,7 +22,6 @@ <button class="user-save-btn">OK</button> </div> <script src="/jslib/jquery-1.11.1/jquery-1.11.1.min.js"></script> - <script src="/jslib/jquery-1.11.1/jquery-1.11.1.min.js"></script> <script src="ui.js"></script> <script type="text/javascript" charset="utf-8"> //var ui; -- Gitblit v1.9.3