Как использовать аннотацию @PersistentCapable в Scala 2.8 - PullRequest
0 голосов
/ 03 июня 2010

Я переключаюсь с Scala 2.7.7 на Scala 2.8.0RC3, и теперь некоторые из моих классов больше не компилируются. Проблема в аннотации @PersistentCapable:

import javax.jdo.annotations._
import java.util.Date

@PersistenceCapable{identityType=IdentityType.APPLICATION}
class Counter(dt: Date, cName: String, vl: int) {
 <.. snip ..> 
}

Этот код приводит к следующим ошибкам компиляции:

[ERROR] /Users/gero/prive/kiva/kivanotify-gae/src/main/scala/net/vermaas/kivanotify/model/LoanProcessed.scala:7: error: expected start of definition
[INFO] @PersistenceCapable{val identityType = IdentityType.APPLICATION}

Я уже попробовал пару вариантов, немного погуглил, но без везения. Любые идеи о том, как я могу использовать аннотацию @PersistentCapable с Scala 2.8.0 RC3?

Спасибо, Геро

Ответы [ 3 ]

2 голосов
/ 16 июля 2010

Синтаксис изменился в 2.8, вы должны использовать именованные аргументы:

@Table(name = "projects")
class Project(name: String) {
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  var id: Int = _
}

http://scala -programming-language.1934581.n4.nabble.com / JPA-аннотаций-терпит неудачу, когда использующих-2-8-бета-и-RC2-td1935831.html

1 голос
/ 29 сентября 2010

Попробуйте @PersistenceCapable(identityType = IdentityType.APPLICATION)

Примечание (), а не {}

0 голосов
/ 04 июня 2010

Не нашел решения, которое позволило бы мне снова использовать аннотации, но, конечно, вы можете переключиться на помещение метаданных JDO в файл XML ... и это то, что я сделал. Я предпочел бы использовать аннотации, но, по крайней мере, я могу продолжить сейчас.

Геро

...