我正在使用 Primefaces,但我遇到了一个问题,即 setPropertyActionListener 没有被触发,因此没有设置视图范围托管 bean 的属性。
我的观点:
<p:column>
<p:commandLink value="Supprimer" oncomplete="confirmation.show()" >
<f:setPropertyActionListener value="#{car}" target="#{typeMB.selectedType}" />
</p:commandLink>
</p:column>
托管 bean 具有 selectedType 属性,其中有一个 getter 和一个 setter。
我的托管bean:
@ManagedBean(name="typeMB")
@ViewScoped
public class TypeManagedBean implements Serializable {
private static final long serialVersionUID = 1L;
private Type newtype;
private Type selectedType;
@ManagedProperty(value="#{TypeDao}")
GenericDao<Type> typeDAO;
public TypeManagedBean(){
newtype = new Type();
}
public List<Type> getList_types() {
return typeDAO.readAll();
}
public void setTypeDAO(GenericDao<Type> typeDAO) {
this.typeDAO = typeDAO;
}
public GenericDao<Type> getTypeDAO() {
return typeDAO;
}
public Type getNewtype() {
return newtype;
}
public void setNewtype(Type newtype) {
this.newtype = newtype;
}
public Type getSelectedType() {
if(selectedType != null)
System.out.println("get : le selected type : "+selectedType.getLibelle());
return selectedType;
}
public void setSelectedType(Type selectedType) {
this.selectedType = selectedType;
System.out.println("set le selected type : "+selectedType.getLibelle());
}
}
我能做些什么来实现我想要的?