Does it fail in the test or when running the app? The "beanValidator" is defined in applicationContext-validation.xml IIRC. This file is not loaded for tests.
Matt On Wed, Jan 7, 2009 at 7:08 AM, Irshad Buchh <[email protected]> wrote: > > Hi, > We have an AppFuseLight SpringMVC application running gracefully. We face > two problems: > 1. We just changed the required attribute to true in UserFormController > > @Autowired(required = true) > @Qualifier("beanValidator") > Validator validator; > > This gives us the stacktrace: > > org.springframework.beans.factory.BeanCreationException: Error creating bean > with name 'userFormController': Autowiring of fields failed; nested > exception is org.springframework.be > ans.factory.BeanCreationException: Could not autowire field: > org.springframework.validation.Validator > org.appfuse.web.UserFormController.validator; nested exception is > org.springfr > amework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type > [org.springframework.validation.Validator] is defined: Unsatisfied > dependency of type [interface org.spr > ingframework.validation.Validator]: expected at least 1 matching bean > at > org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessAfterInstantiation(AutowiredAnnotationBeanPostProcessor.java:243) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:957) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:470) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409) > at java.security.AccessController.doPrivileged(Native Method) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380) > at > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264) > at > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:220) > at > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164) > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429) > at > org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381) > at > org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255) > at > org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199) > at > org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45) > at > org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548) > at org.mortbay.jetty.servlet.Context.startContext(Context.java:136) > at > org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1234) > at > org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) > at > org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:460) > at > org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:124) > at > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) > at > org.mortbay.jetty.plugin.AbstractJettyRunMojo.restartWebApp(AbstractJettyRunMojo.java:441) > at > org.mortbay.jetty.plugin.AbstractJettyRunMojo$1.filesChanged(AbstractJettyRunMojo.java:402) > at org.mortbay.util.Scanner.reportBulkChanges(Scanner.java:486) > at org.mortbay.util.Scanner.reportDifferences(Scanner.java:352) > at org.mortbay.util.Scanner.scan(Scanner.java:280) > at org.mortbay.util.Scanner$1.run(Scanner.java:232) > at java.util.TimerThread.mainLoop(Timer.java:512) > at java.util.TimerThread.run(Timer.java:462) > Caused by: org.springframework.beans.factory.BeanCreationException: Could > not autowire field: org.springframework.validation.Validator > org.appfuse.web.UserFormController.validator; > nested exception is > org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique > bean of type [org.springframework.validation.Validator] is defined: > Unsatisfied depe > ndency of type [interface org.springframework.validation.Validator]: > expected at least 1 matching bean > at > org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:435) > at > org.springframework.beans.factory.annotation.InjectionMetadata.injectFields(InjectionMetadata.java:105) > at > org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessAfterInstantiation(AutowiredAnnotationBeanPostProcessor.java:240) > ... 31 more > Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: > No unique bean of type [org.springframework.validation.Validator] is > defined: Unsatisfied dependency of > type [interface org.springframework.validation.Validator]: expected at least > 1 matching bean > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:613) > at > org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:412) > ... 33 more > 2009-01-07 10:03:03.515::WARN: Failed startup of context > org.mortbay.jetty.plugin.jetty6pluginwebappcont...@bb1bc4{/,F:\APPFUSE\applight-springmvc\src\main\webapp} > org.springframework.beans.factory.BeanCreationException: Error creating bean > with name 'userFormController': Autowiring of fields failed; nested > exception is org.springframework.be > ans.factory.BeanCreationException: Could not autowire field: > org.springframework.validation.Validator > org.appfuse.web.UserFormController.validator; nested exception is > org.springfr > amework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type > [org.springframework.validation.Validator] is defined: Unsatisfied > dependency of type [interface org.spr > ingframework.validation.Validator]: expected at least 1 matching bean > at > org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessAfterInstantiation(AutowiredAnnotationBeanPostProcessor.java:243) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:957) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:470) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409) > at java.security.AccessController.doPrivileged(Native Method) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380) > at > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264) > at > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:220) > at > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164) > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429) > at > org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381) > at > org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255) > at > org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199) > at > org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45) > at > org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548) > at org.mortbay.jetty.servlet.Context.startContext(Context.java:136) > at > org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1234) > at > org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) > at > org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:460) > at > org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:124) > at > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) > at > org.mortbay.jetty.plugin.AbstractJettyRunMojo.restartWebApp(AbstractJettyRunMojo.java:441) > at > org.mortbay.jetty.plugin.AbstractJettyRunMojo$1.filesChanged(AbstractJettyRunMojo.java:402) > at org.mortbay.util.Scanner.reportBulkChanges(Scanner.java:486) > at org.mortbay.util.Scanner.reportDifferences(Scanner.java:352) > at org.mortbay.util.Scanner.scan(Scanner.java:280) > at org.mortbay.util.Scanner$1.run(Scanner.java:232) > at java.util.TimerThread.mainLoop(Timer.java:512) > at java.util.TimerThread.run(Timer.java:462) > Caused by: org.springframework.beans.factory.BeanCreationException: Could > not autowire field: org.springframework.validation.Validator > org.appfuse.web.UserFormController.validator; > nested exception is > org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique > bean of type [org.springframework.validation.Validator] is defined: > Unsatisfied depe > ndency of type [interface org.springframework.validation.Validator]: > expected at least 1 matching bean > at > org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:435) > at > org.springframework.beans.factory.annotation.InjectionMetadata.injectFields(InjectionMetadata.java:105) > at > org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessAfterInstantiation(AutowiredAnnotationBeanPostProcessor.java:240) > ... 31 more > Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: > No unique bean of type [org.springframework.validation.Validator] is > defined: Unsatisfied dependency of > type [interface org.springframework.validation.Validator]: expected at least > 1 matching bean > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:613) > at > org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:412) > ... 33 more > 2009-01-07 10:03:03.515::WARN: Nested in > org.springframework.beans.factory.BeanCreationException: Error creating bean > with name 'userFormController': Autowiring of fields failed; > nested exception is org.springframework.beans.factory.BeanCreationException: > Could not autowire field: org.springframework.validation.Validator > org.appfuse.web.UserFormController.v > alidator; nested exception is > org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique > bean of type [org.springframework.validation.Validator] is defined: Unsatis > fied dependency of type [interface > org.springframework.validation.Validator]: expected at least 1 matching > bean: > org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique > bean of type [org.springframework.validation.Validator] is defined: > Unsatisfied dependency of type [inter > > 2. The client-side validation doesn't work on Weblogic 10.3, although it > works ok on Tomcat. > > --Irshad. > -- > View this message in context: > http://www.nabble.com/SpringValidator-%40Autowire-not-working-in-SpringMVC-AppFuse-tp21331975s2369p21331975.html > Sent from the AppFuse - User mailing list archive at Nabble.com. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
