Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 1.7
-
Fix Version/s: 1.7.2
-
Component/s: None
-
Labels:None
-
Environment:NA
Description
File upload fails randomly with following exception:
2008-06-13 14:53:40,075 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/inputFile].[uploadServlet]] Servlet.service() for servlet uploadServlet threw exception
javax.faces.el.EvaluationException: javax.el.PropertyNotFoundException: Target Unreachable, identifier 'inputFile' resolved to null
at com.sun.faces.application.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:84)
at com.icesoft.faces.component.inputfile.InputFile.setProgress(InputFile.java:866)
at com.icesoft.faces.webapp.http.core.UploadServer$ProgressCalculator.potentiallyNotify(UploadServer.java:167)
at com.icesoft.faces.webapp.http.core.UploadServer$ProgressCalculator.setListenerAndContextAndPFS(UploadServer.java:143)
at com.icesoft.faces.webapp.http.core.UploadServer$2.servlet(UploadServer.java:70)
at com.icesoft.faces.webapp.http.servlet.ServletRequestResponse.detectEnvironment(ServletRequestResponse.java:222)
Caused by: javax.el.PropertyNotFoundException: Target Unreachable, identifier 'inputFile' resolved to null
at org.apache.el.parser.AstValue.getTarget(AstValue.java:46)
at org.apache.el.parser.AstValue.invoke(AstValue.java:127)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
at com.sun.faces.application.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:77)
2008-06-13 14:53:40,075 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/inputFile].[uploadServlet]] Servlet.service() for servlet uploadServlet threw exception
javax.faces.el.EvaluationException: javax.el.PropertyNotFoundException: Target Unreachable, identifier 'inputFile' resolved to null
at com.sun.faces.application.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:84)
at com.icesoft.faces.component.inputfile.InputFile.setProgress(InputFile.java:866)
at com.icesoft.faces.webapp.http.core.UploadServer$ProgressCalculator.potentiallyNotify(UploadServer.java:167)
at com.icesoft.faces.webapp.http.core.UploadServer$ProgressCalculator.setListenerAndContextAndPFS(UploadServer.java:143)
at com.icesoft.faces.webapp.http.core.UploadServer$2.servlet(UploadServer.java:70)
at com.icesoft.faces.webapp.http.servlet.ServletRequestResponse.detectEnvironment(ServletRequestResponse.java:222)
Caused by: javax.el.PropertyNotFoundException: Target Unreachable, identifier 'inputFile' resolved to null
at org.apache.el.parser.AstValue.getTarget(AstValue.java:46)
at org.apache.el.parser.AstValue.invoke(AstValue.java:127)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
at com.sun.faces.application.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:77)
Added more of the locking protection, to wrap all accesses to the bean, via the file value binding, the progressListener method binding, and the action and actionListener method bindings.
TRUNK
Subversion 17658
ICEfaces 1.7 branch
Subversion 17657
icefaces\component\src\com\icesoft\faces\component\inputfile\InputFile.java
icefaces\core\src\com\icesoft\faces\component\FileUploadComponent.java
icefaces\core\src\com\icesoft\faces\webapp\http\core\UploadServer.java