以下是IE中的错误信息:
HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: An exception occurred processing JSP page /send.jsp at line 4744:  {
45:  if(((String)lst.get(i)).contains("[FACE"))
46:  {
47:  faceID=Integer.parseInt(strMsg.substring(strMsg.indexOf("E")+1,strMsg.indexOf("]")));
48:  }
49:  if(faceID!=0)
50:  {
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:515)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:426)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause java.lang.NullPointerException
org.apache.jsp.send_jsp._jspService(send_jsp.java:101)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.10 logs.
--------------------------------------------------------------------------------Apache Tomcat/6.0.10下面是具体JSP代码片段:<%
int faceID=0;
String strMsg=(String)request.getParameter("txtContent");
int line=1;
request.setCharacterEncoding("GBK");
if(application.getAttribute("MSG")!=null)
{
List<String> lst=new ArrayList<String>();
lst=(List<String>)application.getAttribute("MSG");
for(int i=0;i<lst.size();i++)
{
if(((String)lst.get(i)).contains("[FACE"))
{
faceID=Integer.parseInt(strMsg.substring(strMsg.indexOf("E")+1,strMsg.indexOf("]")));
}
if(faceID!=0)
{
out.print(line+". "+(String)lst.get(i));
%>
<img src="expression/<%=faceID%>.gif"/>
<%
}
else
{
out.print(line+". "+(String)lst.get(i));
}
out.print("<br/>");
line++;
}
}
%>
问题是:问什么红色的那段代码总是报错啊!为什么通过request拿到的值不能操作呢?实现已经将其转为字符串格式来呀!将红色代码换成:out.print(strMsg.indexOf("E")+1);也不行,但可以这样写:out.print(strMsg);为什么呢?