2012-04-04 104 views
0

私の1つのJSPページから別のJSPページに2つのパラメータを渡したいとします。jspで複数のパラメータを渡す

まずJSPコード:

<% 
     java.util.Map map = new java.util.LinkedHashMap(); 
     map.put("Manage Client", "${pageContext.request.contextPath}/clients/"); 
    %> 
    <s:message var="message" code="label.NavigationBar.add"></s:message> 
     <jsp:include page="/includes/_navigation_top.jsp" > 
      <jsp:param name="topLeftNav" value="${message}"/> 
      <jsp:param name="parentNode" value="${map}"/> 
     </jsp:include> 

含まJSP(/includes/_navigation_top.jsp)ページコードがある

<c:if test="${ param.topLeftNav ne 'Quotes' }"> 
     <div class="third-nav"> 
      <div class="bread-crum"> 
       <ul > 
       <li><a href="${applicationScope.app_url_secure}/">Home</a></li> 
       <c:if test="${param.parentNode!=null }"> 
        <c:forEach items="${param.parentNode}" var="map"> 
         <li><a href="${map.value}">${map.key}</a></li> 
        </c:forEach> 
       </c:if> 
       <li>${param.topLeftNav}</li> 
       </ul> 
      </div> 
     </div> 
    </c:if> 

私が行方不明ですどこ誰もが私を助けることができますか?

答えて

0

oldschool スクリプトレットと最新のELを混在させています。同じ可変スコープを共有しません。 mapスクリプトレットスコープに作成しましたが、でELスコープで1つを渡そうとしていますが、それは明らかにnullです。

スクリプトレット(または、好ましくは、フロントコントローラーservlet)は、ELによって予期される正しい範囲に入れます。例えば。

request.setAttribute("map", map); 
+0

しかし、私は自分のJSPで地図を作成する必要があります。 jspを介してJSPで達成するための他の方法はありますか? –

+0

[JSTL](http://stackoverflow.com/tags/jstl/info)はプレゼンテーションのタグライブラリであり、フロントコントローラなどではありません。 Strutsを使用していることを示す ''が表示されます。代わりに、Strutsアクションクラスでジョブを実行します。または、データがアプリケーション全体であると想定されている場合は、代わりに 'ServletContextListener'を使用してください(または、使用できる場合はStruts固有のもの)。 – BalusC

+0

スプリングタグライブラリ –

関連する問題