0

我有一个正在处理的项目,我们需要能够一次选择多个文件进行上传。由于我们已经将 YUI 用于其他一些事情,这似乎是一个相当简单的请求。我做了一些研究并决定使用 YUI 的 Uploader 来完成这项工作。

构建了一个简单的示例来熟悉该组件。简单的例子是一个使用 YUI 库的 JSP 连接到一个使用 org.apache.commons.fileupload 来处理文件的 Servlet。完美地工作。所以我继续集成到我们的 struts 2 项目中。一切都很好,直到您尝试上传然后它什么也不做。所以我尝试了几件事,这就是我发现的。

如果我像这样为 YUI 编写上传功能

function upload() { //alert("upload; fileID=" + fileID);

                 if(fileID !=null)
                 {
                   uploader.uploadAll( "http://localhost:8080/YUIUploaderTest/uploader","POST");
                 }

             }

它完美地工作。文件被上传和创建,群众欢欣鼓舞。

但是,如果我将其更改为适用于生产环境的内容

function upload()
             {
                 //alert("upload; fileID=" + fileID);

                 if(fileID !=null)
                 {
                   uploader.uploadAll( "/ECMS/certificate/massimportcertificate_uploadFiles.action","POST");
                 }

             }

除了从 flash 中抛出 #2038 错误外,它什么也不做。经过大量谷歌搜索后,我认为我试图传递的网址可能不正确。但是,如果我将该 URL 放在我的浏览器中,并附有http://localhost:8080/,它就会触发该操作。

问题是,是什么导致了这个 2038 错误?在 YUI 上传器工作之前,struts 中有什么需要配置的吗?

谢谢!

4

1 回答 1

0

您需要指定绝对路径。给出相对路径是行不通的。希望这可以帮助!

于 2011-07-29T05:41:10.353 回答