Джерси 1.6 с весны 3.0.5 с использованием Maven - PullRequest
4 голосов
/ 27 марта 2011

Мне трудно заставить Джерси работать с Spring 3.0.5.Я нашел много людей, которые говорят, что они могут заставить его работать, но мне не повезло.Я всегда получаю:

java.lang.NoSuchMethodError: org.springframework.web.context.ConfigurableWebApplicationContext.setId (Ljava / lang / String;)

Кто-нибудь может заставить это работать?1005 *

Спасибо за помощь!


Вот мои зависимости pom:

<dependencies>
    <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-server</artifactId>
        <version>${jersey-version}</version>
    </dependency>

    <dependency>
        <groupId>com.sun.jersey.contribs</groupId>
        <artifactId>jersey-spring</artifactId>
        <version>${jersey-version}</version>
        <exclusions>
            <exclusion>
                <artifactId>spring-core</artifactId>
                <groupId>org.springframework</groupId>
            </exclusion>
            <exclusion>
                <artifactId>spring-aop</artifactId>
                <groupId>org.springframework</groupId>
            </exclusion>
            <exclusion>
                <artifactId>spring-beans</artifactId>
                <groupId>org.springframework</groupId>
            </exclusion>
            <exclusion>
                <artifactId>spring-context</artifactId>
                <groupId>org.springframework</groupId>
            </exclusion>
            <exclusion>
                <artifactId>spring-web</artifactId>
                <groupId>org.springframework</groupId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>3.0.5.RELEASE</version>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aop</artifactId>
        <version>3.0.5.RELEASE</version>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>3.0.5.RELEASE</version>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>3.0.5.RELEASE</version>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>3.0.5.RELEASE</version>
    </dependency>
</dependencies>

и вот ошибка:

GRAVE: Исключение при загрузке приложения Java.lang.Exception: java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: java.lang.NoSuchMethodError: org.springframework.web.context.ConfigurableWebJIна com.sun.enterprise.web.WebApplication.start (WebApplication.java:117) на org.glassfish.internal.data.EngineRef.start (EngineRef.java:126) на org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:241) по адресу org.glassfish.internal.data.ApplicationInfo.start (ApplicationInfo.java:236) по адресу com.sun.enterprise.v3.server.ApplicationLifecycle.deploy (ApplicationLifecycle.java:339) по адресу com.sun.enterprise.v3.server.ApplicationLifecycle.deploy (ApplicationLifecycle.java:183) в org.glassfish.deployment.admin.DeployCommand.execute (DeployCommand.java:272) в com.sun.enterprise.v3.admin.CommandRunnerImpl $1.execute (CommandRunnerImpl.java:310) в com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand (CommandRunnerImpl.java:320) в com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand (CommandRunner:1176) по адресу com.sun.enterprise.v3.admin.CommandRunnerImpl.access $ 900 (CommandRunnerImpl.java:83) по адресу com.sun.enterprise.v3.admin.CommandRunnerImpl $ ExecutionContext.execute (CommandRunnerImpl.java:1235) или по адресу.glassfish.deployment.autodeploy.AutoOperation.run (AutoOperation.java:141) в org.glassfish.deployment.autodeploy.AutoDeployer.deploy (AutoDeployer.java:573) в org.glassfish.deployment.autodeploy.AutoDeploy.Java: 459) на org.glassfish.deployment.autodeploy.AutoDeployer.run (AutoDeployer.java:391) на org.glassfish.deployment.autodeploy.AutoDeployer.run (AutoDeployer.java:376) на org.glassfish.deployment.AutoDeployService $ 1.run (AutoDeployService.java:195) в java.util.TimerThread.mainLoop (Timer.java:512) в java.util.TimerThread.run (Timer.java:462)

Ответы [ 2 ]

4 голосов
/ 27 марта 2011

Сделайте mvn dependency:tree и убедитесь, что больше нет версий Spring, извлекаемых из других источников. ConfigurableWebApplicationContext.setId() не существовало в Spring 2.5, но существует в 3.x.

0 голосов
/ 22 июля 2011

Спасибо, ERICACM, Отличный ответ.У меня была такая же проблема при использовании весны 3.0.5.В моей папке web-inf / lib застряли две банки с 2.5.6.Устранение этих проблем решило проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...