我正在使用Liferay MVC famework
在Liferay 6.1中开发一个portlet。当我使用
<liferay-ui:search-container />
Eclipse始终向我显示以下警告消息
SearchContainer是一种原始类型。对泛型类型的引用
SearhcContainer<R>
应该参数化
JSP代码片段:
<%
List<User> users = UserLocalServiceUtil.search(...);
%>
<liferay-ui:search-container>
<liferay-ui:search-container-results
results="<%= users %>"
total="<%= users.size() %>"
/>
<liferay-ui:search-container-row
className="com.liferay.portal.model.User"
keyProperty="userId"
modelVar="userVar">
<liferay-ui:search-container-column-text
name="name"
value="<%= userVar.getFullName() %>" />
</liferay-ui:search-container-row>
<liferay-ui:search-iterator />
</liferay-ui:search-container>
我搜索了很多例子。我已将它们导入我的工作区。当使用search-container
标记时,它们也会向我显示相同的警告消息。
这个portlet就是一个例子:Event listing portlet
在/docroot/html/eventlisting/view.jsp Eclipse中向我显示了同样的警告。
我没有在stackoverflow中找到任何搜索解决方案,也没有找到google。我在jsp中发现了很多对警告的引用,但是当使用某些标记时发生警告时没有。
如果可能,我不想禁用JSP验证或使用某些@SuppressWarnings
。
我真的想知道在使用这个taglib时是否有正确的方法来避免JSP中的此警告。
我正在使用
- Liferay 6.1.1 CE GA2
- Eclipse Luna Release 4.4.0
提前致谢
答案 0 :(得分:6)
类SearchContainer是泛型类(http://cdn.docs.liferay.com/portal/6.1/javadocs/com/liferay/portal/kernel/dao/search/SearchContainer.html),并且当您尝试实例化而不传递类型参数时,所有泛型类都会产生警告。
更多详情:
但SearchContainer是通过tablib实例化的,所以我认为eclipse“透视”taglib并产生警告。问题可能在于生成的代码,我真的猜测这个问题没有实用的解决方案(挂钩/扩展taglib代码?真的吗?)
对不起这个(联系)回答!