小弟在维护过程中遇到个小问题,请大家帮忙解答我在查看一部分学生用户信息时会遇到如下报错:500 Servlet Exception[show] java.lang.NumberFormatException: For input string: "9-"java.lang.NumberFormatException: For input string: "9-"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:456)
at java.lang.Integer.<init>(Integer.java:620)
at _jsp._servlets._showstudentevent__jsp._jspService(servlets/ShowStudentEvent.jsp:103)
at com.caucho.jsp.JavaPage.service(JavaPage.java:61)
at com.caucho.jsp.Page.pageservice(Page.java:578)
at com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:195)
at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:187)
at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:266)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:270)
at com.caucho.server.port.TcpConnection.run(TcpConnection.java:678)
at com.caucho.util.ThreadPool$Item.runTasks(ThreadPool.java:721)
at com.caucho.util.ThreadPool$Item.run(ThreadPool.java:643)
at java.lang.Thread.run(Thread.java:619)我在检查了数据库对应表内数据时发现 报错的用户信息都有个共同点 就是date为 2009-02-21
当我将2009改为2008时 问题解决,能够顺利查看信息.
请问我该如何修改才能解决该问题,让date为2009-02-21的用户信息顺利显示?
(注:其他如2009-03-24的日期不存在这个问题,都能正常显示,只有2009-02-21这个date的数据无法正常显示)
非常感谢!下面是对应jsp的代码:(下划线部分为报错的103行内容)

<%
Iterator iterator=collection.iterator();
while (iterator.hasNext())
{
temp = (String) iterator.next();
StringTokenizer st = new StringTokenizer(temp, ",");
int EventID = new Integer(st.nextToken()).intValue();
String EventName = st.nextToken();
String EventDate = st.nextToken();
String EventStartTime = st.nextToken();
String StartTime = EventStartTime.trim().substring(3);
hour = new Integer(StartTime.substring(0,2)).intValue();
    if(hour>12)
          hour-=12;
        String StTime = (new Integer(hour)).toString() + StartTime.substring(2);
String EventEndTime = st.nextToken();
String EndTime = EventEndTime.trim().substring(3);
hour = new Integer(EndTime.substring(0,2)).intValue();
        if(hour>12)
          hour-=12;
        String EnTime = (new Integer(hour)).toString() + EndTime.substring(2);
String Hours = st.nextToken().trim();
String SportHrs = st.nextToken();
String PubAwaHrs = st.nextToken();
String OutSideHrs = st.nextToken();
boolean flag = false;
float HoursCompleted = 0;
float SportHrsComp = 0;
float PubAwaHrsComp = 0;
float OutSideHrsComp = 0;
if(Hours.equals("Yet to Attend"))
{
flag = true;
}
else
{
HoursCompleted = (new Float(Hours)).floatValue();
SportHrsComp = (new Float(SportHrs)).floatValue();
PubAwaHrsComp = (new Float(PubAwaHrs)).floatValue();
OutSideHrsComp = (new Float(OutSideHrs)).floatValue();
}
%>