2010-04-11 100 views
2

我想知道如何在不使用JSP中的腳本的情況下閱讀附件消息?通過使用請求對象從servlet的,得到消息對象作爲一個屬性後,我怎麼能確認消息的內容是否是多部分的實例或沒有使用scriplets,如:如何在不使用JSP中的scriptlet的情況下閱讀附件消息?

if(message.getContent() instanceOf Multipart) 

我如何通過讀取任意文件的內容在JSP中使用EL?因爲我在inputStream子類中看不到任何getRead方法。

回答

2

添加這些干將到Message類自己:

public boolean isMultipart() { 
    return (getContent() instanceof Multipart); 
} 

public String getContentAsString() { 
    StringBuilder builder = new StringBuilder(); 
    // Append using BufferedReader/InputStreamReader. If necessary, do it lazily. 
    return builder.toString(); 
} 

這樣你可以在JSTL/EL中使用它:

<c:if test="${message.multipart}"> 
    <c:out value="${message.contentAsString}" /> 
</c:if> 
1

在servlet中也執行這個邏輯,並且只發送將用於呈現給jsp的數據。在這種情況下發送:

  • 一個boolean指示是否有附件
  • 附件列表
相關問題