[jira] [Commented] (MYFACES-4008) AbstractMethodError thrown by javax.servlet.http.Part.getSubmittedFileName()
[ https://issues.apache.org/jira/browse/MYFACES-4008?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14653627#comment-14653627 ] Lance Bader commented on MYFACES-4008: -- The work around we implemented. {code:java} // This is a dangerous work around because the this.getFile().getSubmittedFileName() // Fails with an AbstractMethod exception. It only works because we know our form // only uploads a single file. for (String varContentDisposition : varContentHeaders) { StringTokenizer varTokens = new StringTokenizer(varContentDisposition, ;); while (varTokens.hasMoreTokens()) { String varField = varTokens.nextToken().trim(); if (varField.startsWith(filename)) { String varFileName = varField.substring(filename.length() + 2, varField.length() -1); this.setFileName(varFileName); } } } {code} AbstractMethodError thrown by javax.servlet.http.Part.getSubmittedFileName() Key: MYFACES-4008 URL: https://issues.apache.org/jira/browse/MYFACES-4008 Project: MyFaces Core Issue Type: Bug Affects Versions: 2.2.6, 2.2.8 Environment: apache-tomcat-8.0.24 myfaces-core-2.2.8-bin Eclipse Version: Luna Release (4.4.0) jdk1.8.0_51 Windows 7 Professional (64 bit, 32 GB ram, Intel i7-4900MQ 2.80 Ghz) Reporter: Lance Bader I can't believe I am the first person in the world to try this combination. {code} java.lang.AbstractMethodError: org.apache.myfaces.shared.renderkit.html.util.HttpPartWrapper.getSubmittedFileName()Ljava/lang/String; at com.mli.filecollector.BeanWelcome.actionSubmit(BeanWelcome.java:220) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.apache.el.parser.AstValue.invoke(AstValue.java:247) at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267) at org.apache.myfaces.view.facelets.el.ContextAwareTagMethodExpression.invoke(ContextAwareTagMethodExpression.java:96) at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:74) at javax.faces.component.UICommand.broadcast(UICommand.java:120) at javax.faces.component.UIViewRoot._broadcastAll(UIViewRoot.java:1172) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:365) at javax.faces.component.UIViewRoot._process(UIViewRoot.java:1658) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:862) at org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:42) at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:196) at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:143) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1527) at
[jira] [Commented] (MYFACES-4008) AbstractMethodError thrown by javax.servlet.http.Part.getSubmittedFileName()
[ https://issues.apache.org/jira/browse/MYFACES-4008?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14653658#comment-14653658 ] Thomas Andraschko commented on MYFACES-4008: MyFaces is still built on Servlet API 3.0 and not 3.1. I would like to fix the problem but there currently is no geronimo-servlet_3.1_spec available. Can we use this instead: dependency groupIdjavax.servlet/groupId artifactIdjavax.servlet-api/artifactId version3.1.0/version /dependency ? AbstractMethodError thrown by javax.servlet.http.Part.getSubmittedFileName() Key: MYFACES-4008 URL: https://issues.apache.org/jira/browse/MYFACES-4008 Project: MyFaces Core Issue Type: Bug Affects Versions: 2.2.6, 2.2.8 Environment: apache-tomcat-8.0.24 myfaces-core-2.2.8-bin Eclipse Version: Luna Release (4.4.0) jdk1.8.0_51 Windows 7 Professional (64 bit, 32 GB ram, Intel i7-4900MQ 2.80 Ghz) Reporter: Lance Bader I can't believe I am the first person in the world to try this combination. {code} java.lang.AbstractMethodError: org.apache.myfaces.shared.renderkit.html.util.HttpPartWrapper.getSubmittedFileName()Ljava/lang/String; at com.mli.filecollector.BeanWelcome.actionSubmit(BeanWelcome.java:220) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.apache.el.parser.AstValue.invoke(AstValue.java:247) at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267) at org.apache.myfaces.view.facelets.el.ContextAwareTagMethodExpression.invoke(ContextAwareTagMethodExpression.java:96) at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:74) at javax.faces.component.UICommand.broadcast(UICommand.java:120) at javax.faces.component.UIViewRoot._broadcastAll(UIViewRoot.java:1172) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:365) at javax.faces.component.UIViewRoot._process(UIViewRoot.java:1658) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:862) at org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:42) at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:196) at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:143) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1527) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1484) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (MYFACES-4008) AbstractMethodError thrown by javax.servlet.http.Part.getSubmittedFileName()
[ https://issues.apache.org/jira/browse/MYFACES-4008?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14653617#comment-14653617 ] Lance Bader commented on MYFACES-4008: -- Failing code from BeanWelcome.java backing bean. The this.getFile() method returns a javax.servlet.http.Part. {code:java} try { String varSubmittedFileName = this.getFile().getSubmittedFileName(); this.setFileName(varSubmittedFileName); } catch (Throwable varException) { varException.printStackTrace(); throw new AbortRequest(Failed to obtain submitted file name., varException); } {code} AbstractMethodError thrown by javax.servlet.http.Part.getSubmittedFileName() Key: MYFACES-4008 URL: https://issues.apache.org/jira/browse/MYFACES-4008 Project: MyFaces Core Issue Type: Bug Affects Versions: 2.2.6, 2.2.8 Environment: apache-tomcat-8.0.24 myfaces-core-2.2.8-bin Eclipse Version: Luna Release (4.4.0) jdk1.8.0_51 Windows 7 Professional (64 bit, 32 GB ram, Intel i7-4900MQ 2.80 Ghz) Reporter: Lance Bader I can't believe I am the first person in the world to try this combination. {code} java.lang.AbstractMethodError: org.apache.myfaces.shared.renderkit.html.util.HttpPartWrapper.getSubmittedFileName()Ljava/lang/String; at com.mli.filecollector.BeanWelcome.actionSubmit(BeanWelcome.java:220) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.apache.el.parser.AstValue.invoke(AstValue.java:247) at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267) at org.apache.myfaces.view.facelets.el.ContextAwareTagMethodExpression.invoke(ContextAwareTagMethodExpression.java:96) at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:74) at javax.faces.component.UICommand.broadcast(UICommand.java:120) at javax.faces.component.UIViewRoot._broadcastAll(UIViewRoot.java:1172) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:365) at javax.faces.component.UIViewRoot._process(UIViewRoot.java:1658) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:862) at org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:42) at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:196) at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:143) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1527) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1484) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at
[jira] [Commented] (MYFACES-4008) AbstractMethodError thrown by javax.servlet.http.Part.getSubmittedFileName()
[ https://issues.apache.org/jira/browse/MYFACES-4008?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14653621#comment-14653621 ] Lance Bader commented on MYFACES-4008: -- The JSF 2.2 form that triggered the error. The failing code is in the BeanWelcome.actionSubmit() method. {code:html} h:form styleClass=block enctype=multipart/form-data h:outputLabel for=account escape=false value=#{msg.flabelAccount} / h:inputText id=account value=#{beanWelcome.account} required=true requiredMessage=#{msg.ViewWelcomeAccountRequired} validator=#{beanWelcome.validateAccount} validatorMessage=#{msg.ViewWelcomeInvalidAccount} / h:message for=account styleClass=errorMsg / br/ h:outputLabel for=filetype value=#{msg.flabelFileType} / h:selectOneMenu id =filetype value=#{beanWelcome.fileType} f:selectItems value=#{beanWelcome.fileTypeList} var=item itemValue=#{item.fileType} itemLabel=#{msg[item.fileTypeLabel]}/ /h:selectOneMenu h:message for=filetype styleClass=errorMsg/ br/ h:outputLabel for=file value=#{msg.flabelFile} / h:outputLabel for=file value=#{msg.flabelBrowse} styleClass=file / h:inputFile id=file styleClass=file value=#{beanWelcome.file} onchange=fileSelected(this); required=true requiredMessage=#{msg.ViewWelcomeFileRequired} validator=#{beanWelcome.validateFile} / div id=selectedFile/div h:message for=file styleClass=errorMsgFile showSummary=true / br/ h:commandButton styleClass=submit value=#{msg.buttonSubmit} action=#{beanWelcome.actionSubmit}/ br/ /h:form {code} AbstractMethodError thrown by javax.servlet.http.Part.getSubmittedFileName() Key: MYFACES-4008 URL: https://issues.apache.org/jira/browse/MYFACES-4008 Project: MyFaces Core Issue Type: Bug Affects Versions: 2.2.6, 2.2.8 Environment: apache-tomcat-8.0.24 myfaces-core-2.2.8-bin Eclipse Version: Luna Release (4.4.0) jdk1.8.0_51 Windows 7 Professional (64 bit, 32 GB ram, Intel i7-4900MQ 2.80 Ghz) Reporter: Lance Bader I can't believe I am the first person in the world to try this combination. {code} java.lang.AbstractMethodError: org.apache.myfaces.shared.renderkit.html.util.HttpPartWrapper.getSubmittedFileName()Ljava/lang/String; at com.mli.filecollector.BeanWelcome.actionSubmit(BeanWelcome.java:220) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.apache.el.parser.AstValue.invoke(AstValue.java:247) at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267) at org.apache.myfaces.view.facelets.el.ContextAwareTagMethodExpression.invoke(ContextAwareTagMethodExpression.java:96) at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:74) at javax.faces.component.UICommand.broadcast(UICommand.java:120) at javax.faces.component.UIViewRoot._broadcastAll(UIViewRoot.java:1172) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:365) at javax.faces.component.UIViewRoot._process(UIViewRoot.java:1658) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:862) at org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:42) at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:196) at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:143) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) at