Ich habe Probleme beim Zugriff auf ein bestimmtes Objektattribut einer Liste von Objekten, wenn der Attributname eine Variable ist.Zugriff auf Objektattribut, wenn Objektname in Struts2 variabel ist
Dies ist ein Beispiel, in dem Benutzer eine Liste von Benutzer und userAttributeList
ist eine Liste von String, die den Namen des Benutzerattributs enthält.
<%
.......
ActionContext.getContext().put("userAttributeList", request.getAttribute("userAttributeList"));
%>
<s:iterator value="users">
<s:iterator value="%{userAttributeList}" var="userAttribute">
... <s:property value="%{#userAttribute}" />
</s:iterator>
</s:iterator>
In diesem Fall kehrt das Eigenschaftstag nicht Wert des Attributs wie John, 20-05-1990 und so weiter, aber den Namen des Attributs wie Benutzername, birth und so weiter zurück.
public class UserAction extends ActionSupport {
@Override
public String execute()
throws Exception {
HttpServletRequest request = ServletActionContext.getRequest();
ArrayList userAttributeList= new ArrayList();
// some logic implementation and populate the `userAttributeList`(username, birthDate, password etc)
request.setAttribute(userAttributeList, userAttributeList);
return SUCCESS;
}
}
Die userAttributeList
Arraylist enthalten den Namen des Attributs eines Nutzers. Diese Arraylist wird verwendet, um die Implementierung zu vereinfachen und eine dynamicaly Lösung für diese erstellen:
<s:iterator value="users">
<s:property value="%{username}" />
<s:property value="%{birthDate}" />
<s:property value="%{password}" />
....
</s:iterator>
Beitrag einen Code, wo Sie füllen 'userAttributeList' –
@Roman C I edited meine Post – Ariana