0

我想使用以下技术来开发restful webservice。

阿帕奇眨眼+Guice3+openjpa。我不知道如何将 guice 与 wink 和 openjpa 一起使用。你能解释一下吗?

4

1 回答 1

3

我无法帮助您使用 OpenJPA,但我现在才知道如何Guice使用Wink. 首先,您不需要像使用guice-servlet普通 web 应用程序那样使用 Guice 的 JAR。只需将您的 web 应用程序设置为像往常一样使用 Wink,然后按照以下步骤操作。

  1. wink-serverJAR替换为wink-guice-serverJAR(可从同一来源获得)。
  2. 更改文件中servlet-classweb.xml

    org.apache.wink.server.internal.servlet.RestServlet

    org.apache.wink。吉斯。server.internal.servlet。Guice RestServlet

  3. 同样在 中web.xml,将此代码段添加到 Wink 的<servlet-class>元素中:

    <init-param>
        <param-name>deploymentConfiguration</param-name>
        <param-value>com.yourco.yourproj.DeploymentConfiguration</param-value>
    </init-param>
    
  4. 最后,创建一个新的 WinkDeploymentConfiguration类,我在这里调用它com.yourco.yourproj.DeploymentConfiguration

    package com.yourco.yourproj;
    
    import com.google.inject.Module;
    import org.apache.wink.guice.server.internal.GuiceDeploymentConfiguration;
    import org.apache.wink.guice.server.internal.lifecycle.WinkGuiceModule;
    
    public class DeploymentConfiguration extends GuiceDeploymentConfiguration {
        @Override
        public Module[] createModules() {
            return new Module[] { new WinkGuiceModule(), new YourModule() };
        }
    }
    

    YourModule只是一个普通的 Guice 模块。

于 2013-11-15T20:02:25.947 回答