У меня есть следующая функция (которая работает с объектом protobuf MyRequest
def createRequestFromJson(requestJson: String): MyRequest = {
val protoJson = getResource(requestJson)
JsonFormat.fromJsonString[MyRequest](protoJson)
}
Я хочу повторно использовать эту функцию с другим объектом, поэтому я добавил тип
def createRequestFromJson[A](requestJson: String): A = {
val protoJson = getResource(requestJson)
JsonFormat.fromJsonString[A](protoJson)
}
, нозатем я получаю сообщение об ошибке
Error:(68, 30) type arguments [A] do not conform to method fromJsonString's type parameter bounds [A <: scalapb.GeneratedMessage with scalapb.Message[A]]
JsonFormat.fromJsonString[A](protoJson)
Я пытался изменить определение на
def createResponseFromJson[A <: scalapb.GeneratedMessage with scalapb.Message[A]](protoJsonFile: String): A = {
, но все равно выдает больше ошибок
Что я делаю не так?