我在访问/project/resources/(css|js)/
中的静态资源时遇到问题。我能够在我的css文件夹中访问index.css
,但没有其他人。我试图找到根本原因,改变正则表达式并搞砸了一切。现在我甚至无法访问index.css
。请在下面找到详细信息 -
文件结构 -
webapp
|____ resources
| |____ css
| |____ js
|
|____ WEB-INF
|____ jsp
web.xml -
<?xml version="1.0" encoding="UTF-8"?>
<!-- This web.xml file is not required when using Servlet 3.0 container,
see implementation details http://jersey.java.net/nonav/documentation/latest/jax-rs.html -->
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<filter>
<filter-name>REST Web Application</filter-name>
<filter-class>org.glassfish.jersey.servlet.ServletContainer</filter-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>com.restui</param-value>
</init-param>
<init-param>
<param-name>jersey.config.server.mvc.templateBasePath.jsp</param-name>
<param-value>/WEB-INF/jsp/</param-value>
</init-param>
<init-param>
<param-name>jersey.config.servlet.filter.staticContentRegex</param-name>
<param-value>/(resources/(css|js))|(WEB-INF/jsp)/*.*</param-value>
</init-param>
<init-param>
<param-name>jersey.config.server.provider.classnames</param-name>
<param-value>org.glassfish.jersey.server.mvc.jsp.JspMvcFeature</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>REST Web Application</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
我试图在网上找到解决方案,但没有任何用处。希望有用的解决方案。
提前致谢。
答案 0 :(得分:0)
如果您使用Jersey 2.x,则jersey.config.servlet.filter.staticContentRegex
属性应该有效。
我相信您的静态资源只在资源文件夹中。
试试这个:
<init-param>
<param-name>jersey.config.servlet.filter.staticContentRegex</param-name>
<param-value>/resources/(css|js)/.*</param-value>
</init-param>