2016-06-16 95 views
0

我需要adminimnmuebles.jsp顯示「Pisos」列表及其各自的值。除了來自對象「Propietario」的對象的價值之外,它完全表現出它來自Pisos。我試圖展示,但它不起作用。從其他對象內部顯示對象的值

行動MostrarInmuebles.java:

private ArrayList<Piso> pisos = new ArrayList<Piso>(); 

private PisoDAO pisodao = new PisoImpl(); 


public String Mostrar() { 

    System.out.println("Entro en mostrar pisos"); 
    pisos = pisodao.MostrarPisos(); 
if (pisos.isEmpty()) { 
    return NONE; 
} 
else { 
return SUCCESS; 
} 
} 

public ArrayList<Piso> getPisos() { 
    return pisos; 

} 

AdminInmuebles.jsp

<s:iterator value="pisos"> 

        <fieldset> 
        <legend><s:property value="titulo"/></legend> 
        <img style="float: left;" alt="<s:property value='titulo' />" src="<s:property value='imagen'/>" width="200" height="200"> 

        Dormitorios: <s:property value="dormitorios"/> 
        <p> 

        Baños: <s:property value="banyos"/> 
        <p> 
        Precio: <s:property value="precio"/>&#8364; 
        <p> 
        Provincia: <s:property value="provincia"/> 
        <p> 
        Localidad: <s:property value="localidad"/> 
        <p> 
        Descripción: <s:property value="descripcion"/> 
        <p> 
        Propietario: <s:property value="propietario.nombre"/> 

+2

尋求調試幫助的問題(「爲什麼這個代碼不工作?」)必須包含所需的行爲,特定的問題或錯誤以及在問題本身中重現問題所需的最短代碼。沒有明確問題陳述的問題對其他讀者無益。請參閱:如何創建最小,完整和可驗證示例。 –

+0

你或者1)缺少propietario或者nombre的getter,或者2)propietario是List,或者3)你有錯別字 –

回答

1

爲了顯示您List<Pisos>陣列的屬性,你需要做的是:

<s:iterator value="pisos"> 
    <s:property value="someAttributeOnPisos"/> 
</s:iterator> 

換句話說,集合必須在JSP中迭代,並且Struts2會將它們推送到迭代器內部的堆棧頂部,從而允許您直接訪問值棧頂值,如上所示。