views:

22

answers:

2

Hi

I'm trying to pass parameters on URL but I get Managed bean "Cant instantiate class:" error. Code is Here:

create url:

  <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;
    }
}
A: 

Make sure that constructor AltKanallarBean() does not throw an exception. In general this is not recommended to invoke business logic in constructors.

Andriy Sholokh
the constructor doesn't even invoked. I also tried to handle logic in getters. still same problem
Can you attach faces-config file and at least part of log file?
Andriy Sholokh
A: 

Thanks for your support. Problem has solved.

Jboss didn't deployed the AltKanallarBean class. it took hours to decide close and reopen Eclipse and clean jboss.