当前位置 : 主页 > 编程语言 > java >

是否可以使用JSP / JSTL生成动态css / javascript文件?

来源:互联网 收集:自由互联 发布时间:2021-06-25
如果是这样,你怎么做? (jboss / tomact embedded / jdk 1.5) 没有嵌入js / css但是实际文件… 您要做的是将* .css servlet映射分配给JSPServlet. 在大多数容器中,您将看到这样的映射(这来自Glassfish,在它
如果是这样,你怎么做?

(jboss / tomact embedded / 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等)

网友评论