【问题标题】:Spring - how to exclude a particular URL from spring Controller?Spring - 如何从 Spring Controller 中排除特定的 URL?
【发布时间】:2014-01-09 12:02:45
【问题描述】:

可能这个问题已经有了答案。但这是一个公认的答案。因为它只适用于网络服务器。

我的 web.xml 将是,

<servlet>
    <servlet-name>dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>dispatcher</servlet-name>
    <url-pattern>*.html</url-pattern>
</servlet-mapping>

我想从 spring 控制器中排除 hello.html

这个东西应该在所有服务器上都可以工作,比如 tomcat、Jboss、websphere 等。

有可能吗?希望我能得到一个好的解决方案。

【问题讨论】:

  • 排除hello.html的原因是什么?
  • 我使用的是第三方网址。我不想截取网址。例如我只使用了hello.html。
  • 那么,您有要在控制器上映射的注释吗?或者已经在xx-servlet.xml文件中配置了?
  • @Zeus 我听不懂?
  • 如果可能的话,任何人都可以在这里回答我以前的问题。我在那里没有得到解决方案。 stackoverflow.com/questions/20704086/…

标签: java spring spring-mvc


【解决方案1】:

在 spring 映射之前创建一个指向默认 servlet 的新服务器映射点怎么样?

<servlet-mapping>
    <servlet-name>Default</servlet-name>
    <url-pattern>hello.html</url-pattern>
</servlet-mapping>

应该适用于 tomcat,但也可能适用于其他服务器。

【讨论】:

  • 这不是 include hello.html 而不是排除它吗?对于标记此答案的人,请发表评论并可能投反对票,但不要仅仅因为您不喜欢该答案而标记。
  • 他想从弹簧控制器中排除hello.html。这是通过将其“包含”到仅将其作为普通资源处理的默认 servlet 来实现的……这种方法有什么问题?
  • 好的,没看到。在答案中重新格式化。删除了反对票。
猜你喜欢
  • 2016-03-16
  • 2018-12-16
  • 1970-01-01
  • 2021-05-29
  • 1970-01-01
  • 2015-08-06
  • 2013-09-08
  • 1970-01-01
  • 2022-10-19
相关资源
最近更新 更多