社区
Java EE
帖子详情
页面重定向到servlet,可以再由servlet请求转发吗
sunshiwu66
2012-04-15 10:46:26
页面重定向到servlet,可以再由servlet请求转发吗
...全文
55
1
打赏
收藏
页面重定向到servlet,可以再由servlet请求转发吗
页面重定向到servlet,可以再由servlet请求转发吗
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sunshiwu66
2012-04-15
打赏
举报
回复
经过多次跳转报错为:java.lang.IllegalStateException: Cannot forward after response has been committed
求高手指点:不胜感激!
一、注册检验servlet代码:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Md5code mc=new Md5code ();//MD5加密
response.setContentType("text/html");
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
UserOperateImpl io=new UserOperateImpl();
Userinfo ui=new Userinfo();
String username=request.getParameter("username");
String userpass=request.getParameter("userpass");
String confirm=request.getParameter("confirmpass");
String useremail=request.getParameter("email");
String code=(String)request.getSession().getAttribute("validateCode");
String codeshus=request.getParameter("codeshu");
String codeshu = URLDecoder.decode(codeshus, "UTF-8");
if(!codeshu.equals(null)&&!"".equals(codeshu)){
if(code.equals(codeshu)){
out.write("<font color='green'size='2'>"+"√"+"</font>");
if(!username.equals(null)&&!"".equals(username)){
if(!userpass.equals(null)&&!"".equals(userpass)){
if(userpass.equals(confirm)){
if(!useremail.equals(null)&&!"".equals(useremail)){
String memail=mc.getMD5ofStr(useremail);//MD5加密
String muserpass=mc.getMD5ofStr(userpass);//MD5加密
ui.setUsername(username);
ui.setUserpass(muserpass);
ui.setUseremail(memail);
try {
if(io.queryusername(ui)){
out.print("用户名已存在!");
}else if(io.queryuseremail(ui)){
out.print("邮箱已存在!");
}else{
boolean bl=io.saveObject(ui);
if(bl){
io.queryconfirm(ui);
request.getSession().setAttribute("userid", ui.getUserid());
request.getSession().setAttribute("user", username);
request.getRequestDispatcher("zhuceforward.jsp").forward(request, response);
//response.sendRedirect("zhuceforward.jsp");
}
}
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
}
}
}else{
out.write("<font color='red'size='2'>"+"验证码错误!"+"</font>");
}
}else{
out.write("<font color='red'size='2'>"+"请输入验证码!"+"</font>");
}
out.flush();
out.close();
}
二、
zhuceforward.jsp代码:
就是一秒后跳转功能:
<body >
<center>
<font color="red"> 注册成功! <span id="totalSecond">1</span>秒后跳转</font>
</center>
<script type="text/javascript">
var second = document.getElementById("totalSecond").textContent;
if (navigator.appName.indexOf("Explorer") > -1)
{
second = document.getElementById("totalSecond").innerText;
} else
{
second = document.getElementById("totalSecond").textContent;
}
setInterval("redirect()", 1000);
function redirect()
{
if (second < 0)
{
window.location="Toindex";
} else
{
if (navigator.appName.indexOf("Explorer") > -1)
{
document.getElementById("totalSecond").innerText = second--;
} else
{
document.getElementById("totalSecond").textContent = second--;
}
}
}
</script>
</body>
三、servlet Toindex中代码:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
request.getRequestDispatcher("index.jsp").forward(request,response);
//response.sendRedirect("index.jsp");
}
JavaWeb之
Servlet
精讲实战课程
本课程是javaee和大数据开发的基础课程,讲述了
Servlet
中
Servlet
创建过程,Request请求以及Response中各种响应头的介绍,以及乱码的各种处理方式,以及刷新
重定向
转发等。对
servlet
中的session和cookie做了着重讲解,同时,也介绍了
servlet
2.5与
servlet
3.0的区别。在整个课程当中,带学生做了一个简单的数码商城项目,将所学的
servlet
知识应用到了其中,让学生学以致用。数码商城项目保存的功能:登录、退出、记住密码、查看商品详情、加入商品到购物车、删除购物车中商品等。
Servlet
请求转发
和
重定向
客户端发出第一个请求,被服务器接受处理后,服务器会响应,在响应的同时,服务器会给客户端一个新的地址(下次的请求地址:response.sendRedirect(url);),当客户端接受到响应后,会立刻,马上,自动根据服务器给的新地址发起第二个请求,服务器接受请求并作出响应,
重定向
完成。1.
请求转发
是一种服务器行为,当客户端请求到达后,服务器进行转发,此时会将请求对象进行保存,地址栏中的URL地址不会改变,得到响应后服务器端再将响应发送给客户端,从始至终只有一个请求发出。
请求转发
只能去找当前项目下的资源。
Servlet
之
页面
重定向
Servlet
之
页面
重定向
白话解释:
页面
重定向
页面
重定向
方法-sendRedirect
页面
重定向
案例案例描述HTML
页面
login.html登录
页面
welcome.html登录
页面
Java后端代码ReDirectPage
Servlet
子类编写web.xml虚拟路径映射配置ajax技术导致的
页面
重定向
失败 白话解释:
页面
重定向
页面
重定向
,大白话说——简单可以认为是控制浏览器进行网页
页面
的跳转操作。
页面
重定向
Servlet
学习之转发与
重定向
文章目录1.概要2.转发2.1 代码演示2.2 原理图3.
重定向
3.1 代码演示3.2 原理图4.转发与
重定向
的区别4.1 从表层来看4.2 从里层来看5.资源跳转方式的选择 1.概要 转发与
重定向
都是在Web中进行资源跳转的方式。具体来说就是我们从也
页面
中跳转至另一个服务器资源,这个资源可以是html文件,也可以是一个
Servlet
对象。 在讲解之前我们先说明一下原理图中的大概内容 左边的框框是我们的浏览器(Browser) 右边的内容是我们的Web服务器 oa是我们Web服务器中的一个项目名
Servlet
请求转发
与
重定向
Java
Servlet
Java EE
67,515
社区成员
225,878
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章