Проблема идентификации приложения в Google App - PullRequest
1 голос
/ 20 сентября 2011

Я бы хотел использовать аннотацию @Embeddable.Итак, предлагается определить как Application Identity.Я создал как Документация Ядра Данных.Но это все равно ошибка.

import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Embeddable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;

@Entity
@Embeddable
public class Category{
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     private String id;

     private String name;

     @OneToMany(mappedBy="category",cascade=CascadeType.ALL)
     private List<Product> products;

     public List<Product> getProducts() {
         return products;
     }

    public void setProducts(List<Product> products) {
        this.products = products;
     }

     public Category() {
     }

     public Category(String id,String name){
          this.id=id;
          this.name=name;
     }

     public String getId() {
         return id;
     }

     public void setId(String id) {
         this.id = id;
     }

     public String getName() {
         return name;
     }

     public void setName(String name) {
         this.name = name;
     }
 }

Ошибка

При инициализации указанных метаданных произошли ошибки.Подробности смотрите во вложенных исключениях. SEVERE: Class entity.Category был указан с 1 полями первичного ключа, но этот класс использует недопустимую идентификацию и должен быть идентификацией приложения.

1 Ответ

1 голос
/ 20 сентября 2011

Удалите @Id (и @Entity в этом отношении), поскольку класс встраивается.

...