Restful веб-сервисы (Apache) +Guice+openjpa)

Я хотел бы использовать следующие технологии для разработки полноценного веб-сервиса.

Apache +Guice3+openjpa. Я не знаю, как использовать Guice с Wink и OpenJPA. не могли бы вы объяснить.

1 ответ

Я не могу помочь вам с OpenJPA, но я только сейчас понял, как использовать Guice с Wink, Прежде всего, вам не нужно использовать Guice's guice-servlet JAR, как и в обычном веб-приложении. Просто настройте свое веб-приложение на использование Wink, как обычно, и выполните следующие действия.

  1. Заменить wink-server JAR с wink-guice-server JAR (доступно из того же источника).
  2. Изменить servlet-class в вашем web.xml файл из

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

    в

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

  3. Также в web.xmlдобавить этот фрагмент в Wink's <servlet-class> элемент:

    <init-param>
        <param-name>deploymentConfiguration</param-name>
        <param-value>com.yourco.yourproj.DeploymentConfiguration</param-value>
    </init-param>
    
  4. Наконец, создайте новый Wink DeploymentConfiguration класс, который я называю здесь 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.

Другие вопросы по тегам