Details
Description
In autoBeansFacelets, I use the ice:inputFile component, but it shows up as a
500 error, because it's throwing an exception. In this case, trying to resolve
#{FileBean.name} for the label attribute fails, because there is no FacesContext
available to the Facelets EL class LegacyValueBinding.
<ice:inputFile
id="inputFileComponent"
label="#{FileBean.name}"
file="#{FileBean.file}"
progressListener="#{ProgressBean.progress}"/>
javax.faces.el.EvaluationException: null Expression: #{FileBean.name}
FacesContext: null
at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:61)
at com.icesoft.faces.component.inputfile.InputFile.getLabel(InputFile.java:251)
at com.icesoft.faces.component.inputfile.InputFile.getHtml(InputFile.java:852)
at
com.icesoft.faces.component.inputfile.FileUploadServlet.sendOutput(FileUploadServlet.java:214)
at
com.icesoft.faces.component.inputfile.FileUploadServlet.doGet(FileUploadServlet.java:81)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at
org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException
at com.sun.facelets.el.ELAdaptor.getELContext(ELAdaptor.java:47)
at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:55)
... 24 more
500 error, because it's throwing an exception. In this case, trying to resolve
#{FileBean.name} for the label attribute fails, because there is no FacesContext
available to the Facelets EL class LegacyValueBinding.
<ice:inputFile
id="inputFileComponent"
label="#{FileBean.name}"
file="#{FileBean.file}"
progressListener="#{ProgressBean.progress}"/>
javax.faces.el.EvaluationException: null Expression: #{FileBean.name}
FacesContext: null
at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:61)
at com.icesoft.faces.component.inputfile.InputFile.getLabel(InputFile.java:251)
at com.icesoft.faces.component.inputfile.InputFile.getHtml(InputFile.java:852)
at
com.icesoft.faces.component.inputfile.FileUploadServlet.sendOutput(FileUploadServlet.java:214)
at
com.icesoft.faces.component.inputfile.FileUploadServlet.doGet(FileUploadServlet.java:81)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at
org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException
at com.sun.facelets.el.ELAdaptor.getELContext(ELAdaptor.java:47)
at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:55)
... 24 more
fileupload needs to be working with facelets.