1

我想修改 Embedded Tomcat,以便我可以以编程方式修改传入的请求:

  • 原始输入:http://localhost:8080/webapp/foo使用 contextPath =和 servletPath =/webapp/foo

  • 修改: contextPath =/webapp和 servletPath =/foo

我不能在 Spring 本身中做到这一点,因为 Session Cookie Path 是由 Tomcat 设置的。

而且我不能使用静态contextPath,因为这是一个多租户应用程序。


我试着用

TomcatEmbeddedServletContainerFactory tomcat = ...;
tomcat.addContextValves(new ValveBase() {
    public void invoke(Request request, Response response) throws IOException, ServletException {
        ...
    }
});

但我无法在servletPath那里设置。


您知道如何实现这一目标吗?

4

1 回答 1

0

很难说出您要实现的目标,但是您是否尝试在 application.properties 文件中设置此属性: server.context-path=/webapp

这会将您的整个应用程序放在 /webapp 上下文路径中

于 2015-05-31T03:00:08.980 回答