在我的JSP我得到這個警告投如何滿足警告在Java鑄造收集/ JSP
<%
Collection<Server> svr = (Collection<Server>)request.getAttribute("serverCollection");
%>
instanceOf
似乎沒有在這裏工作
在我的JSP我得到這個警告投如何滿足警告在Java鑄造收集/ JSP
<%
Collection<Server> svr = (Collection<Server>)request.getAttribute("serverCollection");
%>
instanceOf
似乎沒有在這裏工作
<%
@SupressWarnings("unchecked")
Collection<Server> svr = (Collection<Server>)request.getAttribute("serverCollection");
%>
順便說一句,使用scriplets是不是很好的東西,讀這thread about avoiding scriplets。
你不能「滿足」該警告。這是一個未經檢查的演員表,因爲該方法返回Object
,所以您無法對其執行任何操作。
如果您絕對肯定該屬性將始終包含Collection<Server>
您可以添加@SuppressWarnings("unchecked")
註釋。
您可以使用JSTL而不是scriptlet。它看起來像:
<c:set var="svr" value="${requestScope['serverCollection']}"/>
那個人在哪裏與代碼形成對比? – stackoverflow
@ Marshll187:它會在同一個地方。 –
你不能避免這個警告(除了通過抑制它)。問題是Java在運行時只能在運行時檢查該對象的類型是Collection
。它無法檢查它是否爲Collection<Server>
。這就是錯誤的含義。
謝謝你的迴應 – stackoverflow
什麼是警告內容? – Giann
在這條線找到多個註釋: \t - 類型安全:未選中從對象轉換爲 \t收藏 \t - 類型安全:未選中從對象轉換爲 \t收藏 –
stackoverflow
'@SuppressWarnings(「未登記」)' –