2012-11-27 45 views
0

我有一個JSP頁面,它顯示一個包含幾行的表格。 在編譯時一切看起來不錯,在運行時我得到這個「代碼太大,嘗試塊」的錯誤。我看到我應該泄露JSP並且有幾個包含。但是我的JPS不允許,因爲所有的東西都和一張桌子上有幾個tr和td的。所以我cldnt分裂。還有其他方法嗎?或者我怎樣才能將JSP溢出表格?代碼對於JSP中的嘗試塊來說太大

+0

另一種方法是將您的java代碼從您的表示層中分離出來,方法是將其保留在您的JSP之外。你在用什麼框架:Spring? EJB? – jahroy

+0

@ Jahroy..its Struts框架 – JNPW

+0

我的JSP沒有任何核心Java代碼。它的所有JSTL都在JSP中。 – JNPW

回答

0

已經說過,數據模型和視圖的分離有其優點。

但是,您也可以在JSP中使用方法;輸出也可以在方法中用%>...<%完成。

JSP聲明進來<%! ... %>

<%! 

private void f(JspWriter out) throws Exception { 
    out.println("hello"); 
} 


private void tr(String a, String b) throws Exception { 
    %><tr><td><%= a %></td><td><%= b %></td></tr> 
    <% 
} 

%> 
<% 
    f(out); 
%> 
<table> 
<% 
    tr("good day", "bonan tagon"); 
    tr("good night", "bonan nokton"); 
%> 
</table> 
+0

有這些標籤有什麼用?我應該在那裏放什麼代碼? – JNPW

+0

聲明,就像函數一樣,所以你可以將你的jsp分成更小的部分。也許可重複輸出TR的功能。 –

+0

但不是jsp中的scriptlet轉換爲java和palced裏面的service()方法?不會給出相同的結果。我不知道。有人可以知道。 – JNPW

相關問題