Java 未能注入Play';使用injector创建WSS客户端实例

Java 未能注入Play';使用injector创建WSS客户端实例,java,scala,playframework,playframework-2.0,scalatest,Java,Scala,Playframework,Playframework 2.0,Scalatest,我有一个类注入了WSClient依赖性: @Singleton class MyApiService @Inject() (wsclient: WSClient, conf: Configuration) { ... } 在运行测试并使用injector创建MyApiService实例时: class MyTest extends FreeSpec with OneAppPerSuite with ScalaFutures with WsScalaTestClient { implici

我有一个类注入了WSClient依赖性:

@Singleton
class MyApiService @Inject() (wsclient: WSClient, conf: Configuration) {
...
}
在运行测试并使用injector创建MyApiService实例时:

class MyTest extends FreeSpec with OneAppPerSuite with ScalaFutures with WsScalaTestClient {

  implicit lazy val materializer: Materializer = app.materializer

  lazy val wsc: WSClient = app.injector.instanceOf[WSClient]
  lazy val conf: Configuration = app.injector.instanceOf[Configuration]

  val myApiService: MyApiService = app.injector.instanceOf[MyApiService]

  "Api Test" in {
    ...
  }
我得到这个错误:

异常或错误导致运行中止:无法设置,请参阅 以下错误:

1) 注入构造函数java.lang.NumberFormatException时出错: 在10000处出现格式错误 play.api.libs.ws.ahc.AsyncHttpClientProvider。(AhcWSModule.scala:40) 在 play.api.libs.ws.ahc.AsyncHttpClientProvider.class(AhcWSModule.scala:39) 查找play.api.libs.ws.ahc.AsyncHttpClientProvider时 正在查找play.shade.ahc.org。。。原因: java.lang.NumberFormatException:格式错误10000

在我的
应用程序.cong
中,我添加了:

  ws.timeout.connection = 10000
  ws.timeout.idle = 10000
  ws.timeout.request = 10000
尝试改为60000没有区别

使用play 2.6.0和scala 2.11.8

也许有人知道它为什么会失败


谢谢

我想这可能与这个问题有关:

有一个建议的解决方法: 创建文件
/conf/ahc-default.properties与此要点的内容相同

我遇到了同样的问题。这是ws.timeout属性的格式问题

在游戏2.6中,这些属性需要有一个时间单位。这是一个

WSConfigParser尝试使用这些属性的值构造scala.concurrent.Duration的实例。如果提供的值没有有效的时间单位,则持续时间将为

修复方法是将
ms
添加到这些属性->
1000ms

这是我的application.conf

play {
  ws {
    timeout {
      connection: 10000ms
      idle: 30000ms
      request: 60000ms
    }
  }
}

没有帮助我的朋友…:/您正在运行所有内容的最新兼容版本吗?-除此之外,我没有建议-索兹:)你到底解决了你的问题吗?