Мне нужно вернуть ответ json в camelCase с помощью finatra, но по умолчанию он находится в змее_case. Из того, что я нашел до сих пор, мне нужно использовать ObjectMapper, но я не могу понять, куда мне его передать после его создания. Пример был бы очень полезен. Вот что у меня есть:
import com.twitter.finagle.http.Request
import com.twitter.finatra.http.Controller
class myTargetingController extends Controller {
val endpoint = "http://....."
get(s"$endpoint/?") { request: Request =>
// what do I do with it?
// val objectMapper = ScalaObjectMapper.builder.camelCaseObjectMapper
response.ok.json(myObject)
}
}
==================================================================
import com.twitter.finagle.{Service, SimpleFilter}
import com.twitter.finagle.http.{ Request, Response}
import com.twitter.finatra.http.routing.HttpRouter
import com.twitter.finatra.http.{HttpServer}
import com.twitter.finatra.http.filters.CommonFilters
import com.twitter.util.Future
object MyServerApp extends MyServer
class MyServer extends HttpServer {
override protected def configureHttp(router: HttpRouter) {
router
.filter[CommonFilters]
.add[CorsFilter, MyController]
}
}
P.S. Я очень-очень новичок в Scala
TwitterModule
и привязать этот модуль к вашему серверу, чтобы он правильно вводился. Возможно, было бы проще использоватьScalaObjectMapperModule
в целом. - person sinanspd   schedule 28.04.2020