java类javax.servlet.ServletRequest的实例源码

JwtFilter.java 文件源码 项目:IPPR2016 阅读 39 收藏 0 点赞 0 评论 0
@Override
public void doFilter(final ServletRequest req, final ServletResponse res, final FilterChain chain)
    throws IOException, ServletException {
  final HttpServletRequest request = (HttpServletRequest) req;

  final String authHeader = request.getHeader("Authorization");
  if (authHeader == null || !authHeader.startsWith("Bearer ")) {
    ExceptionUtils.createUnauthorizedException("Missing or invalid Authorization header.", res);
    return;
  }

  try {
    final String token = authHeader.substring(7); // The part after "Bearer "
    final Claims claims =
        Jwts.parser().setSigningKey("secretkey").parseClaimsJws(token).getBody();
    request.setAttribute("claims", claims);
  } catch (final Exception e) {
    ExceptionUtils.createUnauthorizedException("Invalid token", res);
    return;
  }

  chain.doFilter(req, res);
}
AuthorizationFilter.java 文件源码 项目:oscm 阅读 32 收藏 0 点赞 0 评论 0
private void send401(ServletRequest httpRequest,
        HttpServletResponse httpResponse, HttpSession session, boolean asTM) {
    // Return 401 error
    String clientLocale = httpRequest.getLocale().getLanguage();
    if (clientLocale.equals(LOCALE_JA)) {
        clientLocale = LOCALE_DEFAULT;
    }
    httpResponse.setHeader(
            "WWW-Authenticate",
            "Basic realm=\""
                    + Messages.get(clientLocale,
                            (asTM ? "ui.config.authentication.tm"
                                    : "ui.config.authentication.appadmin"))
                    + "\"");
    httpResponse.setStatus(401);
    session.invalidate();

}
MediaSecurityFilter.java 文件源码 项目:logistimo-web-service 阅读 31 收藏 0 点赞 0 评论 0
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)
    throws IOException, ServletException {

  HttpServletRequest req = (HttpServletRequest) request;
  HttpServletResponse resp = (HttpServletResponse) response;
  String servletPath = req.getServletPath() + req.getPathInfo();
  xLogger.fine("Servlet path: ", servletPath);
  if (req.getCharacterEncoding() == null) {
    request.setCharacterEncoding(Constants.UTF8);
  }

  if (!(StringUtils.isNotBlank(servletPath) && servletPath.startsWith(MEDIA_ENDPOINT_URL))) {
    resp.sendError(HttpServletResponse.SC_NOT_FOUND);
    return;
  }
  if (filterChain != null) {
    filterChain.doFilter(request, response);
  }
}
ApplicationDispatcher.java 文件源码 项目:lazycat 阅读 27 收藏 0 点赞 0 评论 0
@Override
public void dispatch(ServletRequest request, ServletResponse response) throws ServletException, IOException {
    if (Globals.IS_SECURITY_ENABLED) {
        try {
            PrivilegedDispatch dp = new PrivilegedDispatch(request, response);
            AccessController.doPrivileged(dp);
        } catch (PrivilegedActionException pe) {
            Exception e = pe.getException();

            if (e instanceof ServletException)
                throw (ServletException) e;
            throw (IOException) e;
        }
    } else {
        doDispatch(request, response);
    }
}
XSSFilter.java 文件源码 项目:unitimes 阅读 29 收藏 0 点赞 0 评论 0
/**
   * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest,
   *      javax.servlet.ServletResponse, javax.servlet.FilterChain)
   */
  public void doFilter( ServletRequest request, 
                      ServletResponse response,
                      FilterChain chain ) throws IOException, ServletException {

      // Get Filter Init Parameters
      String replaceStrParam = filterConfig.getInitParameter("replace_string");
      String addlCharsParam = filterConfig.getInitParameter("additional_chars");

      // Set variables
      if(replaceStrParam!=null)
          replaceStr = replaceStrParam;
      if(addlCharsParam!=null)
          addlChars = addlCharsParam;

      // Construct allowed characters pattern
      String charPattern = "([^" + charsAllowed + addlChars + "]+)(%0A)";        

      // Instantiate actual filter
      RequestXSSFilter rxs = new RequestXSSFilter( 
              (HttpServletRequest) request, replaceStr, charPattern);

// Process request
chain.doFilter(rxs,response);

  }
ApplicationRequest.java 文件源码 项目:lams 阅读 33 收藏 0 点赞 0 评论 0
/**
 * Set the request that we are wrapping.
 *
 * @param request The new wrapped request
 */
public void setRequest(ServletRequest request) {

    super.setRequest(request);

    // Initialize the attributes for this request
    synchronized (attributes) {
        attributes.clear();
        Enumeration names = request.getAttributeNames();
        while (names.hasMoreElements()) {
            String name = (String) names.nextElement();
            Object value = request.getAttribute(name);
            attributes.put(name, value);
        }
    }

}
PageFilter.java 文件源码 项目:BasicsProject 阅读 29 收藏 0 点赞 0 评论 0
/**这个方法完成实际的过滤操作。当客户请求访问与过滤器关联的URL的时候,Servlet过滤器将先执行doFilter方法。FilterChain参数用于访问后续过滤器。*/
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
        HttpServletRequest httpRequest = (HttpServletRequest) request;
        HttpServletResponse httpResponse = (HttpServletResponse) response;

        //忽略不过滤页面
        if(!Statics.ignore_login_page.contains(httpRequest.getServletPath())){
            long memberId = StorageUtil.init(httpRequest.getSession()).getLoginMemberId();
            if(memberId==ReturnUtil.NOT_LOGIN_CODE){
                String url = httpRequest.getScheme()+"://"+httpRequest.getServerName()+":"+httpRequest.getServerPort()+httpRequest.getContextPath();
                DataUtil.OutStreamByResponse(httpResponse, "<script type='text/javascript'>top.location.href= '"+url+Statics.Login_Page+"';</script>");
                return;
            }
        }
        chain.doFilter(request, response);
//      httpRequest.getScheme();//协议类型          http
//      httpRequest.getServerName();//域名        mycdsxlc.f3322.net
//      httpRequest.getServerPort();//端口号       8989
//      httpRequest.getContextPath();//项目名      /Report
//      httpRequest.getServletPath();//请求页面 /web/index.jsp
//      httpRequest.getQueryString();//参数       null
    }
SafeDispatcherServlet.java 文件源码 项目:cas4.0.x-server-wechat 阅读 45 收藏 0 点赞 0 评论 0
/**
 * {@inheritDoc}
 * @throws ApplicationContextException if the DispatcherServlet does not
 * initialize properly, but the servlet attempts to process a request.
 */
@Override
public void service(final ServletRequest req, final ServletResponse resp)
    throws ServletException, IOException {
    /*
     * Since our container calls only this method and not any of the other
     * HttpServlet runtime methods, such as doDelete(), etc., delegating
     * this method is sufficient to delegate all of the methods in the
     * HttpServlet API.
     */
    if (this.initSuccess) {
        this.delegate.service(req, resp);
    } else {
        throw new ApplicationContextException("Unable to initialize application context.");
    }
}
ExampleFilter.java 文件源码 项目:parabuild-ci 阅读 32 收藏 0 点赞 0 评论 0
/**
    * Time the processing that is performed by all subsequent filters in the
    * current filter stack, including the ultimately invoked servlet.
    *
    * @param request The servlet request we are processing
    * @param result The servlet response we are creating
    * @param chain The filter chain we are processing
    *
    * @exception IOException if an input/output error occurs
    * @exception ServletException if a servlet error occurs
    */
   public void doFilter(ServletRequest request, ServletResponse response,
                        FilterChain chain)
throws IOException, ServletException {

// Store ourselves as a request attribute (if requested)
if (attribute != null)
    request.setAttribute(attribute, this);

// Time and log the subsequent processing
long startTime = System.currentTimeMillis();
       chain.doFilter(request, response);
long stopTime = System.currentTimeMillis();
filterConfig.getServletContext().log
    (this.toString() + ": " + (stopTime - startTime) +
     " milliseconds");

   }
AdminFilter.java 文件源码 项目:DDNS_Server 阅读 31 收藏 0 点赞 0 评论 0
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
    HttpServletRequest request = (HttpServletRequest) req;
    HttpServletResponse response = (HttpServletResponse) res;
    HttpSession session = request.getSession(false);

    if (session == null || session.getAttribute("LoggedUser") == null) {
        response.sendRedirect(request.getContextPath() + "/index.jsp"); // No logged-in user found, so redirect to login page.
    } else {
        DynUser currentUser = (DynUser) session.getAttribute("LoggedUser");
        if (!currentUser.isAdmin()) {
            response.sendRedirect(request.getContextPath() + "/app/dashboard.jsp"); // No admin user found, so redirect to dashboard page.
        } else {            
            chain.doFilter(req, res); // Logged-in user found, so just continue request.
        }
    }
}
HeaderLoggerValve.java 文件源码 项目:jerrydog 阅读 32 收藏 0 点赞 0 评论 0
@Override
public void invoke(Request request, Response response, ValveContext valveContext) throws IOException, ServletException {
    valveContext.invokeNext(request, response);

    System.out.println("Header Logger Valve:");
    ServletRequest sreq = request.getRequest();
    if(sreq instanceof HttpServletRequest){
        HttpServletRequest hreq = (HttpServletRequest) sreq;
        Enumeration<String> headerNames = hreq.getHeaderNames();
        while (headerNames.hasMoreElements()){
            String headerName = headerNames.nextElement().toString();
            String headerValue = hreq.getHeader(headerName);
            System.out.println(headerName + ": " + headerValue);
        }
    }else {
        System.out.println("Not an HTTP Request");
    }
    System.out.println("-------------------------------------");
}
HTTPBasicAuth.java 文件源码 项目:fuck_zookeeper 阅读 37 收藏 0 点赞 0 评论 0
@Override
public void doFilter(ServletRequest req0, ServletResponse resp0,
        FilterChain chain) throws IOException, ServletException {

    HttpServletRequest request = (HttpServletRequest) req0;
    HttpServletResponse response = (HttpServletResponse) resp0;

    String authorization = request.getHeader("Authorization");
    if (authorization != null) {
        String c[] = parseAuthorization(authorization);
        if (c != null && credentials.containsKey(c[0])
                && credentials.get(c[0]).equals(c[1])) {
            chain.doFilter(request, response);
            return;
        }
    }

    response.setHeader("WWW-Authenticate", "Basic realm=\"Restricted\"");
    response.sendError(401);
}
CheckSessionOutFilter.java 文件源码 项目:ssm-web 阅读 29 收藏 0 点赞 0 评论 0
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    HttpServletRequest hsrq = (HttpServletRequest) request;
    HttpServletResponse hsrp = (HttpServletResponse) response;
    String clientType = hsrq.getParameter("clientType");
    if ("WORD".equals(clientType)) {
        chain.doFilter(request, response);
    } else {
        SessionUser person = null;
        String reqPage = hsrq.getServletPath();
        if (!reqPage.trim().equals("/login.do") && !reqPage.trim().equals("/logout.do")
                ) {
            person = (SessionUser) hsrq.getSession().getAttribute(SysConstants.SESSION_USER_KEY);
            if (person == null) {
                hsrp.sendRedirect("login.do");
                return;
            }
        }
        chain.doFilter(request, response);
    }

}
AsyncContextImpl.java 文件源码 项目:lams 阅读 42 收藏 0 点赞 0 评论 0
public AsyncContextImpl(final HttpServerExchange exchange, final ServletRequest servletRequest, final ServletResponse servletResponse, final ServletRequestContext servletRequestContext, boolean requestSupplied, final AsyncContextImpl previousAsyncContext) {
    this.exchange = exchange;
    this.servletRequest = servletRequest;
    this.servletResponse = servletResponse;
    this.servletRequestContext = servletRequestContext;
    this.requestSupplied = requestSupplied;
    this.previousAsyncContext = previousAsyncContext;
    initiatingThread = Thread.currentThread();
    exchange.dispatch(SameThreadExecutor.INSTANCE, new Runnable() {
        @Override
        public void run() {
            exchange.setDispatchExecutor(null);
            initialRequestDone();
        }
    });
}
AuthorizationFilterTest.java 文件源码 项目:oscm 阅读 45 收藏 0 点赞 0 评论 0
@Test
public void handleChangeUserPasswordRequest_errorAccountNotLocked()
        throws Exception {
    // given
    doReturn(Boolean.TRUE).when(authReqDataMock).isRequestedToChangePwd();
    doReturn("secret").when(authReqDataMock).getNewPassword();
    doReturn("secret").when(authReqDataMock).getNewPassword2();
    doReturn(userDetails).when(identityServiceMock).getUser(
            any(VOUser.class));
    doReturn("error.changePassword").when(requestMock).getAttribute(
            Constants.REQ_ATTR_ERROR_KEY);

    // when
    boolean result = authFilter
            .handleChangeUserPasswordRequest(chainMock, requestMock,
                    responseMock, authReqDataMock, identityServiceMock);

    // then
    assertFalse("Unsuccessful password change", result);
    verify(authFilter, never()).sendRedirect(any(HttpServletRequest.class),
            any(HttpServletResponse.class), anyString());
    verify(chainMock, times(2)).doFilter(any(ServletRequest.class),
            any(ServletResponse.class));
}
AuthorizationFilterTest.java 文件源码 项目:oscm 阅读 44 收藏 0 点赞 0 评论 0
@Before
public void setup() throws Exception {

    requestMock = mock(HttpServletRequest.class);
    responseMock = mock(HttpServletResponse.class);
    chainMock = mock(FilterChain.class);
    authReqDataMock = mock(AuthorizationRequestData.class);
    authSettingsMock = mock(AuthenticationSettings.class);

    authFilter = spy(new AuthorizationFilter());
    authFilter.authSettings = authSettingsMock;

    doReturn(authReqDataMock).when(authFilter).initializeRequestDataObject(
            any(HttpServletRequest.class));

    userDetails = createCustomer();
    identityServiceMock = mock(IdentityService.class);
    serviceAccessMock = mock(ServiceAccess.class);
    doReturn(userDetails).when(identityServiceMock).getCurrentUserDetails();
    doReturn(identityServiceMock).when(serviceAccessMock).getService(
            IdentityService.class);
    doNothing().when(authFilter).forward(any(String.class),
            any(ServletRequest.class), any(ServletResponse.class));

}
OAuth2Filter.java 文件源码 项目:renren-fast 阅读 35 收藏 0 点赞 0 评论 0
@Override
protected boolean onLoginFailure(AuthenticationToken token, AuthenticationException e, ServletRequest request, ServletResponse response) {
    HttpServletResponse httpResponse = (HttpServletResponse) response;
    httpResponse.setContentType("application/json;charset=utf-8");
    try {
        //处理登录失败的异常
        Throwable throwable = e.getCause() == null ? e : e.getCause();
        R r = R.error(HttpStatus.SC_UNAUTHORIZED, throwable.getMessage());

        String json = new Gson().toJson(r);
        httpResponse.getWriter().print(json);
    } catch (IOException e1) {

    }

    return false;
}
ExampleFilter.java 文件源码 项目:apache-tomcat-7.0.73-with-comment 阅读 38 收藏 0 点赞 0 评论 0
/**
 * Time the processing that is performed by all subsequent filters in the
 * current filter stack, including the ultimately invoked servlet.
 *
 * @param request The servlet request we are processing
 * @param response The servlet response we are creating
 * @param chain The filter chain we are processing
 *
 * @exception IOException if an input/output error occurs
 * @exception ServletException if a servlet error occurs
 */
@Override
public void doFilter(ServletRequest request, ServletResponse response,
                     FilterChain chain)
    throws IOException, ServletException {

    // Store ourselves as a request attribute (if requested)
    if (attribute != null)
        request.setAttribute(attribute, this);

    // Time and log the subsequent processing
    long startTime = System.currentTimeMillis();
    chain.doFilter(request, response);
    long stopTime = System.currentTimeMillis();
    filterConfig.getServletContext().log
        (this.toString() + ": " + (stopTime - startTime) +
         " milliseconds");

}
HttpMethodFilter.java 文件源码 项目:oscm 阅读 25 收藏 0 点赞 0 评论 0
@Override
public void doFilter(ServletRequest request, ServletResponse response,
        FilterChain chain) throws IOException, ServletException {

    if (!(request instanceof HttpServletRequest)
            || !(response instanceof HttpServletResponse)) {
        response.getWriter().print(HttpServletResponse.SC_UNAUTHORIZED);
        return;
    }

    HttpServletRequest httpRequest = (HttpServletRequest) request;
    String method = httpRequest.getMethod();
    if (forbiddenHttpMethods.contains(method)) {
        HttpServletResponse httpResponse = (HttpServletResponse) response;
        httpResponse.sendError(HttpServletResponse.SC_FORBIDDEN, method
                + " not allowed.");
        return;
    }

    chain.doFilter(request, response);
}
RoleFilter.java 文件源码 项目:webside 阅读 24 收藏 0 点赞 0 评论 0
@Override
protected boolean onAccessDenied(ServletRequest request,
        ServletResponse response) throws Exception {

        Subject subject = getSubject(request, response);  
        if (subject.getPrincipal() == null) {//表示没有登录,重定向到登录页面  
            saveRequest(request);  
            WebUtils.issueRedirect(request, response, ShiroUtils.LOGIN_URL);  
        } else {  
            if(ShiroUtils.isAjax(request)){
                Map<String, Object> result = new HashMap<String, Object>();
                result.put("status", "401");
                result.put("message", "sorry,您没有权限");
                result.put("url", ShiroUtils.UNAUTHORIZED);
                ShiroUtils.writeJson(response, result);
            }else
            {
                if (StringUtils.hasText(ShiroUtils.UNAUTHORIZED)) {//如果有未授权页面跳转过去  
                    WebUtils.issueRedirect(request, response, ShiroUtils.UNAUTHORIZED);  
                } else {//否则返回401未授权状态码  
                    WebUtils.toHttp(response).sendError(HttpServletResponse.SC_UNAUTHORIZED);  
                } 
            }
        }  
    return false;
}
FormAuthenticationWithLockFilter.java 文件源码 项目:DWSurvey 阅读 29 收藏 0 点赞 0 评论 0
@Override
public boolean executeLogin(ServletRequest request, ServletResponse response) throws Exception {
    AuthenticationToken token = createToken(request, response);
    if (token == null) {
        String msg = "createToken method implementation returned null. A valid non-null AuthenticationToken "
                + "must be created in order to execute a login attempt.";
        throw new IllegalStateException(msg);
    }
    if (checkIfAccountLocked(request)) {
        return onLoginFailure(token, new ExcessiveAttemptsException(), request, response);
    } else {
        if (!doLogin(request, response, token)) {
            resetAccountLock(getUsername(request));
            return false;
        }
        return true;
    }
}
WebUtils.java 文件源码 项目:atbash-octopus 阅读 33 收藏 0 点赞 0 评论 0
/**
 * Redirects the to the request url from a previously
 * {@link #saveRequest(ServletRequest) saved} request, or if there is no saved request, redirects the
 * end user to the specified {@code fallbackUrl}.  If there is no saved request or fallback url, this method
 * throws an {@link IllegalStateException}.
 * <p/>
 * This method is primarily used to support a common login scenario - if an unauthenticated user accesses a
 * page that requires authentication, it is expected that request is
 * {@link #saveRequest(ServletRequest) saved} first and then redirected to the login page. Then,
 * after a successful login, this method can be called to redirect them back to their originally requested URL, a
 * nice usability feature.
 *
 * @param request     the incoming request
 * @param response    the outgoing response
 * @param fallbackUrl the fallback url to redirect to if there is no saved request available.
 * @throws IllegalStateException if there is no saved request and the {@code fallbackUrl} is {@code null}.
 * @throws IOException           if there is an error redirecting
 */
public static void redirectToSavedRequest(ServletRequest request, ServletResponse response, String fallbackUrl)
        throws IOException {
    String successUrl = null;
    boolean contextRelative = true;
    SavedRequest savedRequest = WebUtils.getAndClearSavedRequest(request);
    if (savedRequest != null && savedRequest.getMethod().equalsIgnoreCase(AccessControlFilter.GET_METHOD)) {
        successUrl = savedRequest.getRequestUrl();
        contextRelative = false;
    }

    if (successUrl == null) {
        successUrl = fallbackUrl;
    }

    if (successUrl == null) {
        throw new IllegalStateException("Success URL not available via saved request or via the " +
                "successUrlFallback method parameter. One of these must be non-null for " +
                "issueSuccessRedirect() to work.");
    }

    WebUtils.issueRedirect(request, response, successUrl, null, contextRelative);
}
AsyncContextImpl.java 文件源码 项目:lazycat 阅读 38 收藏 0 点赞 0 评论 0
public void setStarted(Context context, ServletRequest request, ServletResponse response,
        boolean originalRequestResponse) {

    synchronized (asyncContextLock) {
        this.request.getCoyoteRequest().action(ActionCode.ASYNC_START, this);

        this.context = context;
        this.servletRequest = request;
        this.servletResponse = response;
        this.hasOriginalRequestAndResponse = originalRequestResponse;
        this.event = new AsyncEvent(this, request, response);

        List<AsyncListenerWrapper> listenersCopy = new ArrayList<AsyncListenerWrapper>();
        listenersCopy.addAll(listeners);
        listeners.clear();
        for (AsyncListenerWrapper listener : listenersCopy) {
            try {
                listener.fireOnStartAsync(event);
            } catch (Throwable t) {
                ExceptionUtils.handleThrowable(t);
                log.warn("onStartAsync() failed for listener of type [" + listener.getClass().getName() + "]", t);
            }
        }
    }
}
GitFilter.java 文件源码 项目:gitplex-mit 阅读 25 收藏 0 点赞 0 评论 0
@Override
public void doFilter(ServletRequest request, ServletResponse response,
        FilterChain chain) throws IOException, ServletException {
    HttpServletRequest httpRequest = (HttpServletRequest) request;
    HttpServletResponse httpResponse = (HttpServletResponse) response;

    try {
        if (GitSmartHttpTools.isInfoRefs(httpRequest)) {
            if (gitPlex.isReady())
                processRefs(httpRequest, httpResponse);
            else
                throw new GitException("Server is not ready");
        } else if (GitSmartHttpTools.isReceivePack(httpRequest) || GitSmartHttpTools.isUploadPack(httpRequest)) {
            if (gitPlex.isReady())
                processPacks(httpRequest, httpResponse);
            else
                throw new GitException("Server is not ready");
        } else {
            chain.doFilter(request, response);
        }
    } catch (GitException|InterruptedException|ExecutionException e) {
        logger.error("Error serving git request", e);
        GitSmartHttpTools.sendError(httpRequest, httpResponse, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e.getMessage());
    }
}
ApplicationRequest.java 文件源码 项目:tomcat7 阅读 36 收藏 0 点赞 0 评论 0
/**
 * Set the request that we are wrapping.
 *
 * @param request The new wrapped request
 */
@Override
public void setRequest(ServletRequest request) {

    super.setRequest(request);

    // Initialize the attributes for this request
    synchronized (attributes) {
        attributes.clear();
        Enumeration<String> names = request.getAttributeNames();
        while (names.hasMoreElements()) {
            String name = names.nextElement();
            Object value = request.getAttribute(name);
            attributes.put(name, value);
        }
    }

}
SimpleAuthFilter.java 文件源码 项目:simpleauth 阅读 31 收藏 0 点赞 0 评论 0
@Override
public void doFilter(final ServletRequest request, final ServletResponse response,
        final FilterChain chain) throws IOException, ServletException {
    if (request instanceof HttpServletRequest) {
        final HttpServletRequest req = ((HttpServletRequest) request);
        final HttpServletResponse res = ((HttpServletResponse) response);
        final String header = req.getHeader(SimpleAuth.HTTP_HEADER);
        if (header != null) {
            final String[] sp = header.split(" ");
            // Authentication: torch TOKEN
            if (sp.length == 2) {
                final String scheme = sp[0], param = sp[1];
                if (SimpleAuth.SCHEME.equals(scheme)) {
                    if (sa.verify(param)) {
                        chain.doFilter(request, response);
                        return;
                    }
                }
            }
        }
        if (!res.isCommitted()) {
            final String err = "FORBIDDEN\r\n";
            res.reset();
            res.setStatus(HttpServletResponse.SC_FORBIDDEN);
            res.setContentLength(err.length());
            res.setContentType("text/plain");
            res.setCharacterEncoding("ISO-8859-1");
            res.setHeader("Pragma", "no-cache");
            res.setHeader("Cache-Control", "private, no-cache, no-store, must-revalidate");
            res.setHeader(getClass().getSimpleName(), "deny");
            res.getWriter().print(err);
            return;
        }
    }
    if (!response.isCommitted()) {
        response.reset();
    }
    throw new ServletException(new UnsupportedOperationException());
}
TestStandardContext.java 文件源码 项目:tomcat7 阅读 32 收藏 0 点赞 0 评论 0
@Override
public void doFilter(ServletRequest request, ServletResponse response,
        FilterChain chain) throws IOException, ServletException {
    PrintWriter out = response.getWriter();
    out.print(getClass().getName());
    chain.doFilter(request, response);
}
ErrorToJsonFilter.java 文件源码 项目:bootstrap 阅读 30 收藏 0 点赞 0 评论 0
@Override
public void doFilter(final ServletRequest request, final ServletResponse response, final FilterChain chain) throws IOException {
    try {
        chain.doFilter(request, response);
    } catch (final Exception exception) {
        // Error before security/jax-rs management
        log.error("High level error", exception);

        // Catch this stack
        final HttpServletResponse response3 = (HttpServletResponse) response;
        response3.setStatus(Status.INTERNAL_SERVER_ERROR.getStatusCode());
        response3.setContentType(MediaType.APPLICATION_JSON_TYPE.toString());
        response3.setCharacterEncoding(StandardCharsets.UTF_8.name());
        response3.getOutputStream().write("{\"code\":\"internal\"}".getBytes(StandardCharsets.UTF_8));
        response3.flushBuffer();
    }

}
UrlFilter.java 文件源码 项目:Spring-Boot-Server 阅读 29 收藏 0 点赞 0 评论 0
@Override
public void doFilter(ServletRequest srequset, ServletResponse sresponse, FilterChain filterChain)
        throws IOException, ServletException {
    //new两个,一个用来遍历,一个用来换数据
    CumServlet cumRequestWrapper=new CumServlet((HttpServletRequest) srequset);
    CumServlet cumRequestWrapper2=new CumServlet((HttpServletRequest) srequset);
    Iterator<Entry<String, String[]>> iterator = cumRequestWrapper.getParams().entrySet().iterator();
    while(iterator.hasNext()){
        Entry<String, String[]> next = iterator.next();
        String key = next.getKey();
        //解码两次
        String decode = URLDecoder.decode(next.getValue()[0], "utf-8");
        String decode2 = URLDecoder.decode(decode, "utf-8");
        cumRequestWrapper2.addParameter(key, decode2);
    }
       filterChain.doFilter(cumRequestWrapper2, sresponse);  

}
TilesUtilImpl.java 文件源码 项目:lams 阅读 27 收藏 0 点赞 0 评论 0
/**
 * Get definition factory from appropriate servlet context.
 * @return Definitions factory or <code>null</code> if not found.
 */
public DefinitionsFactory getDefinitionsFactory(
    ServletRequest request,
    ServletContext servletContext) {

    return (DefinitionsFactory) servletContext.getAttribute(DEFINITIONS_FACTORY);
}


问题


面经


文章

微信
公众号

扫码关注公众号