public final void testWrappedRequestUrlDefaultHttpsPort() { final HttpServletRequest mockRequest = createMock(HttpServletRequest.class); expect(mockRequest.getScheme()).andReturn("https"); expect(mockRequest.getServerName()).andReturn("the.server"); expect(mockRequest.getServerPort()).andReturn(443); replay(mockRequest); HttpServletRequest wrappedRequest = ManagedServletPipeline.wrapRequest(mockRequest, "/new-uri"); assertEquals("/new-uri", wrappedRequest.getRequestURI()); assertEquals("https://the.server/new-uri", wrappedRequest.getRequestURL().toString()); } }
public final void testWrappedRequestUriAndUrlConsistency() { final HttpServletRequest mockRequest = createMock(HttpServletRequest.class); expect(mockRequest.getScheme()).andReturn("http"); expect(mockRequest.getServerName()).andReturn("the.server"); expect(mockRequest.getServerPort()).andReturn(12345); replay(mockRequest); HttpServletRequest wrappedRequest = ManagedServletPipeline.wrapRequest(mockRequest, "/new-uri"); assertEquals("/new-uri", wrappedRequest.getRequestURI()); assertEquals("http://the.server:12345/new-uri", wrappedRequest.getRequestURL().toString()); }
public final void testWrappedRequestUrlNegativePort() { final HttpServletRequest mockRequest = createMock(HttpServletRequest.class); expect(mockRequest.getScheme()).andReturn("http"); expect(mockRequest.getServerName()).andReturn("the.server"); expect(mockRequest.getServerPort()).andReturn(-1); replay(mockRequest); HttpServletRequest wrappedRequest = ManagedServletPipeline.wrapRequest(mockRequest, "/new-uri"); assertEquals("/new-uri", wrappedRequest.getRequestURI()); assertEquals("http://the.server/new-uri", wrappedRequest.getRequestURL().toString()); }
public final void testWrappedRequestUrlDefaultPort() { final HttpServletRequest mockRequest = createMock(HttpServletRequest.class); expect(mockRequest.getScheme()).andReturn("http"); expect(mockRequest.getServerName()).andReturn("the.server"); expect(mockRequest.getServerPort()).andReturn(80); replay(mockRequest); HttpServletRequest wrappedRequest = ManagedServletPipeline.wrapRequest(mockRequest, "/new-uri"); assertEquals("/new-uri", wrappedRequest.getRequestURI()); assertEquals("http://the.server/new-uri", wrappedRequest.getRequestURL().toString()); }
@Override public void forward(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { Preconditions.checkState( !servletResponse.isCommitted(), "Response has been committed--you can only call forward before" + " committing the response (hint: don't flush buffers)"); // clear buffer before forwarding servletResponse.resetBuffer(); ServletRequest requestToProcess; if (servletRequest instanceof HttpServletRequest) { requestToProcess = wrapRequest((HttpServletRequest) servletRequest, newRequestUri); } else { // This should never happen, but instead of throwing an exception // we will allow a happy case pass thru for maximum tolerance to // legacy (and internal) code. requestToProcess = servletRequest; } // now dispatch to the servlet doServiceImpl(servletDefinition, requestToProcess, servletResponse); }
@Override public void forward(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { Preconditions.checkState( !servletResponse.isCommitted(), "Response has been committed--you can only call forward before" + " committing the response (hint: don't flush buffers)"); // clear buffer before forwarding servletResponse.resetBuffer(); ServletRequest requestToProcess; if (servletRequest instanceof HttpServletRequest) { requestToProcess = wrapRequest((HttpServletRequest) servletRequest, newRequestUri); } else { // This should never happen, but instead of throwing an exception // we will allow a happy case pass thru for maximum tolerance to // legacy (and internal) code. requestToProcess = servletRequest; } // now dispatch to the servlet doServiceImpl(servletDefinition, requestToProcess, servletResponse); }