如果是这样,您该怎么做?
(jboss / tomact嵌入式/ jdk 1.5)
不是嵌入式js / css,而是实际文件…
您要做的是将* .css Servlet映射分配给JSPServlet。
在大多数容器中,您会看到这样的映射(这是来自Glassfish的,位于default-web.xml中):
<servlet> <servlet-name>jsp</servlet-name> <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> <init-param> <param-name>xpoweredBy</param-name> <param-value>true</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet> <servlet-mapping> <servlet-name>jsp</servlet-name> <url-pattern>*.jsp</url-pattern> </servlet-mapping>
在这里,它声明了JSP servlet,并将“ * .jsp”映射到它。因此,在这种情况下,JSP servlet引用名称就是“ jsp”。
因此,您需要添加:
<servlet-mapping> <servlet-name>jsp</servlet-name> <url-pattern>*.css</url-pattern> </servlet-mapping>
当您这样做时,“突然”所有CSS文件实际上就是JSP,因此您可以随心所欲地对其进行处理。
详细信息是我不知道’jsp’是否对所有容器都相同,因此您的web.xml可能不可移植。
但这就是您要做的要旨。如果您不希望所有CSS都成为JSP,则可以将文件放在它们自己的目录中,然后将其映射到JSP servlet。然后,您输入的任何内容都会有一个JSP(css,js等)