2010-11-03 53 views
1

我使用的代碼運行正常,但這是我jsp中的最後一個scriptlet:jstl問題:從我的jsp中刪除的最後一個scriptlet

<% List listMillesime= MultiMillesimeFactory.getInstance().getListMillesimeActif(); 
    pageContext.setAttribute("listMillesime",listMillesime); 
    %> 
... 
<c:forEach var="millesime" items="${listMillesime}"> 
... 
</c:forEach> 

這是工廠聲明:

public class MultiMillesimeFactory { 

    private static MultiMillesime multiMillesime; 

    private MultiMillesimeFactory(){ 
    } 

    public static MultiMillesime getInstance() { 
     if (multiMillesime == null) { 
      multiMillesime = new MultiMillesime(); 
     } 
     return multiMillesime; 
    } 
} 

Multimillesime是一個標準類,方法getListMillesimeActif返回一個列表。聲明:

public class MultiMillesime { 
... 
    public List getListMillesimeActif() throws Exception { 
    List _l = Collections.synchronizedList(new LinkedList()); 
... 
    return _l; 
    } 
} 

c:對於每個在列表和枚舉上工作正常但這裏的問題來自使用getInstance,我嘗試過MultiMillesimeFactory.Instance.ListMillesimeActif但沒有成功。

最後一個小腳本是:

<a href='<%=request.getContextPath() %> 

我不確定這兩個都是可移動的。

回答

3

,可隨時更換<%=request.getContextPath() %>小腳本用JSTL標籤:

<a href="${pageContext.request.contextPath}" /> 

的情況並不少見看到這樣的事情,無論是:

<c:set var="ctx" value="${pageContext.request.contextPath}"/> 
... 
<a href="${ctx}" /> 

至於與MultiMillesimeFactory問題:它看起來這是你的代碼庫中的一個類,我們不能神奇地爲你調試這個問題。這聽起來不像一個JSP問題。

「試過MultiMillesimeFactory.Instance.ListMillesimeActif沒有成功」是什麼意思?


編輯:回覆:您的評論:我不知道我明白你的意思,但我想這個問題是你需要使用的MultiMillesimeFactory完全合格的類名來關注一下吧正確地進行。但是,您應該儘可能避免使用scriptlet。相反,使用適當的servlet的ListMillesimeActif注入的要求,就像這樣:

public class MyServlet extends HttpServlet implements Servlet 
{ 
    //... 

    @Override 
    public void doGet(HttpServletRequest request, HttpServletResponse response) 
    { 
     //... 
     List listMillesime = MultiMillesimeFactory.getInstance().getListMillesimeActif(); 
     request.setAttribute("millesime", listMillesime); 
     //... 
    } 

    //... 
} 
+0

試圖MultiMillesimeFactory.Instance.ListMillesimeActif沒有成功:這意味着,通常JSTL「發現」它看起來像一個getter方法的屬性的方法或僞屬性。事實上,我大約95%確定A.ListMillesimeActif找到A.getListMillesimeActif()方法,即使ListMillesimeActif不是A類的屬性,也只是一種方法。我已經爲getInstance嘗試過,我認爲這是我的問題的關鍵。 – jayjaypg22 2010-11-03 14:17:21

+0

@jayjay:看我的編輯。我仍然不清楚什麼是「不成功」 - 你有編譯器錯誤嗎?空指針異常?等等。 – 2010-11-03 14:26:48

+0

在我的jsp中沒有空的列表,但是你在參數列表中的解決方案必須是好的。我會嘗試一下,然後關閉這個主題 – jayjaypg22 2010-11-03 14:59:00

相關問題