使用 PlayFramework 多重上传文件

2024-01-05

我尝试使用 Play Framework 一次上传多个文件,但我总是获得每个上传的第一个图像。这是一个具体案例:

HTML:

<form method="post" action="/upload" enctype="multipart/form-data">
    <input type="file" name="image" />
    <input type="file" name="image" />
    <input type="file" name="image" />
    <input type="file" name="image" />

    <input type="submit" name="submit" value="Send images" />
</form>

控制器:

public static void upload() {
    File[] images = params.get("image", File[].class);
    for (File f : images) {
        Logger.info (f.getName());
    }
}

如果我上传 image1.jpg、image2.jpg、image3.jpg 和 image4.jpg,Logger.info控制台上会显示:

image1.jpg
image1.jpg
image1.jpg
image1.jpg

其他图像将不会被使用。

我尝试过List<File>代替File[]但它也不起作用。

我还看到这里也有同样的问题(here https://stackoverflow.com/questions/7635145/multiple-file-upload-in-playframework),使用这个作为答案:

List<Upload> files = (List<Upload>) request.args.get("__UPLOADS");

但它在 Play! v1.2.4 中不起作用。

我正在使用 Play v1.2.4。

真的非常感谢您的帮助!


嗯,我已经开了一个ticket https://play.lighthouseapp.com/projects/57987/tickets/1391-multiple-file-uploads-only-show-the-first-file#ticket-1391-1正在上映!框架,因为它似乎是个问题,而且显然,我不是唯一一个有这种行为的人。

我用新的 1.2.5 进行了测试,问题得到了解决,至少我在问题上给出的解决方案是这样的:

public static void upload() {
    File[] images = params.get("image", File[].class);
    for (File f : images) {
        Logger.info (f.getName());
    }
}

注意:我使用的是 Java 7!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 PlayFramework 多重上传文件 的相关文章

随机推荐

  • 如何将 13 位 Unix 时间戳转换为日期和时间?

    我有这个 13 位时间戳 1443852054000 我想将其转换为日期和时间 但没有成功 我试过这个代码 echo date Y m d h i s item gt timestamp 对我不起作用 而且这个 unix time date
  • PHPUnit 仅从命令行运行。为什么?

    我有以下代码 当我在浏览器中打开 PHP 文件时 出现以下错误 致命错误 找不到类 PHPUnit Framework TestCase 但是 如果我使用命令行 它工作正常 phpunit 本地路径 testcase php Result
  • 拥有大量数据库时遇到问题?

    我们构建了一个托管 Web 应用程序 该应用程序的开发方式是将每个客户连接到单独的数据库 该应用程序是一个网络平台 发布系统 到目前为止 该设计一直运行良好 我们还有一个主数据库 现在我们即将对定价模式进行一些更改 这将引入免费帐户 这应该
  • 如何在VS2010中创建新的项目类型?

    我已经弄清楚如何创建一个新的template 但我需要比这多一点的力量 例如 我需要覆盖当您单击 运行 按钮时发生的情况 我希望它启动开发服务器 然后弹出打开我的网络浏览器 那么 如何添加全新的项目类型呢 更好的是 我如何才能将其基于其他项
  • WordPress has_comments 不起作用

    我在 WordPress 中设置了 comment 条件 这个条件是在 comments php 中设置的 就像 wordpress 默认主题一样 然后使用comment template加载整个comments php文件 现在 当我删除
  • 如何设置UnderlineSpan的颜色?

    这个问题是我上一个问题的后续问题 如何像 Android 拼写检查器一样突出显示文本 https stackoverflow com questions 14530546 how to highlight text like android
  • 减少大数据集 DOM 元素的策略

    我有一个大型数据集 想使用 dc js 显示 条目数量远远超出了屏幕上可用的绘图空间 以像素为单位 因此 在 500 像素宽的图表上渲染 20k 点是没有意义的 而且还会降低浏览器的速度 我读了维基百科的性能柚木部分 https githu
  • 在 GitHub 操作中检索已修改文件的列表

    我目前正在使用foo 软件 lighthouse check action https github com foo software lighthouse check action自动完成审核 但自从urls必须进行硬编码 当只想审核提交
  • MySQL 5 星级数据类型?

    对于必须介于 1 和 5 之间的产品评级 ENUM 1 2 3 4 5 是否是一个合理的数据类型 Thanks 是的 这将是一个合适的数据类型 因为它强制执行您的域 但是 如果您要将它们相加 或进行任何其他数学运算 那么数字数据类型可能会更
  • 导入错误:没有名为“spacy.en”的模块

    我正在开发一个使用 Spacy 的代码库 我使用以下命令安装了 spacy sudo pip3 install spacy 进而 sudo python3 m spacy download en 在最后一个命令结束时 我收到一条消息 Lin
  • 在junit中使用@rule检查错误代码

    I found Rule中的注释jUnit为了更好地处理异常 有没有办法检查错误代码 目前我的代码看起来像 没有 Rule Test public void checkNullObject MyClass myClass null try
  • Ruby Net::SFTP 的公钥/私钥身份验证

    我无法找到用于指定 SFTP 身份验证密钥的文档 想要有类似的东西 export SOME PRIVATE KEY cat tmp some certs privatekey pem then somewhere in the code p
  • 无法在模拟器中运行应用程序:运行时遇到错误(域 = LaunchServicesError,代码 = 0)

    在配置配置文件出现问题后 我无法在模拟器中运行我的应用程序 我正在 Xcode 6 beta 4 中进行快速编码 在证书配置文件出现问题之前 这一切都很好 我尝试过清理构建 检查 xCode6 beta4 的命令行是否运行 检查了构建部署
  • jQuery(反)模式:使用字符串操作构建选择器

    我经常发现自己使用字符串操作 拆分 搜索 替换 连接 连接 来构建选择器 是好是坏 这有什么问题吗 有什么替代方案 只是将它们硬编码为单个字符串 但是您可以在网站上使用约定来组织布局 如果您只是在一个地方定义选择器组件 并使用它来构建选择器
  • 使用 monotouch 在 ios 中自定义自动完成选项列表

    我希望能够为在 Monotouch 中创建的 ios 应用程序中的文本输入提供我自己的可用自动更正 自动完成选项列表 单词列表通过网络服务进行更新 完成搜索时 可以在 Ebay 应用程序中看到此类功能的示例 实现这一目标的最佳方法是什么 您
  • 演示与基于类的模型相关的 Javascript 继承优势

    谁能提供一个具体的示例来展示 Javascript 的原型继承 以说明何时使用传统的基于类 经典 模型是有益的 我见过的其他问题 例如经典继承与原型继承 https stackoverflow com questions 1450582 c
  • 如何使用反射来调节多个属性以检查 LINQ .Where 语句中的相等性,具体取决于传递的类?

    我试图概括一个重复检查器函数 该函数根据对象的类型 检查所述类具有的属性 在配置中提供 是否等于另一个列表中的属性 我决定创建一个字典 它将接受键的类型字符串 书籍 作者 商店等 和需要相等的属性数组 字典条目示例 Book Title C
  • 在 IE 和 JSFiddle 中使用 elem.dataset 时出现问题

    在我在 Chrome 上创建的 JSFiddle 中 我发现它无法在 IE 上工作 我使用的是 IE9 任何与此相关的原因 http jsfiddle net ZSB67 http jsfiddle net ZSB67 var backIm
  • UIView 对象的唯一标识符

    我遇到以下问题 当 UIVIew 上发生某种触摸时 我想存储这个 UIView唯一标识符 比如 objectID 这样当我再次重新打开我的应用程序时 我可以检查可见的 UIView 中是否存在具有存储中唯一 ID 的 UIView 我不想将
  • 使用 PlayFramework 多重上传文件

    我尝试使用 Play Framework 一次上传多个文件 但我总是获得每个上传的第一个图像 这是一个具体案例 HTML