今天遇到这样的错误,折腾了半天:
java.lang.IllegalStateException org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:407) org.apache.catalina.servlets.DefaultServlet.serveResource(DefaultServlet.java:701) org.apache.catalina.servlets.DefaultServlet.doGet(DefaultServlet.java:339) org.apache.catalina.servlets.DefaultServlet.doPost(DefaultServlet.java:418) javax.servlet.http.HttpServlet.service(HttpServlet.java:637) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) com.assets.view.LoginFilter.doFilter(LoginFilter.java:39)
原因:
在jsp页面上使用了
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/
backend/";
%>
而web.xml里servlet配置是:
<servlet>
<servlet-name>loginServlet</servlet-name>
<servlet-class>com.assets.view.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>loginServlet</servlet-name>
<url-pattern>/
loginServlet</url-pattern>
</servlet-mapping>
解决方法:
把jsp的根路径设置与web.xml一致。
分享到:
相关推荐
Servlet 中的相对路径和绝对路径归纳 在 Servlet 编程中,路径是非常重要的一个概念。路径可以分为相对路径和绝对路径两种,在不同的场景下,选择合适的路径类型非常重要。本文将对 Servlet 中的相对路径和绝对路径...
Servlet 虚拟路径映射配置详解 Servlet 虚拟路径映射配置详解是指在 Servlet 中配置虚拟路径映射,以便客户端可以访问 Servlet。本文将详细介绍 Servlet 虚拟路径映射配置的详细信息。 1. 配置虚拟路径映射 在 ...
首先,你需要在项目的类路径下放置一个文件,然后在Servlet的`doGet()`或`doPost()`方法中调用`getRealPath()`或`getResource()`。这将帮助你理解如何在实际的JavaWeb应用中使用ServletContext来访问类路径下的文件...
2. **执行安装**:双击安装文件,按照向导提示进行安装,默认安装路径为`\bea`目录下。 3. **安装完成**:安装完成后,可以在开始菜单中找到WebLogic的相关选项。 **1.2 创建自己的工作区** 1. **打开配置向导**:...
`web.xml`是Web应用的部署描述符,它包含了关于应用的元数据,如Servlet的类名和映射路径。 - 示例中的`<servlet>`和`<servlet-mapping>`元素分别用于指定Servlet的名称和实际类名,以及Servlet处理的URL模式。 3....
只有当Servlet被映射到一个虚拟路径,客户端的浏览器才能通过这个路径发送请求,服务器接收到请求后,根据映射规则找到对应的Servlet进行处理。 在实际应用中,一个Servlet可以有多个虚拟路径映射,这就是Servlet的...
注意,由于`<scope>provided</scope>`设置,Maven不会将此jar打包到最终的WAR文件中,因为它假定目标服务器已经提供了Servlet API。 6. **现代Web应用开发** 随着Spring Boot和微服务架构的流行,直接编写Servlet...
在提供的压缩包`servlet_demo1`中,可能包含了一个简单的Servlet示例,演示了如何使用ServletContext获取和操作文件路径。通过学习和分析这个示例,你可以更好地理解这个知识点,并将其应用到自己的项目中。
开发者需要注意避免在Servlet中使用非线程安全的数据结构,或在必要时使用同步机制。 10. **Servlet 3.0及以上版本的新特性** 自Servlet 3.0开始,引入了注解配置,可以不再依赖`web.xml`进行Servlet的声明。同时...
五、注意事项 1. 确保数据库驱动在类路径下可找到。 2. 配置文件的正确性,如数据源配置、Mapper扫描路径等。 3. SQL语句的编写要符合数据库规范,避免SQL注入。 4. 检查异常处理,确保错误信息能够被正确捕获并...
`<servlet-name>`用于指定Servlet的唯一名称,`<servlet-class>`指定Servlet类的全限定名,`<url-pattern>`则将URL路径映射到Servlet。 4. **Servlet请求和响应处理**: Servlet通过继承`HttpServlet`类,重写`...
### servlet和struts2笔记 #### 一、Servlet 基础 **Servlet** 是 Java Web 开发中的一种核心技术,它被设计用于处理客户端发送到...此外,掌握 Servlet 的路径配置和线程安全问题是确保应用程序稳定性和性能的关键。
这里`ServletDemo`是Servlet的别名,`com.example.ServletDemo`是Servlet类的全限定名,`/ServletDemo`是URL路径,用于映射到Servlet。 3. **Servlet的基本源码结构** 一个简单的Servlet源码通常包含以下部分: ...
在Servlet 3.0及以上版本,你可以使用通配符和正则表达式来定义Servlet的映射路径,使得一个Servlet可以处理多种类型的请求。例如,你可能希望一个Servlet处理所有以`.jsp`结尾的请求,可以这样配置: ```xml ...
5. **Servlet配置**:在web.xml文件中,可以通过`<servlet>`、`<servlet-mapping>`元素定义Servlet及其映射路径。例如,通过`<url-pattern>`指定Servlet处理哪些URL请求。 6. **注解驱动**:从Java EE 5开始,...
在这里,你可以定义Servlet的映射路径、初始化参数、加载顺序等。例如: ```xml <servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>com.example.MyServlet</servlet-class> </servlet> ...
// 设置上传URL为Servlet路径 config.filebrowserBrowseUrl = null; // 如果仅支持上传,可不设置浏览URL ``` 2. **Servlet实现**: - 创建一个新的Servlet类,继承`javax.servlet.http.HttpServlet`。 - 重写...
2. **Servlet配置**:在`web.xml`部署描述符文件中,我们可以配置Servlet,包括设置Servlet的映射路径、初始化参数、会话配置等。例如,`<servlet>`和`<servlet-mapping>`元素分别用于定义Servlet和映射URL。 3. **...
`<servlet-name>`定义Servlet的别名,`<servlet-class>`指定Servlet类全名,`<url-pattern>`用于映射Servlet处理的URL路径。 五、Servlet上下文 `ServletContext`接口代表了整个Web应用的共享环境,它可以在所有...
注意这里的`<scope>provided</scope>`或`compile`表示Servlet API已经由应用服务器提供,因此不需要在部署时包含在最终的WAR文件中。 使用Servlet API,你可以创建Servlet类,覆盖`doGet`和`doPost`方法来处理...