Правильный способ перевести это:
<c:out value="${UFForm.company.address}" />
в Struts:
<html:text name="UFForm" property="company.address">
Это означает, что есть запрос с именем UFForm
с бином, содержащим методgetCompany()
(который, как я предполагаю, возвращает объект Company
), и у которого, в свою очередь, есть getAddress()
геттер (если вы понимаете, о чем я).Короче говоря, bean-компонент из request / session UFForm
, TagLib обращается к getCompany().getAddress()
;
PS Надеюсь, что getAddress()
не вернет null else <html:text />
сгенерирует исключение.
Edit Чтобы объяснить, что я делал выше:
public class Company implements Serializable {
private String address;
//Setter
public void setAddress(String address) {
this.address = address;
}
//Getter
public String getAddress() { return this.address; }
}
public class UFForm implements Serializable {
private Company company;
public void setCompany(Company company) {
this.company = company;
}
public void getCompany() {
if (this.company == null) {
setCompany(new Company());
}
return this.company;
}
}
То, что я делал выше в <html:text />
эквивалентно
UFForm ufForm = ....;
String property = ufForm.getCompany().getAddress();