A anotação JPA @Embedded é obrigatória?

eu tenteiomitir a@Embedded anotação e ainda os campos foram incorporados na tabela. Não consigo encontrar nada que diga que o@Embedded anotação é opcional.

É isso ounão é opcional?

O código a seguir

@Embeddable
public class Address {
    String city;
    String street;
}

@Entity
public class Person {
    String name;
    @Embedded // it seems that it works even if this annotation is missing!?
    Address address;
}

gera sempre a mesma tabela

person
    name
    city
    street

mesmo se eu fizernão especificamos@Embedded.

Minha configuração:

JBoss EAP 6.4.0O hibernate-jpa-2.0-api-1.0.1.Final-redhat-3.jar

A especificação JPA diz:

http://docs.oracle.com/javaee/7/api/javax/persistence/Embedded.html

@javax.persistence.Embedded

Especifica um campo ou propriedade persistente de uma entidade cujo valor é uma instância de uma classe incorporável. A classe incorporável deve ser anotada como Incorporável.

http://docs.oracle.com/javaee/7/api/javax/persistence/Embeddable.html

@javax.persistence.Embeddable

Especifica uma classe cujas instâncias são armazenadas como uma parte intrínseca de uma entidade proprietária e compartilham a identidade da entidade. Cada uma das propriedades ou campos persistentes do objeto incorporado é mapeada para a tabela de banco de dados da entidade.

questionAnswers(2)

yourAnswerToTheQuestion