Я разрабатываю веб-сервис REST в Scala, используя эталонную реализацию Джерси JAX-RS, и получаю странную ошибку.
Я пытаюсь создать ContentDisposition объект с использованием ContentDisposition.ContentDispositionBuilder .
ContentDisposition.ContentDispositionBuilder
имеет два типа T extends ContentDisposition.ContentDispositionBuilder
и V extends ContentDisposition
.Метод type
из ContentDisposition
возвращает экземпляр компоновщика.
Код
val contentDisposition = ContentDisposition.`type`(MediaType.APPLICATION_OCTET_STREAM).build()
работает, однако
val contentDisposition = ContentDisposition.`type`(MediaType.APPLICATION_OCTET_STREAM).fileName("dummy").build()
выдает ошибку компилятора
error: value build is not a member of ?0
val contentDisposition = ContentDisposition.`type`(MediaType.APPLICATION_OCTET_STREAM).fileName("dummy").build()
^
(Обратите внимание, что type
необходимо заключать в "кавычки", потому что это ключевое слово в Scala)
fileName
из ContentDispositionBuilder
возвращает экземпляр T
, поэтому это должнона самом деле работает.
Я не понимаю.Любая идея?Кстати, я использую Scala 2.9.0.1.
Обновление:
Это работает.Но зачем мне здесь кастинг?
val contentDisposition = ContentDisposition.`type`(MediaType.APPLICATION_OCTET_STREAM)
.fileName("dummy")
.asInstanceOf[ContentDisposition.ContentDispositionBuilder[_,_]]
.build()