在第一个JSP中,我创建了一个servletcontext,其中我将一个Count属性与num值放在一起,在第二个JSP中,我从该上下文中获取了Count值,但它给了我错误。如何在数组中保存servletcontext类型的对象?
jsp1:
<%!int num=0;%>
<%ServletContext cont = getServletConfig().getServletContext();
num++;
cont.setAttribute("Conta",num);
%>
jsp2:
<% ServletContext cont = getServletConfig().getServletContext();
int contator=Integer.parseInt(cont.getAttribute("Conta"));
%>
很难说没有错误,但我想我可能已经找到了它。
当Integer.parseInt(String)收到一个int / Integer时,你正在遇到一个错误,这很可能是一个找不到方法的错误。在这种情况下,[void setAttribute(String,Object)]将获取传递它的整数,[Object getAttribute(String)]将返回整数。然后Integer.parseInt(String)将失败。
如果你重构不执行Integer.parseInt()并将结果转换为int,那么你应该没问题。