【发布时间】:2016-04-10 15:52:23
【问题描述】:
我的项目结构是
- 耳朵
- server.war
- lib/persistence.jar
- META-INF/application.xml
我在persistence jar 中有neo4j-ogm 相关代码。我的依赖是
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-ogm-core</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-ogm-http-driver</artifactId>
<version>2.0.1</version>
</dependency>
我在包 com.abcd.persistence.nodes 中有一个 User 实体
在UserDAO 我正在尝试添加这样的用户
User user = new User();
user.setName("Manju");
SessionFactory sessionFactory = new SessionFactory("com.abcd.persistence.nodes");
Session session = sessionFactory.openSession();
session.beginTransaction();
session.save(user);
session.getTransaction().commit();
这个works fine 如果我在persistence.jar 中运行测试用例。但是,当我尝试使用在Server.war 中定义的 REST 服务进行部署后访问时,它失败了
堆栈跟踪是
Exception handling request to /ws/test: org.jboss.resteasy.spi.UnhandledException: java.lang.RuntimeException: org.neo4j.ogm.exception.ServiceNotFoundException: Resource: vfs:/content/ear.ear/lib/persistence.jar/com/abcd/persistence/nodes/
at org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:76)
at org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:212)
at org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:168)
和
Caused by: java.lang.RuntimeException: org.neo4j.ogm.exception.ServiceNotFoundException: Resource: vfs:/content/ear.ear/lib/persistence.jar/com/abcd/persistence/nodes/
at org.neo4j.ogm.ClassUtils.getUniqueClasspathElements(ClassUtils.java:135)
at org.neo4j.ogm.scanner.ClassPathScanner.getUniqueClasspathElements(ClassPathScanner.java:158)
at org.neo4j.ogm.scanner.ClassPathScanner.scan(ClassPathScanner.java:130)
at org.neo4j.ogm.metadata.DomainInfo.load(DomainInfo.java:260)
如果我遗漏了什么,请告诉我。
【问题讨论】:
标签: java jakarta-ee neo4j wildfly neo4j-ogm