Java 使用“创建servlet url模式”/&引用;
我已经创建了名为MainContent的servlet。我有这样的映射Java 使用“创建servlet url模式”/&引用;,java,jsp,servlets,servlet-filters,servlet-3.0,Java,Jsp,Servlets,Servlet Filters,Servlet 3.0,我已经创建了名为MainContent的servlet。我有这样的映射 <servlet> <display-name>MainContent</display-name> <servlet-name>MainContent</servlet-name> <servlet-class>ge.test.servlet.MainContent</servlet-class> </serv
<servlet>
<display-name>MainContent</display-name>
<servlet-name>MainContent</servlet-name>
<servlet-class>ge.test.servlet.MainContent</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MainContent</servlet-name>
<url-pattern>/main</url-pattern>
</servlet-mapping>
一切正常强>
RequestDispatcher rd = context.getRequestDispatcher("/index.jsp?language="+ lang);
rd.forward(request, response);
问题:
现在我需要更改url模式。我需要这样的东西-:当我进入localhost:8080/MyAppl/时,我需要被重定向到我的servlet。
所以我创造了这样的东西:
/
好的,它工作了我被重定向到servlet但是这里出了点问题。当Servlet创建RequestDispatcher forward时,在我的index.jsp中并没有图像和css。
当我在firebug控制台中看到这些错误时:
Resource interpreted as Stylesheet but transferred with MIME type text/html: "http://localhost:8080/MyApp/font/font_big.css". localhost/:15
Resource interpreted as Image but transferred with MIME type text/html: "http://localhost:8080/MyApp/IMG/company.gif".
我怎样才能解决这个问题 是的,比如@DwB pointed,“/”上下文是有问题的URL模式,它会导致您的问题 使用
MainServlet
相反。这是“Servlet3.0方式”实现的
来源
[1]
[2] 您遇到的问题是,您的所有资源路径都以/开头。您需要添加一些东西来处理资源(spring为此提供了一个资源servlet),并使用一个公共URL模式来标识资源(例如,所有资源都以“/Resourcde”开头),然后在web.xml文件中的“/”映射之前添加资源处理程序servlet映射。这演示了spring解决方案:我不使用spring。我只使用servlet和JSP。你能给我一个例子,如何做到这一点?所以,使用空作为特殊的url模式。
<servlet-mapping>
<servlet-name>MainServlet</servlet-name>
<url-pattern></url-pattern>
</servlet-mapping>