含まれているJSPから、別のJSP(同じ親)で宣言された変数にどのようにアクセスできますか

StackOverflow https://stackoverflow.com/questions/5872146

  •  28-10-2019
  •  | 
  •  

質問

私は次のように見えるコードを含む親JSPを持っています

<jsp:include page='a.jsp' flush='true'/>
<jsp:include page='b.jsp' flush='true'/>
<jsp:include page='c.jsp' flush='true'/>

a.jsp アクセスする必要があるJavaオブジェクトがあります c.jsp

A.JSPから親JSPにコードを移動せずにこれを行う方法はありますか?

A.JSPがどのように見えるかは次のとおりです。

<%@ page import="com.xxx.yyy.myClass" %>
<%
    // Some processing here
%>
<table width="100%" cellspacing="0" class="scrollableTable">
    <thead>
        <tr>
        <%
            // Some processing here
            w_myObject = myAPI.getmyObject(param1, param2);
            // Some processing here
        %>
        </tr>
        <!-- Display contents of w_myObject in subsequent rows of this table, here -->
    </thead>
</table>

そして、c.jspのw_myobjectにアクセスしたい

役に立ちましたか?

解決

これはすべてスコープに関係しています。オブジェクトがリクエストスコープにある場合、もちろんアクセスできます。または、セッションスコープにある場合はアクセスできます。ただし、それがPageContextの範囲にある場合、各JSPが含まれるため、それは失われると思います。

それで、私が言いたいのは、オブジェクトをリクエストスコープに入れることであり、すべてのJSPで表示されます。

**a.jsp**
request.setAttribute("myObjectKey", w_myObject);

**c.jsp**
w_myObject = (TypeOfMyObject)request.getAttribute("myObjectKey");
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top