【问题标题】:java.lang.UnsupportedOperationException at <rich:fileUpload><rich:fileUpload> 处的 java.lang.UnsupportedOperationException
【发布时间】:2012-05-01 22:56:40
【问题描述】:

我正在尝试使用以下方式上传文件:

        <h:form>
            <rich:fileUpload fileUploadListener="#{bean.test}"
                id="upload" acceptedTypes="jpeg, jpg, gif, png, bmp">
                <a4j:ajax event="uploadcomplete" render="preview" />
            </rich:fileUpload>

        </h:form>

但我总是得到错误:

 Servlet.service() for servlet [Faces Servlet] in context with path [/project] threw exception
java.lang.UnsupportedOperationException
at javax.faces.context.FacesContext.getExceptionHandler(FacesContext.java:280)
at javax.faces.context.FacesContextWrapper.getExceptionHandler(FacesContextWrapper.java:354)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:119) 
at ......

我以前用过,效果很好。我只是看不到我的错误。

它的上传框显示,我可以添加一个文件。当我推送“上传”并且未调用侦听器方法(public void test(FileUploadEvent event){..})时出现错误。

知道我该如何解决这个问题吗?

【问题讨论】:

  • 您是否将 RichFaces 4.1 与 MyFaces Orchestra 一起使用?另见community.jboss.org/message/633078
  • 我正在使用 RichFaces 4.1 和 TomCat v7.0。但这不可能是问题,因为我也为其他项目使用相同的版本(小,没有那么多库),其中 fileUpload 工作。
  • 那么,您根本没有使用 MyFaces Orchestra?
  • 对不起。我正在使用 MyFaces Orchestra 1.4。
  • 好的,有问题的原因。因此请参阅前面链接的 JBoss 论坛链接。

标签: jsf jakarta-ee richfaces


【解决方案1】:

我遇到了类似的问题,结果在我打包的 war 文件中,除了 myfaces-orchestra-core20 我还得到了 myfaces-orchestra-core12,它从另一个依赖。

只有在我的pom.xml 文件中声明的内容:

<dependency>
      <groupId>org.apache.myfaces.orchestra</groupId>
      <artifactId>myfaces-orchestra-core20</artifactId>
      <version>1.5</version>
</dependency>

Richfaces 版本 4.3.7.Final 终于成功了。

【讨论】:

    猜你喜欢
    • 2017-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-16
    • 2013-04-09
    • 1970-01-01
    • 2016-06-28
    • 1970-01-01
    相关资源
    最近更新 更多