Spring data Neo4j @NodeEntiry и Roo @RooEntity конфликтуют - PullRequest
0 голосов
/ 13 августа 2011

Когда я пытаюсь аннотировать POJO с помощью @NodeEntity и @RooEntity, я получаю следующую ошибку на * _Roo_Entity IDT:

can't override T org.springframework.data.neo4j.core.NodeBacked.persist() with void        com m.foo.lib.model.MyPOJOClass.persist() 
return types don't match    
MyPOJOClass_Roo_Entity.aj   
/foo/src/main/java/com/foo/lib/model    line 34

Есть ли какой-нибудь обходной путь, который я могу использовать прямо сейчас?

Версии:

<properties>
<roo.version>1.1.5.RELEASE</roo.version>
<spring.version>3.0.5.RELEASE</spring.version>
<aspectj.version>1.6.12.M1</aspectj.version>
<slf4j.version>1.6.1</slf4j.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<spring-security.version>3.0.5.RELEASE</spring-security.version>
<jackson.version>1.6.1</jackson.version>
<spring.data.mongodb.version>1.0.0.M3</spring.data.mongodb.version>
<spring.data.graph.version>1.1.0.M2</spring.data.graph.version>
<spring.data.commons.version>1.1.0.RELEASE</spring.data.commons.version>
<spring.webflow.version>2.3.0.RELEASE</spring.webflow.version>
</properties>

1 Ответ

1 голос
/ 14 августа 2011

Вы должны быть в состоянии сказать Roo, как назван метод persist. Поскольку это весь сгенерированный код, он должен учитывать ваше решение.

@RooEntity( persistMethod = "save")
@NodeEntity(partial=true)
public class Actor {
   String name;
} 

Объекты Spring Data Graph имеют фиксированный постоянный метод.

Могут появиться другие проблемы, если вы хотите использовать постоянство между магазинами, вам, возможно, стоит взглянуть на пружинный график данных документов .

Если вы не хотите использовать JPA, вы можете просто удалить @ RooEntity.

...