2017-09-18 4 views
-1

Ich habe ein VO-Objekt, das Zeichenfolge + eine Karteneigenschaft enthält. Dieses Objekt bildet eine Liste und dann versuche ich mit display: table diese Liste anzuzeigen. Für alle String-Eigenschaften Anzeige: Spalte ist in Ordnung, aber für den Kartencode mit Anzeige: Spalte wird schwierig, da der Schlüssel der Karte die Überschrift bildet, die nur einmal als Titel der letzten Anzeige angezeigt werden muss: Spalte und die Werte müssen iterieren. Ich habe zwei Optionen gesehen, entweder display: table in display: column oder iterate the map. Aber mit Anzeige: Tabelle innerhalb der Spalte konnte ich den Titel als statisch sehen (was in meinem Fall nicht der Fall ist).Wie man Anzeige verwendet: Tabelle für das Anzeigen von Karte innerhalb einer Liste

Der Code ohne display: table

<table id="prepaid" width="1120px" style="margin-left: 20px; border: 1px solid #7591AC;" cellSpacing=1 cellPadding=0 class=tabular> 

      <logic:present name="provisioningStatisticsResultList"> 
       <logic:iterate id="provisioningStatisticsResultListObj" name="provisioningStatisticsResultList" indexId="index">      
        <bean:define id="mapEntry" name="provisioningStatisticsResultListObj" property="rangeMap" /> 
        <tr> 
        <logic:equal name="index" value="0"> 
         <th><bean:message key="label.applicationId" bundle="labels" /></th> 
         <th><bean:message key="label.version" bundle="labels" /></th> 
         <th><bean:message key="label.results" bundle="labels" /></th> 

         <logic:iterate id="map" name="mapEntry"> 
          <th><bean:write name="map" property="key" /></th> 
         </logic:iterate> 
        </logic:equal> 
        </tr> 
         <tr class="tableRowEven"> 

         <td class="td.iconCell"><bean:write name="provisioningStatisticsResultListObj" property="applicationId" /></td> 
         <td><bean:write name="provisioningStatisticsResultListObj" property="apkVersion" /></td> 
         <td><bean:write name="provisioningStatisticsResultListObj" property="activationType" /></td> 
         <td><bean:write name="provisioningStatisticsResultListObj" property="status" /></td> 
         <logic:iterate id="map" name="mapEntry"> 
          <td><bean:write name="map" property="value" /></td> 
         </logic:iterate> 

        </tr> 
       </logic:iterate> 
      </logic:present> 
</table> 

Mit display: table ich verschiedene Möglichkeiten ausprobiert, aber nichts funktioniert, können alle zusammen (kommentierte ein) einige syntatical Fehler oder eine andere Lösung sein:

     <display:table name="sessionScope.provisioningStatisticsResultList" 
         id="provisioningStatisticsResultListObj" defaultsort="1" defaultorder="ascending" 
         pagesize="<%= recordsPerPage %>" cellspacing="0" cellpadding="3" 
         requestURI="/provisioningStatistics.do" export="true" 
         class="data_table width_full" style="margin-left:20px;"> 

         <display:column title="Application ID"> 
         <bean:write name="provisioningStatisticsResultListObj" property="applicationId"/> 
         </display:column> 
         <display:column title="Version"> 
         <bean:write name="provisioningStatisticsResultListObj" property="apkVersion"/> 
         </display:column> 
         <display:column title="Results"> 
         <bean:write name="provisioningStatisticsResultListObj" property="status"/> 
         </display:column> 
         <bean:define id="mapEntry" name="provisioningStatisticsResultListObj" property="rangeMap" /> 
         <logic:iterate id="map" name="mapEntry"> 
          <display:column title="<bean:write name="map" property="key" />"> 
          <bean:write name="map" property="value" /></display:column> 
         </logic:iterate> 
         <%-- <display:column property="rangeMap"> 
         <display:table id="mapEntry" name="rangeMap" style="margin-left:20px;"> 
          <display:column title = "<bean:write name="map" property="key" />" > 
         <bean:write name="map" property="value" /> 
         </display:column> 
          </display:table> 
         </display:column> --%> 


         <%-- <logic:iterate id="map" name="mapEntry" property="rangeMap" indexId="index1"> 
         <display:column title = "<bean:write name="map" property="key" />" > 
         <bean:write name="map" property="value" /> 
         </display:column> 
        </logic:iterate> --%> 
        </display:table> 

        </tbody> 
        </table> 

      </logic:present> 

Mein Projekt mit Streben 1. Bitte helfen Sie mir den Code zu korrigieren

Antwort

0

Sie müssen die Tag-Bibliothek einschließen y, die die display Tag hat definiert:

<%@ taglib uri="http://displaytag.sf.net" prefix="display" %>

Stellen Sie außerdem sicher, dass die JAR-Datei displayTag.jar in Ihrem Classpath ist.

Verwandte Themen