问题标签 [play-framework-2.7]
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.
scala - 播放框架检查密钥是否存在
我正在使用 Play Framework 来简化 Scala 中的 JSON 解析。我的代码如下所示:
现在,如果我提供正确的用户名和密码,我肯定会token
在我的res
对象内部得到一个。所以我在 Scala 中编写了一个测试用例,目前看起来像这样,其中我没有传递有效的用户名和密码:
当我尝试运行它时,我得到了这个异常:
ApiChecker$.getAuthToken(ApiChecker.scala:15)
是getAuthToken
函数的最后一行。
如何测试我是否token
在场res
?
java - 播放框架2.7.2迁移,BodyPrasers.parse NoClassDefFoundError
最近我正在尝试将我们应用程序的播放版本从 2.3.x 升级到 2.7.2。我正在使用 netty-server 来运行应用程序。
我能够使应用程序启动并运行。但是当我提交简单的 http GET 请求时,它失败并出现以下错误:
我寻找依赖关系来查看任何其他库正在拉动旧版本的播放,但我没有找到。
java - 如何让 Play 框架应用程序在执行控制器 CRUD API 方法之前运行 SQL 脚本?
我正在创建一个新的播放框架应用程序并使用 slick 连接到 h2 数据库。但是当我运行应用程序并访问它说找不到表的数据时。我希望它应该运行 conf/evolutions/default 文件夹中的 1.sql 文件。
基本上 play.evolutions 不起作用。
以下是我的 application.conf 文件
我在evolutions.default文件夹中有1.sql文件
我还尝试更改文件夹路径,例如evolutions.playscalaslickexample。我仍然没有看到任何变化。
json - 如何在 Play 2.7 for Scala 中编写一个通用的 JSON 解析器来验证入站请求?
我在 Scala 中有一个 Play 2.7 控制器,它根据案例类模式验证入站 JSON 请求,并报告入站请求有效负载错误(请注意,我从更大的代码库中提取了这个示例,试图保持其正确的可编译性和功能,尽管可能存在小错误):
向“handleRequest”端点发送 POST 请求时,验证的工作方式如下:
- 使用有效负载
{malformed,,
,我得到 400 响应Unexpected character ('m' (code 109)): was expecting double-quote to start field name at [Source: (String)"{malformed,,"; line: 1, column: 3]
。 - 使用有效负载,
{}
我得到了 400 响应/id: [error.path.missing]
我想做的是使解析和验证通用化,将该逻辑移动到实用程序类中,以便在handleRequest
方法中进行最干净的重用。例如,像这样:
我知道由于公然的 Scala 和 Play API 滥用,而不仅仅是小的编码错误,这段代码不能按原样编译。我尝试从Play 自己的关于 Action composition 的文档中提取,但我没有成功地把事情做好,所以我留下了所有的碎片,希望有人能帮助我把它们一起工作成有用的东西。
如何更改第二个代码示例以编译并在功能上与第一个代码示例相同?
play-framework-2.7 - 我想在 PlayFrameWork 中使用表单显示字符
在 scala.html 中实现表单和输入 在此处输入字符 我想显示该字符
scala - Play Router:如何添加语言敏感的 URL 重定向规则?
我有一个国际化的 Scala Play 2.7.x WebApp 并且有通常的路线,例如
现在我想添加一条新路由,它基本上将更改语言重定向到任何目标路由。我通过在上面添加一个额外的路由来实现这个用例routes
:
这个想法是,每次你做例如
等等。不幸的是,它并不总是有效,例如包含在/en/page/somePage/
它之前的那个将无法正确匹配第一条规则:
大概是因为中间/
...我该如何解决?
为了完整起见,这是我的ApplicationController.langRedirect(...)
实现:
heroku - 加载播放!另一个主进程中的环境模式
我有一个包含运行另一个进程的 Main 的 Play 应用程序。在 Heroku,它是另一个运行此过程的测功机。
我需要将(Dev, Test, Prod)
我的 Play 应用程序正在运行的模式加载到主进程中Application
,这里:
val app: Application = GuiceApplicationBuilder().build()
.
这就是我所拥有的:
但.loadConfig(env => Configuration.load(env))
实际上Mode.Test
即使在生产环境中也会返回。
playframework - 如何在 Play 中的所有响应中设置标题!框架 2.7 (Java)
在旧游戏中!版本(如 2.3)可以修改所有响应的标题,如
我如何使用 Play 来做到这一点!2.7 没有弃用(ctx.response() 自 2.7 起已弃用),在 Java 中?
jpa - EBeans 更新不保存更改的字段项
我从 Play 2.5 升级到 2.7,但在保存表单时遇到问题。当字段发生更改并且我调用 Model.update() 时,更改不会保留在数据库中(即使在更新完成之前调试时它们显示已更改)
但是,当我专门设置它们时,它们确实会持续存在。所以它必须做一些事情,因为它没有检测到变化并且没有看到对象发生了变化。我在模型中使用 getter 和 setter,所有属性都是私有的。
这是控制器功能(用两行来保持这两个字段)
scala - 使用前缀拆分路由在 Play 2.7 中不起作用(在 2.6 中起作用)
我们的项目使用多个路由文件。
conf/routes 文件包含以下内容:
然后我们有 conf/admin.routes 和 conf/user.routes 文件,其中包含前缀 API 路由。
我正在尝试从 Play 2.6(此设置运行良好,以及早期版本)升级到 Play 2.7。编译时出现错误:
查看 2.7 的 Play 迁移:
- 我没有使用 StaticRoutesGenerator https://www.playframework.com/documentation/2.7.x/Migration27#StaticRoutesGenerator-removed
- 看起来很可疑:https : //www.playframework.com/documentation/2.7.x/Migration27#StaticRoutesGenerator-removed Router#withPrefix 应始终添加前缀。但我只是使用 Play conf/routes,所以我不确定我应该改变什么?
我认为问题是因为路由器的前缀更改,但我不确定如何根据我需要更新的内容来解释它。Play 2.7还有其他人遇到过这个问题吗?