异常:java.lang.IllegalStateException怎么解决?java.lang.IllegalStateExceptionat servlet.zhuce.doGet(zhuce.java:48)at servlet.zhuce.doPost(zhuce.java:77)提示这两行有问题以下是servlet代码:public class zhuce extends HttpServlet {privat

来源:学生作业帮助网 编辑:作业帮 时间:2024/10/05 20:38:18
异常:java.lang.IllegalStateException怎么解决?java.lang.IllegalStateExceptionat servlet.zhuce.doGet(zhuce.java:48)at servlet.zhuce.doPost(zhuce.java:77)提示这两行有问题以下是servlet代码:public class zhuce extends HttpServlet {privat
xVkOW++ESwHRڨ Qum_M *&ƉyEb4{wן:rpb+Qoޙ9sGr喫8yKq(8{(c0J*ȒҷsӇ,{|1EQS"D2J|Ѐێm9~2KNiQ:ˏżqwZZ.;1a;ͅ%(XӐ %RLC)Uz\g )L[#jĽ' !y6Pqm&clcPq\gG!4  Gg;/v\Ԇ8 0OhmڿN9@IE98) 8"0,Đ UNkȣTܥQA{{Tr-I4+B]G? TgY>#mV o3x,ȴwH!]}@RzI(Qg-8NB? xm32Dt8*&yȉE-YAOv"Hok[ xlИt\`hD 8 'O~'Ǹ`G~u ~ZVcMp}s} p |qXpge#Ŧ']ss`l.l)X@:(Y U!ޤE/O߇k~/"W®; q{Ø\c[^0%c*JΟE4ih \!4m}+9}a֧niAi^|B%m}$񏊲F^.9wMNj <ݦ!Y'P :ϛ6U;ŗ{KIu(3yӭǁ1>F+0^ZGwwg7!\1M%+ Qb\ xBB_Pu!p/TRfx|-$U@M` a>bC(Btb9hBjB2~ؾ^ɂP˛Ɲِ˦sz9Kl_`qگtI$ֶY|[Nd `{ھe_04i |0|/K<,\ݗ'a0fBpY7Ғ CX!:5bCFiZχZqX U%'̲JQߝsg5VTvC!PfFߥKeA;<*[05Ϯ% G9ljqZ_wtwqgX->ea ==FNJy rl`%dd_;k:z2 ~)ѷ'p=[cbb,K'Ng&Qf'`woÛ͹$Z\3od-

异常:java.lang.IllegalStateException怎么解决?java.lang.IllegalStateExceptionat servlet.zhuce.doGet(zhuce.java:48)at servlet.zhuce.doPost(zhuce.java:77)提示这两行有问题以下是servlet代码:public class zhuce extends HttpServlet {privat
异常:java.lang.IllegalStateException怎么解决?
java.lang.IllegalStateException
at servlet.zhuce.doGet(zhuce.java:48)
at servlet.zhuce.doPost(zhuce.java:77)
提示这两行有问题
以下是servlet代码:
public class zhuce extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GBK";
//Initialize global variables
public void init() throws ServletException {
}
//Process the HTTP Get request
public void doGet(HttpServletRequest request,HttpServletResponse response) throws
ServletException,IOException {
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
HttpSession session = request.getSession();
String yzm = request.getParameter("yzm");
/*判断验证码是否正确*/
if (session.getAttribute("valicode").toString().equals(yzm)) {
Ben b = new Ben();
b.setUname(new String(request.getParameter("username").getBytes(
"iso8859-1"),"gbk"));
b.setUpassword(request.getParameter("password"));
b.setAnquanma(request.getParameter("aqpassword"));
b.setTouxiang(request.getParameter("touxiang"));
/*判断用户名是否已经注册 panduan()返回boolean true:可用 false:不可用*/
if (b.panduan()) {
b.Dbcinsert();/*写进数据库*/
out.println("");
out.println("zhuce");
out.println("");
out.println("");
out.println("");
out.print("");
out.print("注册成功!alert(\"用户:" +
new String(request.getParameter("username").getBytes(
"iso8859-1"),"gbk") +
"注册成功!\");window.location.href=\"main.jsp\"");
out.close();
/*把注册的用户名放进session*/
session.setAttribute("yonghuming",
b.getUname());
/*跳转到主页面*/
response.sendRedirect("main.jsp");

异常:java.lang.IllegalStateException怎么解决?java.lang.IllegalStateExceptionat servlet.zhuce.doGet(zhuce.java:48)at servlet.zhuce.doPost(zhuce.java:77)提示这两行有问题以下是servlet代码:public class zhuce extends HttpServlet {privat
抛出异常:
ERROR [Engine] StandardWrapperValve[jsp]:Servlet.service() for servlet jsp threw exception
java.lang.IllegalStateException:getOutputStream() has already been called for this response
从网上找了下资料,综合一下原因分析:
这是web容器生成的servlet代码中有out.write(””),这个和JSP中调用的response.getOutputStream()产生冲突.
即Servlet规范说明,不能既调用 response.getOutputStream(),又调用response.getWriter(),无论先调用哪一个,在调用第二个时候应会抛出 IllegalStateException,因为在jsp中,out变量是通过response.getWriter得到的,在程序中既用了response.getOutputStream,又用了out变量,故出现以上错误.
解决方案:
1.在程序中添加:
out.clear();
out = pageContext.pushBody();
就可以了;
2,不要在%〕〔%之间写内容包括空格和换行符
3,在页面写入图片的时候,需要flush()
OutputStream output=response.getOutputStream();
output.flush();
4,在页面确定写入