代码之家  ›  专栏  ›  技术社区  ›  Chris K

jboss上的javascript源文件的内容类型/mime类型错误?

  •  2
  • Chris K  · 技术社区  · 16 年前

    我正在编写一个JSP应用程序,并将其部署到JBoss5.0中。当我尝试检索CSS或javascript文件时,jboss返回了错误的文件内容类型,因此firefox拒绝执行其中提供的代码。这是我的web.xml文件:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns="http://java.sun.com/xml/ns/javaee"
             xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
             xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                                 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
             id="WebApp_ID" version="2.5">
    
       <display-name>TestServlet</display-name>
    
       <servlet>
          <servlet-name>TestServlet</servlet-name>
          <servlet-class>org.example.TestServlet</servlet-class>
          <load-on-startup>1</load-on-startup>
       </servlet>
       <servlet-mapping>
          <servlet-name>TestServlet</servlet-name>
          <url-pattern>/engine/*</url-pattern>
       </servlet-mapping>
    
       <welcome-file-list>
          <welcome-file>
             /login.jsp
          </welcome-file>
       </welcome-file-list>
       <jsp-config>
          <jsp-property-group>
             <display-name>TestServlet</display-name>
             <url-pattern>/*</url-pattern>
             <el-ignored>false</el-ignored>
             <scripting-invalid>false</scripting-invalid>
             <is-xml>false</is-xml>
             <trim-directive-whitespaces>true</trim-directive-whitespaces>
          </jsp-property-group>
       </jsp-config>
    
       <mime-mapping>
          <extension>css</extension>
          <mime-type>text/css</mime-type>
       </mime-mapping>
       <mime-mapping>
          <extension>js</extension>
          <mime-type>text/javascript</mime-type>
       </mime-mapping>
    </web-app>
    

    使用lynx测试文件下载,我得到以下信息:

    山猫 http://devbox:8080/TestServlet/js/main.js 磁头转储

    HTTP/1.1 200 OK
    Server: Apache-Coyote/1.1
    X-Powered-By: Servlet 2.5; JBoss-5.0/JBossWeb-2.1
    Set-Cookie: JSESSIONID=EA6FFF63B00F0B8C0C44F7A79BD368CF; Path=/jclaim
    Content-Type: text/html;charset=ISO-8859-1
    Content-Length: 1778
    Date: Sun, 24 May 2009 17:53:31 GMT
    Connection: close
    
    1 回复  |  直到 16 年前
        1
  •  0
  •   Chris K    16 年前

    我通过更改以下内容找到了一个答案:

      <jsp-property-group>
         <display-name>TestServlet</display-name>
         <url-pattern>/*</url-pattern>
    

    相反,要做到这一点:

      <jsp-property-group>
         <display-name>TestServlet</display-name>
         <url-pattern>*.jsp</url-pattern>
    

    作为一个JSP的初学者,我不知道我从上一个示例中学习了什么教程,但它并没有带来多少挫折。

    lynx命令现在产生:

    HTTP/1.1 200 OK
    Server: Apache-Coyote/1.1
    X-Powered-By: Servlet 2.5; JBoss-5.0/JBossWeb-2.1
    Accept-Ranges: bytes
    ETag: W/"11038-1243181792000"
    Last-Modified: Sun, 24 May 2009 16:16:32 GMT
    Content-Type: text/javascript
    Content-Length: 11038
    Date: Sun, 24 May 2009 17:57:07 GMT
    Connection: close
    

    这也适用于CSS。