eclipse-ee4j / jersey

Eclipse Jersey Project - Read our Wiki:
https://github.com/eclipse-ee4j/jersey/wiki
Other
690 stars 351 forks source link

helloworld-spring-annotations : Injection of autowired dependencies failed; #3329

Open jerseyrobot opened 8 years ago

jerseyrobot commented 8 years ago
C:\dev\jdk7\bin\java -Didea.launcher.port=7535 "-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IntelliJ IDEA 15.0.2\bin" -Dfile.encoding=UTF-8 -classpath "C:\dev\jdk7\jre\lib\charsets.jar;C:\dev\jdk7\jre\lib\deploy.jar;C:\dev\jdk7\jre\lib\javaws.jar;C:\dev\jdk7\jre\lib\jce.jar;C:\dev\jdk7\jre\lib\jfr.jar;C:\dev\jdk7\jre\lib\jfxrt.jar;C:\dev\jdk7\jre\lib\jsse.jar;C:\dev\jdk7\jre\lib\management-agent.jar;C:\dev\jdk7\jre\lib\plugin.jar;C:\dev\jdk7\jre\lib\resources.jar;C:\dev\jdk7\jre\lib\rt.jar;C:\dev\jdk7\jre\lib\ext\access-bridge-64.jar;C:\dev\jdk7\jre\lib\ext\dnsns.jar;C:\dev\jdk7\jre\lib\ext\jaccess.jar;C:\dev\jdk7\jre\lib\ext\localedata.jar;C:\dev\jdk7\jre\lib\ext\sunec.jar;C:\dev\jdk7\jre\lib\ext\sunjce_provider.jar;C:\dev\jdk7\jre\lib\ext\sunmscapi.jar;C:\dev\jdk7\jre\lib\ext\zipfs.jar;C:\workspaces\ucp-jersey2\jersey-2.21.x\examples\helloworld-spring-annotations\target\classes;C:\Users\c_sdionne\.m2\repository\org\glassfish\jersey\containers\jersey-container-grizzly2-http\2.22.1\jersey-container-grizzly2-http-2.22.1.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\external\javax.inject\2.4.0-b31\javax.inject-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\grizzly\grizzly-http-server\2.3.23\grizzly-http-server-2.3.23.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\grizzly\grizzly-http\2.3.23\grizzly-http-2.3.23.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\grizzly\grizzly-framework\2.3.23\grizzly-framework-2.3.23.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\jersey\core\jersey-common\2.22.1\jersey-common-2.22.1.jar;C:\Users\c_sdionne\.m2\repository\javax\annotation\javax.annotation-api\1.2\javax.annotation-api-1.2.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\jersey\bundles\repackaged\jersey-guava\2.22.1\jersey-guava-2.22.1.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\hk2-api\2.4.0-b31\hk2-api-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\external\aopalliance-repackaged\2.4.0-b31\aopalliance-repackaged-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\hk2-locator\2.4.0-b31\hk2-locator-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\javassist\javassist\3.18.1-GA\javassist-3.18.1-GA.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\osgi-resource-locator\1.0.1\osgi-resource-locator-1.0.1.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\jersey\core\jersey-server\2.22.1\jersey-server-2.22.1.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\jersey\media\jersey-media-jaxb\2.22.1\jersey-media-jaxb-2.22.1.jar;C:\Users\c_sdionne\.m2\repository\javax\validation\validation-api\1.1.0.Final\validation-api-1.1.0.Final.jar;C:\Users\c_sdionne\.m2\repository\javax\ws\rs\javax.ws.rs-api\2.0.1\javax.ws.rs-api-2.0.1.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\jersey\ext\jersey-spring3\2.22.1\jersey-spring3-2.22.1.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\jersey\containers\jersey-container-servlet-core\2.22.1\jersey-container-servlet-core-2.22.1.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\hk2\2.4.0-b31\hk2-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\hk2-utils\2.4.0-b31\hk2-utils-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\javax\inject\javax.inject\1\javax.inject-1.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\config-types\2.4.0-b31\config-types-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\hk2-core\2.4.0-b31\hk2-core-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\hk2-config\2.4.0-b31\hk2-config-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\jvnet\tiger-types\1.4\tiger-types-1.4.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\external\bean-validator\2.4.0-b31\bean-validator-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\hk2-runlevel\2.4.0-b31\hk2-runlevel-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\class-model\2.4.0-b31\class-model-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\external\asm-all-repackaged\2.4.0-b31\asm-all-repackaged-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\hk2\spring-bridge\2.4.0-b31\spring-bridge-2.4.0-b31.jar;C:\Users\c_sdionne\.m2\repository\org\springframework\spring-beans\4.0.0.RELEASE\spring-beans-4.0.0.RELEASE.jar;C:\Users\c_sdionne\.m2\repository\org\springframework\spring-core\4.0.0.RELEASE\spring-core-4.0.0.RELEASE.jar;C:\Users\c_sdionne\.m2\repository\org\springframework\spring-web\4.0.0.RELEASE\spring-web-4.0.0.RELEASE.jar;C:\Users\c_sdionne\.m2\repository\aopalliance\aopalliance\1.0\aopalliance-1.0.jar;C:\Users\c_sdionne\.m2\repository\org\springframework\spring-aop\4.0.0.RELEASE\spring-aop-4.0.0.RELEASE.jar;C:\Users\c_sdionne\.m2\repository\org\springframework\spring-context\4.0.0.RELEASE\spring-context-4.0.0.RELEASE.jar;C:\Users\c_sdionne\.m2\repository\org\springframework\spring-expression\4.0.0.RELEASE\spring-expression-4.0.0.RELEASE.jar;C:\Users\c_sdionne\.m2\repository\commons-logging\commons-logging\1.1\commons-logging-1.1.jar;C:\Users\c_sdionne\.m2\repository\log4j\log4j\1.2.12\log4j-1.2.12.jar;C:\Users\c_sdionne\.m2\repository\logkit\logkit\1.0.1\logkit-1.0.1.jar;C:\Users\c_sdionne\.m2\repository\avalon-framework\avalon-framework\4.1.3\avalon-framework-4.1.3.jar;C:\Users\c_sdionne\.m2\repository\javax\servlet\servlet-api\2.3\servlet-api-2.3.jar;C:\Users\c_sdionne\.m2\repository\org\glassfish\jersey\core\jersey-client\2.22.1\jersey-client-2.22.1.jar;C:\Program Files (x86)\JetBrains\IntelliJ IDEA 15.0.2\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain org.glassfish.jersey.examples.hello.spring.annotations.App
"Hello World" Jersey-Spring Example App
log4j:WARN No appenders could be found for logger (org.springframework.core.env.StandardEnvironment).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'springRequestResource': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private java.lang.Iterable org.glassfish.jersey.examples.hello.spring.annotations.SpringRequestResource.goodbyeServicesIterable; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [java.lang.Iterable] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:292)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1185)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:700)
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:760)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:482)
    at org.springframework.context.annotation.AnnotationConfigApplicationContext.<init>(AnnotationConfigApplicationContext.java:84)
    at org.glassfish.jersey.examples.hello.spring.annotations.App.main(App.java:69)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private java.lang.Iterable org.glassfish.jersey.examples.hello.spring.annotations.SpringRequestResource.goodbyeServicesIterable; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [java.lang.Iterable] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:508)
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:289)
    ... 17 more
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [java.lang.Iterable] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:1100)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:960)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:855)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:480)
    ... 19 more

Process finished with exit code 1

Affected Versions

[2.22.1]

jerseyrobot commented 6 years ago
jerseyrobot commented 8 years ago

@glassfishrobot Commented Reported by survivant

jerseyrobot commented 8 years ago

@glassfishrobot Commented survivant said: here the pom.xml that I have to use the latest Spring release

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.glassfish.jersey.examples</groupId>
    <artifactId>helloworld-spring-annotations</artifactId>
    <description>Spring 3 Integration Jersey Example</description>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <spring.version>4.0.0.RELEASE</spring.version>
        <jersey.version>2.22.1</jersey.version>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
<groupId>org.glassfish.jersey</groupId>
<artifactId>jersey-bom</artifactId>
<version>${jersey.version}</version>
<type>pom</type>
<scope>import</scope>
            </dependency>

            <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-framework-bom</artifactId>
<version>${spring.version}</version>
<type>pom</type>
<scope>import</scope>
            </dependency>

        </dependencies>

    </dependencyManagement>

    <dependencies>
        <dependency>
            <groupId>org.glassfish.jersey.containers</groupId>
            <artifactId>jersey-container-grizzly2-http</artifactId>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.ext</groupId>
            <artifactId>jersey-spring3</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1</version>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.test-framework.providers</groupId>
            <artifactId>jersey-test-framework-provider-inmemory</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
    <source>1.7</source>
    <target>1.7</target>
</configuration>
            </plugin>
            <plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<configuration>
    <mainClass>org.glassfish.jersey.examples.hello.spring.annotations.App</mainClass>
</configuration>
            </plugin>
        </plugins>
    </build>

</project>
jerseyrobot commented 7 years ago

@glassfishrobot Commented This issue was imported from java.net JIRA JERSEY-3057