Это моя конечная точка http get в моем классе контроллера:
def getOperation(@RequestParam(name = "myParam", required = false) myParam: Option[Long]) = {
myParam match {
case Some(longValue) => log.info(longValue)
case None => log.info("myParam is not present")
case _ => log.info("myParam is not present")
}
}
У меня такое поведение:
- Если myParam не указан в URL, я зарегистрировал myParamотсутствует
- Если myParam находится в URL-адресе, я вернул ошибку HTTP 500, и кажется, что при загрузке Spring не удается настроить параметр Scala Option [Long].Отладка Я вижу, что ошибка возникает перед вводом в методе контроллера.
В противном случае, если я изменю контроллер, используя Long, а не Option [Long]:
def getOperation(@RequestParam(name = "myParam", required = false) myParam: Long) = {
log.info(longValue)
}
У меня есть такое поведение:
- , если myParam указан в URL, контроллер записывает значение
- , если оно не указано, у меня есть (java.lang.NullPointerException: null).Отладка Я вижу, что перед входом в метод контроллера происходит ошибка.
Какой правильный путь?