I use the <display:table> to show data. This tag is in a jsp file. This is a
snippet of my code:
--------------------------- START OF FILE -------------------------
<% PortletRequest portletRequest = (PortletRequest)
request.getAttribute("javax.portlet.request");
PortletSession renderPSession = portletRequest.getPortletSession();
ValueListHandler queryData = (ValueListHandler)
renderPSession.getAttribute(GeneralPortalConstants.ATTRIBUTE__QUERY_DATA);
%>
<script type="text/javascript">
<!--
setInterval("reloadList()", 5000);
function reloadList(){
alert('RELOADING ');
asynchGet('/reloadeventslistservlet');
showEventList();
}
function showEventList(){
var div = document.getElementById("eventlistval");
div.innerHTML = "";
div.innerHTML = portletReq.responseText;
}
//-->
</script>
....
<c:set var="listaVal" value="<%= queryData.getList()%>"></c:set>
<form name="listForm" method="post" action="${addRowURL}">
<input type="hidden" name="<%=
GeneralPortalConstants.PARAMETER__CORE_EVENTLIST_EVENT_ID %>" value="">
<div id="eventlistval">
<display:table name="${listaVal}" id="item" pagesize="6" sort="list"
style="width:100%; text-align:center" cellpadding="0" cellspacing="0"
class="bem-theme.css">
<display:column sortable="true" property="eventId"
title="${n:i18n('label.event.number')}" headerClass="sortable" />
<display:column sortable="true" property="startDateTime"
title="${n:i18n('label.event.start_date')}" headerClass="sortable" />
<display:column sortable="true" property="coreEventType"
title="${n:i18n('label.event.type')}" headerClass="sortable" />
<display:column sortable="true" property="coreEventSubType"
title="${n:i18n('label.event.subtype')}" headerClass="sortable" />
<display:column sortable="true" property="coreEventState"
title="${n:i18n('label.event.state')}" headerClass="sortable" />
<display:setProperty name="paging.banner.one_item_found"
value=""></display:setProperty>
<display:setProperty name="paging.banner.some_items_found"
value=""></display:setProperty>
<display:setProperty name="paging.banner.all_items_found"
value=""></display:setProperty>
</display:table>
</div>
</form>
--------------------------- END OF FILE -------------------------
Now, I'm using Ajax to refresh my table asynchronously. The above jsp calls
ReloadEventsListServlet class. In this class, I refresh the queryData
variable, that contains a list of all the values. Now, I want to rebuild the
table again. How can I do it?
Here is my servlet:
--------------------------- START OF FILE -------------------------
public class ReloadEventsListServlet extends HttpServlet {
private final Logger log = Logger.getLogger(getClass().getName());
private List eventSubTypesVO = null;
protected void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
response.setContentType("text/html");
String eventTypeStr = "";
//(String)
request.getAttribute(GeneralPortalConstants.PARAMETER__CORE_EVENT_TYPE_LIST)
;
try {
ValueListHandler valueListHandler =
getManagerBem().doFilterCriteria(eventTypeStr);
request.setAttribute(GeneralPortalConstants.ATTRIBUTE__QUERY_DATA,
valueListHandler);
} catch (BemException e) {
log.error(GeneralPortalConstants.getExceptionMessage("BEM-ERROR",
getClass().getName(),
Thread.currentThread().getStackTrace()[2].getMethodName(),
"getTaskListPage()"), e);
e.printStackTrace();
}
PrintWriter out = response.getWriter();
out.println("<display:table name='${listaVal}' id='item'
pagesize='6' sort='list' style='width:100%; text-align:center'
cellpadding='0' cellspacing='0' class='bem-theme.css'>");
out.println("<display:column sortable='true'
property='eventId' title='${n:i18n('label.event.number')}'
headerClass='sortable' />");
out.println("<display:column sortable='true'
property='startDateTime' title='${n:i18n('label.event.start_date')}'
headerClass='sortable' />");
out.println("<display:column sortable='true'
property='coreEventType' title='${n:i18n('label.event.type')}'
headerClass='sortable' />");
out.println("<display:column sortable='true'
property='coreEventSubType' title='${n:i18n('label.event.subtype')}'
headerClass='sortable' />");
out.println("<display:column sortable='true'
property='coreEventState' title='${n:i18n('label.event.state')}'
headerClass='sortable' />");
out.println("<display:setProperty
name='paging.banner.one_item_found' value=''></display:setProperty>");
out.println("<display:setProperty
name='paging.banner.some_items_found' value=''></display:setProperty>");
out.println("<display:setProperty
name='paging.banner.all_items_found' value=''></display:setProperty>");
out.println("</display:table>");
}
}
--------------------------- END OF FILE -------------------------
The PrintWriter out doesn't work.
Thanks,
Pedro
-----------------
PSC
_______________________________________________
displaytag-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/displaytag-user