<h:selectOneMenu value="#{artBean.marka}">
<c:forEach var="row" items="${artBean.proizvodjaci}">
<f:selectItem itemLabel="${row.getValue()}" itemValue="${row.getKey()}" />
</c:forEach>
</h:selectOneMenu>
Takođe, nisam uspeo ni da iz bean-a setujem EL varijablu koja može da se iskoristi u JSTL tagovima. Pokušao sam sa
FacesContext context = FacesContext.getCurrentInstance();
servletContext servletContext = (ServletContext) context.getExternalContext().getContext();
if (servletContext.getAttribute("proizvodjaci") != null)
servletContext.removeAttribute("proizvodjaci");
servletContext.setAttribute("proizvodjaci",proizvodjaci);
ali u meniju se pojavi doslovce ${row.getValue()} a ne vrednost tog izraza.
Ako iskoristim JspContext, javlja se Exception.
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: #{artBean.submitId}: javax.faces.el.EvaluationException: java.lang.ClassCastException: org.apache.catalina.core.ApplicationContextFacade
javax.faces.webapp.FacesServlet.service(FacesServlet.java:209)
root cause
javax.faces.FacesException: #{artBean.submitId}: javax.faces.el.EvaluationException: java.lang.ClassCastException: org.apache.catalina.core.ApplicationContextFacade
com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:78)
javax.faces.component.UICommand.broadcast(UICommand.java:312)
javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:267)
javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:381)
com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:75)
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5 logs.
Apache Tomcat/5.5
Da li bi mogla mala pomoć oko ovoga?