无法创建Managedbean错误在URL上传递参数时

时间:2010-09-29 12:22:40

标签: java jsf javabeans url-parameters

我正在尝试在URL上传递参数但是我得到了Managed bean“Cant instantiate class:”错误。 代码在这里:

创建网址:

  <h:outputLink id="link"
     value="#{facesContext.externalContext.requestContextPath}/Public/Home/altKanallar.jsf?id=#{item.id}&name=#{item.name}">
     <h:outputText value="#{item.name}" />
  </h:outputLink>

altKanallar.jsf

    <h:form>
        <div style="text-align: center;">

        <div style="text-align: left;">
        <h:panelGrid style="font-size: 12px; text-decoration:none; " width="100%">
            <h:dataTable value="#{altKanallarBean.categories}" var="item"  style=" width : 100%;">
                <h:column>
                    <h:outputLink id="link"
                        value="#{facesContext.externalContext.requestContextPath}/Public/Home/default.jsf">
                        <h:outputText value="#{item.name}" />
                    </h:outputLink>

                    <div style="style=clear:both; font-size:1px; height:2px; line-height:1px;">
                    </div>
                    <div style="border-bottom:1px solid #D3E8FF; font-size:1px; height:1px; line-height:1px;">
                    </div>
                    <div style="style=clear:both; font-size:1px; height:2px; line-height:1px;">
                    </div>
                </h:column>

            </h:dataTable>
        </h:panelGrid>
        </div>
    </h:form>

AltKanallarBean.java

public class AltKanallarBean {


    private   List<com.uzmantv.data.category.Item> categories;  

    public AltKanallarBean(){
        HttpServletRequest request=(HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest();
        System.out.println(request.getParameter("name"));
        System.out.println(request.getParameter("id"));
        categories = RestServices.getCategoriesById(Long.parseLong(request.getParameter("id"))).getItems();
        name = request.getParameter("name");
    }



    public List<com.uzmantv.data.category.Item> getCategories() {
        return categories;
    }



    public void setCategories(List<com.uzmantv.data.category.Item> categories) {
        this.categories = categories;
    }
}

2 个答案:

答案 0 :(得分:0)

确保构造函数AltKanallarBean()不会抛出异常。 通常,建议不要在构造函数中调用业务逻辑。

答案 1 :(得分:0)

感谢您的支持。问题已经解决了。

Jboss没有部署AltKanallarBean类。花了几个小时才决定关闭并重新打开Eclipse并清理jboss。