后面应该还有更详细的异常信息吧。
检查下是否是cart.getUserId()为空导致的空指针呢
换个写法,将常量"china"写在前面,if("china".equals(cart.getUserId()))

解决方案 »

  1.   

    对了,一并检查下cart,也要防止cart为空
      

  2.   

    测试了下是cart不为空,但是getUserId为空,请问如何处理,也login.jsp页面没有传递过来值吗?
      

  3.   

    应该是的。

    <jsp:useBean id="cart" class="com.jspdev.ch6.Cart" scope="session">
            <jsp:setProperty name="cart" property="*"/>
        </jsp:useBean>    
        <%
            session.setMaxInactiveInterval(900);    //设置session超时时间是30分钟;
        %>
        <% 
            String nextpage;
            if(cart.getUserId().equals("china"))
                nextpage="shopping.jsp";
            else
                nextpage="login.jsp";
         %>
         <jsp:forward page="<%=nextpage%>"/> 这一段放到后台servlet中测试一下,后台可以打断点,方便调试。
      

  4.   

    表单属性userid,bean属性cart.getUserId()明显不对应,id的i保持同步。
      

  5.   

    5楼正解
    表单属性和bean属性要对应
    set-gets自动生成最好
      

  6.   

    你应该没有把userid封装到cart里面吧,你的那个setProperty是不会自动把请求参数封装到里面的
      

  7.   

    cart 里面 userid 看看大小 写等。
      

  8.   

    表单属性的问题,应该是userId,第一次使用javaBean,这次搞定了。呵呵,谢谢各位!!!!