我在jsp里面<%  %>里面 写一个 int a =100; 然后我想把这个数放作用域里 例如application.setAttribute("no",a);
   然后在servlet里面 通过这个作用域.getAttribute 再取到 结果取到的null...
求问 到底怎么回事?好久没看这个了只有个大概印象,求哥们帮忙

解决方案 »

  1.   

    你放到session里面试试看,通过session取
      

  2.   

    是不是写法有问题啊,application对象在Server运行期间一直有效的
      

  3.   

    变量a的生命周期没了,所以就没了吧。(会不会是因为如此,我不确定)
    不知道传递属性的时候,是指向a,还是会自己建一个变量保存a的值。
      

  4.   

    试试
    <%! int a = 100 %>
    <% pageContext.setAttribute("no",a) %>
      

  5.   

    final javax.servlet.jsp.PageContext pageContext;
        javax.servlet.http.HttpSession session = null;
        final javax.servlet.ServletContext application;
        final javax.servlet.ServletConfig config;
        javax.servlet.jsp.JspWriter out = null;
        final java.lang.Object page = this;
        javax.servlet.jsp.JspWriter _jspx_out = null;
        javax.servlet.jsp.PageContext _jspx_page_context = null;
    有没有对应错,
    application是整个容器,放进去不会丢失的
      

  6.   

    这个问题描述的不是很清楚。 如果是 首次 发请求到servlet A ,然后 A 跳转到 JSP,此时JSP里设置值,那么之前A getAttribute肯定是null。第二次请求application中才设置了属性(server不重启的话)。 不知道LZ想问的是什么
      

  7.   

    session传值吧。另外在application
    设置后,输出,参考