2011-04-28 46 views
3
<% 
    UserDetailsVO objUserDetailsVO = null; 
    ArrayList arlUserDetailsVO = (ArrayList)request.getAttribute("LSTUSERSDETAILS"); 
    String nonBifFlag = ""; 
    if(arlUserDetailsVO !=null){ 
    Iterator it = arlUserDetailsVO.iterator(); 
    String urlProfile=""; 
    while(it.hasNext()){ 
     objUserDetailsVO = (UserDetailsVO)it.next(); 
     urlProfile = "UserProfile.htm?userID="+objUserDetailsVO.getLogin_Ident()+"&internalID=111"+objUserDetailsVO.getInternalId(); 

%> 
+0

這樣做有什麼特別的理由嗎? – 2011-04-28 13:19:57

+1

@哈利是的。 :)它總是更好 – 2011-04-28 13:20:39

+0

你到目前爲止嘗試了什麼? – Thomas 2011-04-28 13:21:36

回答

3

請確保您有jstl.jarstandard.jarJSTL是在類路徑(即您的Web項目的WEB-INF/lib文件夾)。 JSP頁面的頂部,你將需要:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 

你的代碼的直譯應該是這樣的:

<c:set var="objUserDetailsVO" value="${null}"/> 
<c:set var="arlUserDetailsVO" value="${requestScope['LSTUSERSDETAILS']}"/> 
<c:set var="nonBifFlag" value=""/> 
<c:if test="${not empty arlUserDetailsVO}"> 
    <c:set var="urlProfile" value="${null}"/> 
    <c:forEach var="objUserDetailsVO" items="${arlUserDetailsVO}"> 
     <c:url var="urlProfile" value="UserProfile.htm"> 
      <c:param name="userID" value="${objUserDetailsVO.login_Ident}"/> 
      <c:param name="internalID" value="111${objUserDetailsVO.internalId}"/> 
     </c:url> 
    </c:forEach> 
</c:if> 

雖然,考慮到塔你並不真的需要設置頁/因爲它們已經null請求屬性null,你很可能削減下來到這一點:

<c:set var="arlUserDetailsVO" value="${requestScope['LSTUSERSDETAILS']}"/> 
<c:if test="${not empty arlUserDetailsVO}"> 
    <c:forEach var="objUserDetailsVO" items="${arlUserDetailsVO}"> 
     <c:url var="urlProfile" value="UserProfile.htm"> 
      <c:param name="userID" value="${objUserDetailsVO.login_Ident}"/> 
      <c:param name="internalID" value="111${objUserDetailsVO.internalId}"/> 
     </c:url> 
    </c:forEach> 
</c:if> 

注意,通過使用<c:url>來構建你的url,你的url params現在將被正確編碼,因爲它們不會被編碼到你的java代碼片段中。

1

嘗試核心標籤以及請求等的綁定。 <c:forEach><c:out><c:if> ...

這裏有一個short tutorial(或者,如果你能閱讀德文:a German tutorial/reference)。

+0

我不確定德語版的教程對OP來說有多麼有用:) – prasopes 2011-04-28 13:31:56

+0

糟糕,你是對的。修復 ;) – Thomas 2011-04-28 13:33:00