actionListener的JSF Managed Bean方法没有属性?

时间:2014-03-18 04:55:55

标签: glassfish-3 managed-bean jsf-2.2

我知道这个问题很多,但在阅读了大部分的答案和建议后,我相信我可能偏离了正确的道路。目前我得到的错误是以下

/categorias.xhtml:“Vista.CategoriaBean”类没有属性“getcategoriaIDFromCat”。

堆栈跟踪

javax.el.E​​LException:/categorias.xhtml:“Vista.CategoriaBean”类没有属性“getcategoriaIDFromCat”。

我正在检查JEE,因为我已经超过一年未使用它,但不记得如何解决此错误。

我正在使用JSF 2.2并且有一个页面给出以下内容:

<ui:repeat value="#{categoriaBean.lista}" var="test">
   <article class="row">
        <div class="col col-md-12">
            <img src="images/Category/#{test.categorianame}.jpg" 
                alt="#{test.categorianame}" class="img-thumbnail img-responsive img_left"/>
            <h4>
                <h:outputText value="#{test.categorianame}"/>
            </h4> 
            <p>     
                <h:outputText value="#{test.categoriadesc}"/>
            </p>
            <h:form>
                <p>
                    <h:commandButton action="negociosByCat.xhtml" immediate="true" 
                        actionListener="#{categoriaBean.getcategoriaIDFromCat}" 
                        class="btn btn-primary" role="button" 
                        value="Ver #{test.categorianame}"/>
                </p>
            </h:form>
        </div>                                          
    </article>
</ui:repeat>

管理bean的位置(抱歉整个班级被粘贴,我怀疑问题在这里):

@ManagedBean
@SessionScoped
public class CategoriaBean implements Serializable{
@EJB
private NegiciosBLLocal negociosBL;
@EJB
private CategoriaBLLocal categoriaBL;

int categoriaID;
Categoria categoria;
List <Categoria> listaCategoria;
List <Negocios>  listaNegocios;

public Categoria getCategoria() {
    return categoria;
}

public void setCategoria(Categoria categoria) {
    this.categoria = categoria;
}

public NegiciosBLLocal getNegociosBL() {
    return negociosBL;
}

public void setNegociosBL(NegiciosBLLocal negociosBL) {
    this.negociosBL = negociosBL;
}

public CategoriaBLLocal getCategoriaBL() {
    return categoriaBL;
}

public void setCategoriaBL(CategoriaBLLocal categoriaBL) {
    this.categoriaBL = categoriaBL;
}

public int getCategoriaID() {
    return categoriaID;
}

public void setCategoriaID(int categoriaID) {
    this.categoriaID = categoriaID;
}

public List<Categoria> getListaCategoria() {
    return listaCategoria;
}

public void setListaCategoria(List<Categoria> listaCategoria) {
    this.listaCategoria = listaCategoria;
}

public List<Negocios> getListaNegocios() {
    return listaNegocios;
}

public void setListaNegocios(List<Negocios> listaNegocios) {
    this.listaNegocios = listaNegocios;
}

public CategoriaBean() {categoria=new Categoria();}

public List<Categoria> getLista(){
listaCategoria = categoriaBL.getCategorias();
return listaCategoria;
}

public void getcategoriaIDFromCat (ActionEvent evento){
categoria = listaCategoria.get(Integer.parseInt(evento.getComponent().getClientId().split(":")[1]));
categoriaID=categoria.getCategoriaID();
}

public List<Negocios> getNegociosByCategory(){
listaNegocios = negociosBL.getNegociosByCat(categoriaID);
return listaNegocios;
}

}

当我在Glassfish 3.1.2.2(版本5)中运行时,有人可以帮助吗?

0 个答案:

没有答案