问题描述
程序目的使:用MVC模型,让cal_1jsp作为【V】和【C】,结合CalBean.java【M】,实现一个简单的计算器功能。可是程序部署后访问http://localhost:8080/myday10/cal_1.jsp。总是提示这个错误,好像是什么服务器内部错误。这是怎么回事???错误提示如下:哪位大神帮忙下我也可以把项目文件给发过去。求帮忙!!!!::HTTPStatus500---------------------------------------------------------------------------------typeExceptionreportmessagedescriptionTheserverencounteredaninternalerror()thatpreventeditfromfulfillingthisrequest.exceptionorg.apache.jasper.JasperException:org.apache.jasper.JasperException:UnabletoloadclassforJSPorg.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:161)org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:340)org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)javax.servlet.http.HttpServlet.service(HttpServlet.java:717)rootcauseorg.apache.jasper.JasperException:UnabletoloadclassforJSPorg.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:630)org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:149)org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:340)org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)javax.servlet.http.HttpServlet.service(HttpServlet.java:717)rootcausejava.lang.ClassNotFoundException:org.apache.jsp.cal_005f1_jspjava.net.URLClassLoader$1.run(URLClassLoader.java:200)java.security.AccessController.doPrivileged(NativeMethod)java.net.URLClassLoader.findClass(URLClassLoader.java:188)org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134)org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:628)org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:149)org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:340)org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)javax.servlet.http.HttpServlet.service(HttpServlet.java:717)noteThefullstacktraceoftherootcauseisavailableintheApacheTomcat/6.0.35logs.--------------------------------------------------------------------------------ApacheTomcat/6.0.351)这个是cal_1.jsp:<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%><%@pageimport="cn.itcast.web.jsp.*"%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"><html><body><jsp:useBeanid="cb"class="cn.itcast.web.jsp.CalBean"scope="page"></jsp:useBean><jsp:setPropertyname="cb"property="*"/><%cb.cal();%><jsp:getPropertyproperty="cb"name="firstNum"/><jsp:getPropertyproperty="cb"name="operator"/><jsp:getPropertyproperty="cb"name="secondNum"/>=<jsp:getPropertyproperty="cb"name="result"/><hr/><!--V--><formaction="/myday10/cal_1"method="post"><tableborder="1"align="center"><caption>简单计算器</caption><tr><th>第一个参数:</th><td><inputtype="text"name="firstNum"/></td></tr><tr><th>运算符:</th><td><selectname="operator"><optionvalue="+"selected="selected">+</option><optionvalue="-">-</option><optionvalue="*">*</option><optionvalue="/">/</option></select></td></tr><tr><th>第二个参数:</th><td><inputtype="text"name="secondNum"/></td></tr><tr><tdcolspan="2"align="center"><inputtype="submit"/value="计算"></td></tr></table></form></body></html>2)这个是:CalBean.java:packagecn.itcast.web.jsp;importjava.math.BigDecimal;publicclassCalBean{privatedoublefirstNum;privatecharoperator;privatedoublesecondNum;privatedoubleresult;publicdoublegetFirstNum(){returnfirstNum;}publicvoidsetFirstNum(doublefirstNum){this.firstNum=firstNum;}publicchargetOperator(){returnoperator;}publicvoidsetOperator(charoperator){this.operator=operator;}publicdoublegetSecondNum(){returnsecondNum;}publicvoidsetSecondNum(doublesecondNum){this.secondNum=secondNum;}//保留一位小数点publicdoublegetResult(){BigDecimalbd=newBigDecimal(this.result).setScale(2,BigDecimal.ROUND_HALF_UP);returnbd.doubleValue();}publicvoidsetResult(doubleresult){this.result=result;}publicCalBean(){}publicvoidcal(){switch(this.operator){case'+':this.result=this.firstNum+this.secondNum;break;case'-':this.result=this.firstNum-this.secondNum;break;case'*':this.result=this.firstNum*this.secondNum;break;case'/':this.result=this.firstNum/this.secondNum;break;}}}
解决方案
解决方案二:
你的tomcat能启动么?访问http://localhost:8080/能否正确显示那只小猫?还有你的开发工具是什么?
解决方案三:
能,会出现那个小猫。我用的是myeclipse
解决方案四:
引用2楼u012540534的回复:
能,会出现那个小猫。我用的是myeclipse
http://zhidao.baidu.com/link?url=t3Q6OL2ndXaN05LRYja_WI12Ko2P3OykkUgg5P2-jcWEBjmPQxSMFMyryffrjbaM7QDx6zjh-ULkbSo4KbNeWq看看这个能不能解决你的问题
解决方案五:
目测cal_1.jsp中语法错误请楼主仔细检查可以删除cal_1.jsp中可能引起问题的代码依次排除