2012-04-20 53 views
1

我尝试上传文件是这样的:java.lang.UnsupportedOperationException在<丰富:文件上传>

 <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){..})时出现错误。

任何想法如何我可以解决这个问题?

+1

哟使用RichFaces 4.1与MyFaces Orchestra?另请参阅https://community.jboss.org/message/633078 – BalusC 2012-04-20 12:47:22

+0

Im使用RichFaces 4.1与TomCat v7.0。但这不能成为问题,因为即使在fileUpload工作的地方,我也为其他项目使用了相同的版本(很少,而不是太多的库)。 – user1338413 2012-04-23 14:44:34

+0

那么,你没有使用MyFaces Orchestra? – BalusC 2012-04-23 14:52:24

回答

0

我也有类似的问题,原来,在我的包装除了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的verison 4.3.7.Final使它终于工作。