データテーブルをサーバー側処理に変更しました。この時点から、行属性は機能しなくなったようです。
これは、JSP 内のデータテーブルの私の定義です。
<datatables:table id="users" url="/user_User_Json_List_Dandelion.action" serverSide="true" row="user">
<datatables:column titleKey="user.user.list.username" sortable="false" property="benutzername" />
<datatables:column titleKey="user.user.list.prename" sortable="false" property="person.vorname" />
<datatables:column titleKey="user.user.list.surname" sortable="false" property="person.nachname" />
<datatables:column titleKey="user.user.list.email" sortable="false" property="person.email" />
<datatables:column cssCellClass="img" sortable="false" cssCellStyle="width: 40px">
bla<c:if test="${user.gesperrt}">
<img src="<%=request.getContextPath()%>/static/images/locked.gif" title="<s:text name="%{getText('user.user.list.locked')}"/>"
alt="<s:text name="%{getText('user.user.list.locked')}"/>" />
</c:if>
<c:if test="${!user.aktiv}">
<img src="<%=request.getContextPath()%>/static/images/delete.gif" title="<s:text name="%{getText('user.user.list.delete')}"/>"
alt="<s:text name="%{getText('user.user.list.delete')}"/>" />
</c:if>
</datatables:column>
<datatables:column cssCellClass="img" sortable="false" cssCellStyle="width: 20px">
<c:if test="${!user.systemBenutzer}">
<s:url var="edit" action="user_User_Edit_Pre">
<s:param name="benutzerId">${user.benutzerId}</s:param>
</s:url>
<s:a href="%{edit}" title="%{getText('user.user.edit.header')}">
<img src="<%=request.getContextPath()%>/static/images/edit.gif" title="<s:text name="%{getText('user.user.edit.header')}"/>"
alt="<s:text name="%{getText('user.user.edit.header')}"/>" />
</s:a>
</c:if>
</datatables:column>
<datatables:column cssCellClass="img" sortable="false" cssCellStyle="width: 20px">
<s:url var="listRights" action="user_Auth_List_Pre">
<s:param name="benutzerId">${user.benutzerId}</s:param>
</s:url>
<s:a href="%{listRights}" title="%{getText('user.user.list.listRights')}">
<img src="<%=request.getContextPath()%>/static/images/user_details.gif" title="<s:text name="%{getText('user.user.list.listRights')}"/>"
alt="<s:text name="%{getText('user.user.list.listRights')}"/>" />
</s:a>
</datatables:column>
</datatables:table>
たとえば '' のようなすべての呼び出しが機能しません。サーバー側の処理をオンにして以来、利用可能なユーザー変数はありません。
Json WebService からの私の Json Result は次のようになります。
{"data":[{"aktiv":true,"benutzerId":"8a2fde263d8b94000144020a7e066fa5","benutzername":"adm_boegel","gesperrt":false,"systemBenutzer":false},{.....
それで、ここで何がうまくいかないのですか?他にどのようにデータにアクセスできますか?
助けてくれてありがとう。
編集:
テストのために、列の1つを次のように変更しました。
<datatables:column cssCellClass="img" sortable="false" cssCellStyle="width: 40px">
hello
</datatables:column>
'hello' は、約 2500 行のいずれにも出力されません。
編集2:
サーバー側に設定するたびに、経由でのみデータにアクセスできます
サーバー側を使用しない場合は、行属性や ${user.gesperrt} なども使用できます
多分それはバグですか?