Я храню данные класса дел в Scala в таблице Cassandra, для этого мне нужно определить пользовательский тип.Я могу написать запрос cql, но не знаю, как разобрать it.com.datastax.driver.mapping.annotations.UDT Я пробовал эту аннотацию, но она не работает для меня.Я думаю, что я совершенно не в курсе.Я также пробовал принадлежать классу Session к com.datastax.driver.core.Session.
, и я пришел к выводу, что понятия не имею, как это сделать. Я просто использую hit and trail.
case class Properties(name: String,
label: String,
description: String,
groupName: String,
fieldDataType: String,
options: Seq[OptionalData]
)
object Properties{
implicit val format: Format[Properties] = Json.format[Properties]
}
case class OptionalData(label: String, name: String)
object OptionalData{
implicit val format: Format[OptionalData] = Json.format[OptionalData]
}
, и мой запрос:
val optionalData: String=
"""
|CREATE TYPE IF NOT EXISTS optionaldata(
|label text,
|name text
);
""".stripMargin
val createPropertiesTable: String = """
|CREATE TABLE IF NOT EXISTS prop(
|name text Primary Key,
|label text,
|description text,
|groupname text,
|fielddatatype text,
|options LIST<frozen<optionaldata>>
);
""".stripMargin
com.datastax.driver.core.exceptions.InvalidQueryException: Неизвестный тип e leadpropdb3.optionaldata java.util.concurrent.ExecutionException: com.datastax.driver.core.exceptions.InvalidQuerypropddв com.google.common.util.concurrent.AbstractFuture.getDoneValue (AbstractFuture.java:552) в com.google.common.util.concurrent.AbstractFuture.get (AbstractFuture.java:513) в akka.persistence.cassandra.package$ ListenableFutureConverter $$ anon $ 2. $ anonfun $ run $ 2 (package.scala: 25) в scala.util.Try $ .apply (Try.scala: 213) в akka.persistence.cassandra.package $ ListenableFutureConverter $$ anon $ 2.запустить (package.scala: 25) в akka.dispatch.TaskInvocation.run (AbstractDispatcher.scala: 40) в java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1149) в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:624) в java.lang.Thread.run (Thread.java:748) Причина: com.datastax.driver.core.exceptions.InvalidQueryException: Неизвестный тип leadpropdb3.option1009 *