0

我有一个运行 1.9 Neo4J 嵌入式的 SDN 2.3.1 应用程序,它部署在 Tomcat 7 上。运行嵌入式和休息时都很好。但是,我现在正在尝试在这篇文章之后公开 REST 接口,以便我使用 Linkurious 来探索嵌入的数据。

我在部署时遇到的例外是:

com.sun.jersey.api.container.ContainerException: No WebApplication provider is present

我的 XML 配置是

<bean id="graphDatabaseService" class="org.neo4j.kernel.EmbeddedGraphDatabase" destroy-method="shutdown">
    <constructor-arg index="0" value="${neo4j.datastore}"/>
    <constructor-arg index="1">
        <map>
            <entry key="allow_store_upgrade" value="true"/>
            <entry key="enable_remote_shell" value="true"/>
        </map>
    </constructor-arg>
</bean>
<bean id="serverWrapper" class="org.neo4j.server.WrappingNeoServer" init-method="start" destroy-method="stop">
    <constructor-arg ref="graphDatabaseService"/>
</bean>

我的 pom.xml 中有 static-web 和 neo4j-server

我的猜测是它与 Jetty 和 Tomcat 在谁被允许部署到上下文方面存在冲突。我的配置是否可行,如果可以,我可能会遗漏哪一步?

4

1 回答 1

0

缺少我在文档中没有发现的对 Jersey 的传递依赖。

   <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-servlet</artifactId>
        <version>1.17.1</version>
    </dependency>
    <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-server</artifactId>
        <version>1.17.1</version>
    </dependency>

Web 管理界面正在引发异常,但我至少可以运行嵌入式并向 Neo4J 公开一个 RESTful 界面 - 耶!

感谢这篇文章的指针

于 2013-11-14T22:34:27.190 回答