HTTP Status 500 – Internal Server Error 求帮忙!

clavinLee 2019-01-15 06:24:39
有一段代码功能是下拉选,在本地部署完全没有问题,放到服务器后,初次点击可以使用,过两三分钟后下拉选功能失效。
报错如下:
HTTP Status 500 – Internal Server Error
An exception occurred processing JSP page /common/cvar/CExec.jsp at line 87
The server encountered an unexpected condition that prevented it from fulfilling the request.
java.lang.NullPointerException
org.apache.jsp.common.cvar.CExec_jsp._jspService(CExec_jsp.java:226)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:472)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:237)
net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:214)
filters.SessionFilter.doFilter(SessionFilter.java:378)
filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:35)

CExec.jsp 第87行代码如下:
if(!error && !request.getParameter( "mOperate" ).equals( "EASYQUERY" ));









...全文
1109 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
clavinLee 2019-01-16
  • 打赏
  • 举报
回复
已解决网络代理的问题,代理服务器会中断,导致请求不到数据。取消代理就好了
clavinLee 2019-01-16
  • 打赏
  • 举报
回复
request确定不是null requestServer(strCodeName, strCondition, strConditionField, showWidth,changeEven,searchFlag); 这里就报错了 里面调用 parent.EX.fm.txtCodeName.value = strCodeName; 这里没有找到父页面 他的父页面里面是: String hashSession = (String) session.getAttribute("HASH"); String hash = request.getParameter("hash"); GlobalInput gi = null; try { gi = (GlobalInput)session.getValue("GI"); } catch(Exception ex) { } if(gi == null || gi.Operator == null || "".equals(gi.Operator)) { try { error = !hash.equals(hashSession);//不登陆必须检查hash一致性 }catch(Exception e) { error = true; } //必须登录后才能使用EASYQUERY参数 if(request.getParameter("mOperate").equals("EASYQUERY")){ error = true; } else { //不登陆应该只有首页查机构信息 if(!"comcode".equals(request.getParameter("txtCodeName"))) { error = true; } } } if(error){ out.println("<script language=javascript>"); out.println(" session = null;"); out.println(" try {"); out.println(" CollectGarbage();"); out.println(" } catch(ex) {}"); out.println(" parent.window.location =\"../../indexlis.jsp\";"); out.println("</script>"); session.invalidate(); return; } if(!error && !request.getParameter( "mOperate" ).equals( "EASYQUERY" )) { //获得代码查询条件,包括代码类型,险种信息等 codename = request.getParameter("txtCodeName"); tStr=codename.toLowerCase(); framename = request.getParameter("txtFrameName"); strOther = request.getParameter("txtOther"); codename = codename.trim(); framename = framename.trim(); strOther = strOther.trim(); codeCondition = request.getParameter("txtCodeCondition"); conditionField = request.getParameter("txtConditionField"); showWidth = request.getParameter("txtShowWidth"); changeEven = request.getParameter("changeEven"); searchFlag = request.getParameter("searchFlag"); VData tData=new VData(); LDCodeSchema tLDCodeSchema =new LDCodeSchema(); tLDCodeSchema.setCodeType(tStr); GlobalInput tGI = new GlobalInput(); try { tGI = (GlobalInput)session.getValue("GI"); } catch(Exception ex) { tGI = new GlobalInput(); loggerDebug("CExec","GlobalInput is null"); } tData.add(tLDCodeSchema); tData.add(tGI); //传递查询条件 TransferData tTransferData = new TransferData(); tTransferData.setNameAndValue("codeCondition", codeCondition); tTransferData.setNameAndValue("conditionField", conditionField); tData.add(tTransferData); BusinessDelegate tBusinessDelegate=BusinessDelegate.getBusinessDelegate(); if(!tBusinessDelegate.submitData(tData,"QUERY||MAIN","CodeQueryUI")) { if(tBusinessDelegate.getCErrors()!=null&&tBusinessDelegate.getCErrors().getErrorCount()>0) { String Content = "保存失败,原因是:" + tBusinessDelegate.getCErrors().getFirstError(); strValue="Code Query Faile"; } } else { tData.clear() ; tData=tBusinessDelegate.getResult() ; strValue=(String)tData.get(0); } } 然后就报空指针,只会在部署到服务器上会报错,但是这个代码在每次重新打开页面就好用,会在两三分钟之后才不能用, 而且本地也一直好使从来没有报错。有人说是服务器的问题,现在找不到根本原因。
叶遮沉阳 2019-01-15
  • 打赏
  • 举报
回复
空指针异常,你确定你的request不是null吗?
clavinLee 2019-01-15
  • 打赏
  • 举报
回复
request.getParameter()这里get到的所有东西都是空。
clavinLee 2019-01-15
  • 打赏
  • 举报
回复
if(!error && !request.getParameter( "mOperate" ).equals( "EASYQUERY" )); 先不要关注 equals得顺序,将字符串放在前面也是错的。这段代码在每次关闭页面重新打开后的第一次是好用的,而且本地也一直是好用的。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧