zoukankan      html  css  js  c++  java
  • jsp jsp:useBean 在第二个jsp页面访问第一个jsp页面中产生的ArrayList

    i would like to do the following but i cannot access the ArrayList via
    the JSP. could anyone help?

    1. use the doView()- method to store an ArrayList in the session
    ================================================== ===============
    doView(){
    ....
    MySimpleBean my1 = new MySimpleBean();
    my1.setMessage("test1");
    MySimpleBean my2 = new MySimpleBean();
    my2.setMessage("test2");
    ArrayList mySimpleBeans = new ArrayList();
    mySimpleBeans.add(my1);
    mySimpleBeans.add(my2);
    request.getPortletSession().setAttribute("jens", mySimpleBeans,
    PortletSession.PORTLET_SCOPE);
    ....
    }


    2. access this bean from the JSP (this does not work)
    ================================================== ===============
    <%@ page session="true" contentType="text/html"
    import="java.util.*,javax.portlet.*,
    com.linde.portal.application.domino.pike.navigatio n.*" %>
    <%@ taglib uri="http://java.sun.com/portlet" prefix="portlet"%>
    <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>
    <%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt"%>
    <portlet:defineObjects />

    <jsp:useBean id="jens"
    class="com.linde.portal.application.domino.pike.na vigation.MySimpleBean"
    scope="session"></jsp:useBean>

    <table>
    <c:forEach var="mySimpleBean" items="${jens}">
    <tr>
    <td><cut value="${mySimpleBean.message}"/></td>
    </tr>
    </c:forEach>
    </table>

    3. this code works...
    ================================================== ===============
    ....
    <%
    ArrayList jens2 = null;
    try {
    PortletSession mySession = renderRequest.getPortletSession();
    jens2 = (ArrayList) mySession.getAttribute("jens",
    PortletSession.PORTLET_SCOPE);}
    catch (Exception e){
    e.printStackTrace(System.out);
    } %>
    <%
    if (jens2 != null){
    %>
    <%= ((MySimpleBean)jens2.get(0)).getMessage() %>
    <%} else { %>
    <%= "empty" %>
    <%} %>

    =============

    Posts: n/a
    Default Re: jsp:useBean - access ArrayList containing beans?
    i looked at it once more and noticed the following which seems to be
    related to the problem. i can access the attribute "jens2" in the jsp
    but i cannot access the attribute "jens3". there will be an empty
    string cerated for "jens3". can you explain me why?

    thanks!


    Portlet
    ================================================== ===============
    doView(){...
    request.setAttribute("jens2", "REQUEST hello world");
    request.getPortletSession().setAttribute("jens3", "SESSION hello
    world");
    ....}

    JSP
    ================================================== ===============
    <jsp:useBean id="jens2" class="java.lang.String"
    scope="request"></jsp:useBean>
    <jsp:useBean id="jens3" class="java.lang.String"
    scope="session"></jsp:useBean>
    ....
  • 相关阅读:
    Android"寻龙点穴"指南针
    如何获取注册地图API的SHA1值与PackageName?
    如何获取注册地图API的SHA1值与PackageName?
    Error:Execution failed for task ':app:transformClassesWithDexForDebug'解决记录
    Error:Execution failed for task ':app:transformClassesWithDexForDebug'解决记录
    LocationManager的使用
    LocationManager的使用
    Android方向传感器
    Android方向传感器
    Android光线传感器
  • 原文地址:https://www.cnblogs.com/cy163/p/1679529.html
Copyright © 2011-2022 走看看