为了使用 neo4j-graphdatabase 独立服务器,我将 SDN 3.1.2 的依赖项添加到我的 pom.xml 中。
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-neo4j-rest</artifactId>
<version>3.1.2.RELEASE</version>
</dependency>
由于 Neo4jCdiRepositoryExtension,我可以在没有完整 Spring 框架(通过 CDI)的情况下使用 spring-data-neo4j。
现在我想将我的 SDN 版本更新为 4.0.0.M1。
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-neo4j</artifactId>
<version>4.0.0.M1</version>
</dependency>
我必须创建自己的 Neo4jCdiRepositoryExtension,这看起来很简单。部署过程构建我的新扩展。要使用我的扩展,我需要提供所有需要配置的此类:
@ApplicationScoped
public class Neo4jConfigurationProvider {
@Resource(lookup = "rest/neo4j")
private String baseUriString;
private static final String PERSISTENCE_ROOT = "...";
private SessionFactory sessionFactory;
private Neo4jServer neo4jServer;
private Session session;
@PostConstruct
public void init() {
neo4jServer = new RemoteServer(baseUriString);
sessionFactory = new SessionFactory(PERSISTENCE_ROOT + ".person", PERSISTENCE_ROOT + ".relation",
PERSISTENCE_ROOT + ".relations_type");
session = sessionFactory.openSession(baseUriString);
}
@Produces
public SessionFactory sessionFactory() {
return sessionFactory;
}
@Produces
public Neo4jServer neo4jServer() {
return neo4jServer;
}
@Produces
public Neo4jTemplate neo4jTemplate() {
return new Neo4jTemplate(session);
}
}
如果我想部署它,我的 glassfish 3 服务器会给我这个错误消息:
remote failure: Error occurred during deployment: Exception while loading the app :
java.lang.IllegalStateException: ContainerBase.addChild: start:
org.apache.catalina.LifecycleException:
org.apache.catalina.LifecycleException:
com.sun.jersey.spi.inject.Errors$ErrorMessagesException.
Please see server.log for more details.
我现在的问题是:我该如何解决这个错误?