Java Silverlight的多文件上传替代方案

Java Silverlight的多文件上传替代方案,java,jquery,jsf,gwt,Java,Jquery,Jsf,Gwt,我继承了一个Java web应用程序,它实际上使用Silverlight XAP实现了一小部分功能,允许用户将大量1+图像上传到服务器上的一个目录中 下面提供了更详细的业务需求,但可以概括如下: 用户必须能够同时上载多个图像-如果用户有500个图像要上载,则不必单击按钮,选择下一个文件,然后单击上载500次;他们应该能够从本地文件系统中选择所有500个文件,并将其作为单个批上载 文件上传组件必须是AJAX或类似AJAX的组件,不需要页面重定向/刷新 选择Silverlight的开发人员这样做是因

我继承了一个Java web应用程序,它实际上使用Silverlight XAP实现了一小部分功能,允许用户将大量1+图像上传到服务器上的一个目录中

下面提供了更详细的业务需求,但可以概括如下:

用户必须能够同时上载多个图像-如果用户有500个图像要上载,则不必单击按钮,选择下一个文件,然后单击上载500次;他们应该能够从本地文件系统中选择所有500个文件,并将其作为单个批上载 文件上传组件必须是AJAX或类似AJAX的组件,不需要页面重定向/刷新 选择Silverlight的开发人员这样做是因为:

他知道C,曾经是Silverlight开发者- Silverlight确实满足这些要求 据他说,Silverlight的浏览器覆盖率比我们的JS技术jQuery要好 当管理层发现Silverlight被选中时,他们只是在这次交接中选择了它!,因为Microsoft/Silverlight不是我们的标准/平台的一部分,所以他们很生气

我被要求研究如何在非Silverlight且符合标准的内容中重新编写此内容。我们是一个Java阵营,并获得了以下可接受的技术选择候选人:

任何可以满足这些需求的Java视图技术GWT,甚至JSF这是我的偏好 JavaScript/jQuery/QooxDoo/etc。 小程序ehhh。。。 Flash我没有开发Flash/Flex的经验,我最不喜欢它,但为了公司的利益,我会考虑这个想法 当然,开发人员技能集的重要性很大。这个项目已经交给了我和另一个开发者。我们都有不错的JS经验,强大的Java和JSP背景,但没有Flash

这里最重要的是,用户可以拥有以下体验:

他们单击一个按钮,该按钮将是该组件的一部分,用于读取选定图像 模态对话框弹出模态是我个人的要求,但不是强制性的 对话框允许他们在本地文件系统上选择一个文件夹,并从该文件夹中选择1+个图像文件 对话框有一个Upload Now按钮,一旦用户单击它,对话框就会消失,组件会按顺序显示每个上传照片的进度条 我花了一下午的时间研究GWT、JSF、ICEFaces和jQuery,它们似乎都能处理这些需求,但我还没有看到任何能让我确信的东西

我的问题是:有没有一个Java解决方案可以实现这一点,如果有,是什么GWT、JSF、RichFaces等等

如果没有,那么jQuery或任何其他JS库可以这样做吗

如果没有,除了applet或Flash,当然还有Silverlight,我还有其他选择吗

我宁愿把一项新技术投向我们的企业架构委员会,而不是做一个小程序,它是java开发或flash的一个小程序,我必须从头开始学习。 提前感谢您在正确方向上的任何推动

编辑


我知道你们中的许多人可能会提出完全不同的解决方案来回答这个问题。请参阅我对@GolezTol答案的评论,但基本上这些约束是硬约束的,超出了我的控制。

Java必须安装并可用。但是如果一个用户能够上传500个文件,我会选择给他们一个FTP帐户,或者上传压缩格式的文件,比如zip文件,我认为任何操作系统都可以本地创建。Java、Flash、Silverlight。。所有这些都是不总是可用的组件。我认为网络界面并不适合上传这么多图片。

正如耐克所说:就这么做吧!。这真的满足了我提到的所有要求吗?!?这对最初的开发者来说太尴尬了!这是否允许我自定义选择按钮等上的文本标签?此外,企业也不喜欢jQuery插件的典型文件上传外观,正如我在您提供的链接中看到的那样。他们会想要更刺激的东西。这可能吗?这个问题没有建设性。但这里是我的2美分:这实际上是一个非常有趣的问题,但我不得不承认,对于第一个jquery建议的积极响应,我有点反感。当然,这个选项不起作用,但我认为解释为什么它不起作用会更有建设性。。。尽管@BalusC的jface解决方案看起来很有希望,但这一点很好,但也不是我的要求。这是一个已经有一年多历史的项目,业务已经将mucho,mucho$$$投入其中。再写也来不及了。他们正在寻找Silverlight组件的quick-n-dirty交换。另外,请注意,批量图像上载仅为该web应用实际执行功能的1%左右。这是整个应用程序的一个非常小的功能集。