0

X.Java.この下の2行で私がやっているように1つのクラスがあります

request.getSession.setAttribute("count",String.valueOf(rsp.getCount()));

上記では、 のデータベースからカウントを取得していますrsp.getCount()getcount()これは整数型で、String as に変更し、String.valueOf(rsp.getCount()1 つの属性 as に設定していますcount

X.jsp として 1 つの jsp があります。現在、型の変数にgetAttribute値を使用して格納しています。failCountstring

String failCount = request.getSession.getAttribute("count");

この値を整数型に変換したいので、この行を書きました

int countInt = Integer.parseInt(failCount);

以下のようなエラーが発生しています

127039 13-02-26 17:13:35 ERROR http-10.18.2.105-12205-Processor4 - <JSPFilter ServletException> - test.abc.common.filter.JSPFilter.doFilter(JSPFilter.java:111) 
org.apache.jasper.JasperException: Exception in JSP: abc/x.jsp:66 

63:              
64:          } 
65:          String failCount = (String)request.getSession().getAttribute("failCount"); 
66:          int failCountint = Integer.parseInt(failCount); 
67:          //System.out.println(failCountint); 
68:           
69:           


Stacktrace: 
        at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:489) 
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411) 
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308) 
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) 
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) 
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:679) 
        at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:461) 
        at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:399) 
        at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301) 
        at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:142) 
        at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:247) 
        at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1105) 
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:841) 
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:755) 
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:396) 
        at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:350) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:627) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

これを修正するのを手伝ってください。

4

3 に答える 3

0

HttpRequestでセッションを設定していることを確認してください

request.getSession.setAttribute("count",String.valueOf(rsp.getCount()));

このJavaファイルはサーブレットですか?それならうまくいきます。

もう1つ、rsp.getCount()が「null」を返さないことを確認してください。

JSPファイル内

String failCount = (String)request.getSession().getAttribute("failCount"); 
int failCountint = Integer.parseInt(failCount); 

セッションの代わりにrequest.getSession()を使用していて、カウントの代わりにフェイルカウントを取得しようとしているのはなぜですか

これを試して

String failCount = session.getAttribute("count").toString();
int countInt = Integer.parseInt(failCount);

私はそれが完全に役立つかもしれないと思います...

于 2013-02-26T12:14:22.243 に答える
0

設定値はセッションです:

request.getSession.setAttribute("count",String.valueOf(rsp.getCount()));

セッションからの値の読み取り:

String failCount = (String)request.getSession().getAttribute("failCount"); 

セッションで値を設定している間はそれを呼び出しcount、JSPから値を読み取っている間はそれを呼び出していfailCountます。

于 2013-02-26T12:14:31.597 に答える
0

なぜ int failCountint = Integer.parseInt(failCount); なのか、failCount が null だと思います。

したがって、System.out.println(failCount); を使用してください。

また、エラー行の周りで try catch ブロックを使用します。

于 2013-02-26T12:21:48.587 に答える