我有一个Servlet配置为处理所有URL(*
):
<servlet>
<servlet-name>MyServ</servlet-name>
<servlet-class>MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyServ</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
我需要让以/static/
开头的URL从静态的WEB-INF
中获取。也就是说,MyServ应该服务于除了/static
之外的所有内容。
我该如何做到呢?
更新:澄清一下,我的要求是:
/*/
- 由MyServ处理
/static/dir/file.css
- Jetty从/dir/中提供静态的file.css文件。
我不确定要在web.xml文件中怎么配置,也不知道在哪里放置静态文件。
我尝试添加了这个:
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/static/*</url-pattern>
</servlet-mapping>
但是,当我访问/static/
URL时,我只会得到:
HTTP ERROR 404
Problem accessing /static/dir/file.css. Reason:
Not Found
Powered by Jetty://
我不确定我的web.xml是否有误,还是我只是把文件放错了位置(我已经尝试将其放在src/main/webapp
和src/main/webapp/lib/META-INF/resources/
下)。
Jetty
我正在使用Jetty。 我想避免使用任何其他层,如Nginx、Apache等。
为了赢得悬赏,请确保您的答案适用于Jetty。