问题标签 [playframework-2.6]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
2802 浏览

playframework - 名称为“play”的 EhCache 实例已存在

在使用异步couchdatabase java 驱动程序时,我遇到了Play 框架默认缓存 ( EHCache ) 的问题。Play 在热重载时崩溃并出现以下错误:

我发现这不仅适用于couchdatabase驱动程序,还适用于其他一些场景,例如https://groups.google.com/forum/#!topic/pac4j-dev/2_EUOCrov7M

0 投票
1 回答
152 浏览

java - 带有附加约束的 PlayFramework 表单验证

免责声明:在这里使用 PlayFramework 2.6.0-M4!

我显示一个表单,并希望添加额外的约束,即给定字段禁止使用某些字符串。

现在我有两个问题:

1)Ok(s"Here should go success, if user was created: $formData").as("text/html")在提供的数据有效的情况下工作,但在用户输入禁止名称的情况下:

a)没有用户被创建(好)b)BadRequest("No means no!")永远不会被退回!(虽然我得到一个 http 400 响应,只是空的)

我不明白为什么 b) 会发生。

此外,我想关注https://www.playframework.com/documentation/2.6.x/ScalaForms

而是像这样编写代码:

但遗憾的是,这会导致每个帖子请求出现错误,即使是完全有效的请求:

错误:List(FormError(name,List(error.required),List()))

我究竟做错了什么?

编辑:为了澄清我所说的“总有效请求”的含义,我举了一个关于返回上述错误的例子。

name=Teolha&dummy=true作为邮寄请求发送。

实际上,我输入什么并不重要,但是(渲染的)表单的 HTML5 部分确保我必须输入一些内容。我所期望的是Ok,如果有任何不在列表中的ReservedWords东西,否则BadRequest

edit2:这可能是因为默认过滤器吗?

这些正在播放 2.6:

我问,因为我在这里没有使用 Twirl(而是 ScalaTags)来呈现表单!所以也许我错过了 twirl 实现将涵盖的一些隐含的东西(令牌或其他东西)?

0 投票
1 回答
148 浏览

scala - incorrect Filename when downloading from Play 2.6 application

I am trying learn Play Framework. In the documentation, under section Serving files, when I try following example,

the downloaded filename is utf-8''README.txt, instead of README.txt.

Unable to understand WHY?

Configuration

  • Java (1.8.0_131-b11)
  • Scala (2.12.2)
  • Play (2.6.0)
  • SBT (0.13.15)
0 投票
2 回答
3343 浏览

scala - 在 Play 2.6 中对控制器进行单元测试

尝试在 Scala 的 Play 2.6 中测试控制器时出现空指针异常。这是对 OK 响应的测试:

这是我正在测试的控制器:

该错误看起来与隐式请求相关,但我找不到解决方案。

日志输出为:

java.lang.NullPointerException was thrown. java.lang.NullPointerException at controllers.ApplicationController.home(ApplicationController.scala:29)

0 投票
1 回答
36 浏览

html - 如何返回以防止实体逃脱在 Play 中返回?

我正在使用带有 Scala 的 play 2.6 并在我的视图模板中有这个位:

但它正在渲染: class="active"

但我希望它呈现这个:

"class="active""

我觉得我很接近但不能完全让它不在&quot最终的 HTML 中使用。有什么建议么?

0 投票
1 回答
1065 浏览

postgresql - 在 SBT 中为 Postgres 依赖项放入修订部分的内容

我在 build.sbt 文件的库中添加了对 PostGres 9.6 的依赖项,但我不确定要在修订部分中添加什么,或者这些字段的含义:

我在 Stackoverflow 上看到过旧的,例如:

而且我知道 9.1 意味着版本 9.1 并且 jdbc4 很好...... JDBC4。但是我怎么知道其他字段是什么意思以及我从哪里得到它们呢?

谢谢!

0 投票
1 回答
768 浏览

java - 未能使用播放框架应用程序注入器注入 WSClient

我正在使用 play 2.6.0 和 scala 2.11.8

我一直在使用WSClient相同配置的游戏,没有任何问题:

应用程序.conf:

现在我需要在我的测试中注入它的一个实例,因为我的一个类将它作为依赖项。

它看起来像这样:

此时测试已经失败并出现以下错误:

1) 注入构造函数时出错,java.lang.NumberFormatException: 格式错误 600000 at play.api.libs.ws.ahc.AsyncHttpClientProvider.(AhcWSModule.scala:40) at play.api.libs.ws.ahc.AsyncHttpClientProvider.class( AhcWSModule.scala:39) 同时定位 play.api.libs.ws.ahc.AsyncHttpClientProvider 同时定位 play.shaded.ahc.org.asynchttpclient.AsyncHttpClient 的第一个参数 play.api.libs.ws.ahc.AhcWSClientProvider.( AhcWSModule.scala:203) 在 play.api.libs.ws.ahc.AhcWSClientProvider.class(AhcWSModule.scala:203),同时定位 play.api.libs.ws.ahc.AhcWSClientProvider,同时定位 play.api.libs.ws。 WS客户端

造成的:

java.lang.NumberFormatException:格式错误 600000

有谁知道为什么会这样?没有找到任何可以在线帮助我的东西,我尝试了...

0 投票
2 回答
60 浏览

scala - 为什么我不能从另一个模板链接到一个模板?

我正在使用 Play 2.6,并且第一次遇到将另一个模板插入另一个模板的问题。

这是我的结构: 在此处输入图像描述

这是我目前正在处理的模板 projectView:

IntelliJ 告诉我它无法解决:

@dasboard("name")

@projectToolbar

html@import views.html.afterLogin.dashboard

它还说导入语句都未使用。但是,我可以很好地链接到链中更高级别的其他包中的一些其他模板。我不明白为什么它允许一些而不是其他......

0 投票
1 回答
593 浏览

scala - 播放 2.6 EntityStreamSizeException 异常

在我的应用程序中,我需要上传相当大的文件(最多 4GB)。我使用file表单字段进行操作并将文件保存到临时位置以供进一步处理。但是,当涉及超出内容大小限制的文件时,我得到一个 EntityStreamException:

我尝试在 application.conf 中设置两个 akka.*.[client|server] 限制,如下所示:

但它仍然崩溃并显示相同的消息。我还尝试遵循文档并设置播放设置:

正如这里建议的那样: https ://www.playframework.com/documentation/2.6.x/ScalaBodyParsers

我尝试的最后一件事是显式覆盖我的帖子处理程序中的设置:

似乎没有任何效果。谁能告诉我我做错了什么?

更新:潜伏在 play/akka 代码和一些调试之后,我可以看到任何与 akka 相关的设置都被完全忽略了。我看到 play.http.parser 设置被传播到上下文并被使用,但是没有应用任何 akka 设置,并且 maxContentLength 仍然设置为默认值 8MB。但根据这个文件:https ://www.playframework.com/documentation/2.6.x/SettingsAkkaHttp 他们应该被应用。不知道下一步该怎么做。任何帮助将不胜感激。

0 投票
1 回答
261 浏览

ajax - 在 Scala Play 中将反向路由作为 JavaScript 参数传递

在我看来,我在 AJAX 中使用反向路由从控制器调用 Action:

我在 app.controllers.MyController 的控制器有一个方法:

路由如下:

GET /mycontroller/retrieve2 controllers.MyController.loadTemplate2

当我像这样对路由进行硬编码并从模板中的某个位置调用它时<li onclick="loadDoc()">Load Template 2</li>,它按预期工作并加载模板 2。但是,这种方法很有用,我希望能够参数化由 调用的 URL xhttp.open,所以我想换

function loadDoc()function loadDoc(myURL)和_

xhttp.open("GET", "@routes.MyController.loadTemplate2()", true);xhttp.open("GET", myUrl, true);

然后能够调用我可能拥有的其他方法,例如:

从模板中的其他地方<li>类似:

但是当我这样做时,它不起作用。控制台告诉我 SyntaxError: invalid regular expression flag d

我也尝试过这样做

<li onclick="loadDoc(@routes.MyController.loadTemplate2())">Load Template 2.absoluteURL(true)</li>

但这告诉我在控制台中的参数列表[了解更多]之后的 SyntaxError: missing )。错误消息指向生成的 HTML (1:13) 标题中的一行,这没有任何意义 - 上面没有任何“()”。但是我没有改变其他任何东西,并且在任何地方都找不到任何丢失的')'。我觉得我很接近,但不能完全明白。