Advertisement
Guest User

Untitled

a guest
Apr 12th, 2016
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.01 KB | None | 0 0
  1. org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'jdbcSpitterRepository' defined in file [D:Apache Software FoundationTomcat 9.0webappsROOTWEB-INFclassesspitterdataJdbcSpitterRepository.class]: Unsatisfied dependency expressed through constructor argument with index 0 of type [org.springframework.jdbc.core.JdbcTemplate]: Error creating bean with name 'jdbcTemplate' defined in class path resource [spitter/config/DataConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.jdbc.core.JdbcTemplate]: Factory method 'jdbcTemplate' threw exception; nested exception is java.lang.IllegalArgumentException: Property 'dataSource' is required; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jdbcTemplate' defined in class path resource [spitter/config/DataConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.jdbc.core.JdbcTemplate]: Factory method 'jdbcTemplate' threw exception; nested exception is java.lang.IllegalArgumentException: Property 'dataSource' is required
  2. at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:749)
  3. at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:185)
  4. at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1143)
  5. at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1046)
  6. at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510)
  7. at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
  8. at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
  9. at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
  10. at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
  11. at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
  12. at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772)
  13. at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839)
  14. at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538)
  15. at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:444)
  16. at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326)
  17. at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
  18. at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4730)
  19. at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5194)
  20. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:152)
  21. at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726)
  22. at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:702)
  23. at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
  24. at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1702)
  25. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  26. at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  27. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  28. at java.lang.reflect.Method.invoke(Method.java:483)
  29. at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
  30. at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
  31. at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
  32. at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:482)
  33. at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)
  34. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  35. at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  36. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  37. at java.lang.reflect.Method.invoke(Method.java:483)
  38. at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
  39. at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
  40. at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
  41. at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1466)
  42. at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
  43. at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1307)
  44. at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1399)
  45. at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:828)
  46. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  47. at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  48. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  49. at java.lang.reflect.Method.invoke(Method.java:483)
  50. at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
  51. at sun.rmi.transport.Transport$1.run(Transport.java:178)
  52. at sun.rmi.transport.Transport$1.run(Transport.java:175)
  53. at java.security.AccessController.doPrivileged(Native Method)
  54. at sun.rmi.transport.Transport.serviceCall(Transport.java:174)
  55. at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:557)
  56. at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:812)
  57. at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:671)
  58. at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  59. at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  60. at java.lang.Thread.run(Thread.java:745)
  61. Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jdbcTemplate' defined in class path resource [spitter/config/DataConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.jdbc.core.JdbcTemplate]: Factory method 'jdbcTemplate' threw exception; nested exception is java.lang.IllegalArgumentException: Property 'dataSource' is required
  62. at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:599)
  63. at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1123)
  64. at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1018)
  65. at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510)
  66. at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
  67. at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
  68. at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
  69. at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
  70. at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
  71. at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1192)
  72. at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1116)
  73. at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1014)
  74. at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:813)
  75. at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741)
  76. ... 58 more
  77. Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.jdbc.core.JdbcTemplate]: Factory method 'jdbcTemplate' threw exception; nested exception is java.lang.IllegalArgumentException: Property 'dataSource' is required
  78. at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:189)
  79. at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:588)
  80. ... 71 more
  81. Caused by: java.lang.IllegalArgumentException: Property 'dataSource' is required
  82. at org.springframework.jdbc.support.JdbcAccessor.afterPropertiesSet(JdbcAccessor.java:135)
  83. at org.springframework.jdbc.core.JdbcTemplate.<init>(JdbcTemplate.java:168)
  84. at spitter.config.DataConfig.jdbcTemplate(DataConfig.java:32)
  85. at spitter.config.DataConfig$$EnhancerBySpringCGLIB$$5d3ba49d.CGLIB$jdbcTemplate$1(<generated>)
  86. at spitter.config.DataConfig$$EnhancerBySpringCGLIB$$5d3ba49d$$FastClassBySpringCGLIB$$9d6b63b2.invoke(<generated>)
  87. at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
  88. at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:355)
  89. at spitter.config.DataConfig$$EnhancerBySpringCGLIB$$5d3ba49d.jdbcTemplate(<generated>)
  90. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  91. at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  92. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  93. at java.lang.reflect.Method.invoke(Method.java:483)
  94. at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
  95. ... 72 more
  96.  
  97. public class SpitterWebInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
  98.  
  99. @Override
  100. protected Class<?>[] getRootConfigClasses() {
  101. return new Class<?>[] { RootConfig.class };
  102. }
  103.  
  104. @Override
  105. protected Class<?>[] getServletConfigClasses() {
  106. return new Class<?>[] {
  107. WebConfig.class
  108. };
  109. }
  110.  
  111. @Override
  112. protected String[] getServletMappings() {
  113. return new String[] { "/" };
  114. }
  115.  
  116. @Override
  117. protected void customizeRegistration(ServletRegistration.Dynamic registration) {
  118. registration.setMultipartConfig(new MultipartConfigElement("D:\temp"));
  119. }
  120. }
  121.  
  122. @Configuration
  123. @Import(DataConfig.class)
  124. @ComponentScan(basePackages = "spitter",
  125. excludeFilters = {
  126. @ComponentScan.Filter(type = FilterType.ANNOTATION,value = EnableWebMvc.class)
  127. })
  128. public class RootConfig {
  129. }
  130.  
  131. @Configuration
  132. public class DataConfig {
  133.  
  134. @Bean
  135. public DataSource dataSource() {
  136. return new EmbeddedDatabaseBuilder()
  137. .setType(EmbeddedDatabaseType.H2)
  138. .addScript("schema.sql")
  139. .build();
  140. }
  141.  
  142. @Bean
  143. public JdbcOperations jdbcTemplate(DataSource dataSource) {
  144. return new JdbcTemplate(dataSource);
  145. }
  146.  
  147. }
  148.  
  149. @Configuration
  150. @EnableWebMvc
  151. @ComponentScan({"spitter.web","spitter.data"})
  152. public class WebConfig extends WebMvcConfigurerAdapter{
  153.  
  154. @Bean
  155. public ViewResolver viewResolver(SpringTemplateEngine templateEngine) {
  156. ThymeleafViewResolver viewResolver = new ThymeleafViewResolver();
  157. viewResolver.setTemplateEngine(templateEngine);
  158. return viewResolver;
  159. }
  160. @Bean
  161. public SpringTemplateEngine templateEngine(TemplateResolver templateResolver) {
  162. SpringTemplateEngine templateEngine = new SpringTemplateEngine();
  163. templateEngine.setTemplateResolver(templateResolver);
  164. return templateEngine;
  165. }
  166.  
  167. @Bean
  168. public TemplateResolver templateResolver() {
  169. TemplateResolver templateResolver = new ServletContextTemplateResolver();
  170. templateResolver.setPrefix("/WEB-INF/views/");
  171. templateResolver.setSuffix(".html");
  172. templateResolver.setTemplateMode("HTML5");
  173. return templateResolver;
  174. }
  175.  
  176. @Bean
  177. public MessageSource messageSource(){
  178. ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource();
  179. messageSource.setBasename("messages");
  180. return messageSource;
  181.  
  182. }
  183.  
  184. @Override
  185. public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
  186. configurer.enable();
  187. }
  188.  
  189.  
  190. }
  191.  
  192. @Repository
  193. public class JdbcSpitterRepository implements SpittleRepository {
  194.  
  195.  
  196. private JdbcTemplate jdbcTemplate;
  197.  
  198. private static final String INSERT_SPITTER = "insert into Spitter (username, password, fullname, email, updateByEmail) values (?, ?, ?, ?, ?)";
  199.  
  200. private static final String SELECT_SPITTER = "select id, username, password, fullname, email from Spitter";
  201.  
  202. @Autowired
  203. public JdbcSpitterRepository(JdbcTemplate jdbcTemplate) {
  204. this.jdbcTemplate = jdbcTemplate;
  205. }
  206.  
  207. @Override
  208. public List<Spittle> findSpittles(long max, int count) {
  209. return null;
  210. }
  211.  
  212. @Override
  213. public Spittle findOne(long spittleId) {
  214. return null;
  215. }
  216.  
  217. @Override
  218. public void saveSpitter(Spitter spitter) {
  219. jdbcTemplate.update(INSERT_SPITTER,
  220. spitter.getUsername(),
  221. spitter.getPassword(),
  222. spitter.getFullName(),
  223. spitter.getEmail());
  224. }
  225.  
  226. @Override
  227. public void saveSpittle(Spittle spittle) {
  228.  
  229. }
  230.  
  231. @Override
  232. public Spitter findByUsername(String username) {
  233. return null;
  234. }
  235. }
  236.  
  237. <?xml version="1.0" encoding="UTF-8"?>
  238. <project xmlns="http://maven.apache.org/POM/4.0.0"
  239. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  240. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  241. <modelVersion>4.0.0</modelVersion>
  242.  
  243. <groupId>groupId</groupId>
  244. <artifactId>Spitter</artifactId>
  245. <version>1.0-SNAPSHOT</version>
  246. <packaging>war</packaging>
  247. <dependencies>
  248. <dependency>
  249. <groupId>jstl</groupId>
  250. <artifactId>jstl</artifactId>
  251. <version>1.2</version>
  252. </dependency>
  253. <dependency>
  254. <groupId>javax.servlet</groupId>
  255. <artifactId>javax.servlet-api</artifactId>
  256. <version>3.1.0</version>
  257. </dependency>
  258. <dependency>
  259. <groupId>junit</groupId>
  260. <artifactId>junit</artifactId>
  261. <version>4.11</version>
  262. <scope>test</scope>
  263. </dependency>
  264. <dependency>
  265. <groupId>org.apache.commons</groupId>
  266. <artifactId>commons-lang3</artifactId>
  267. <version>3.1</version>
  268. </dependency>
  269. <dependency>
  270. <groupId>org.mockito</groupId>
  271. <artifactId>mockito-core</artifactId>
  272. <version>1.10.19</version>
  273. <scope>test</scope>
  274. </dependency>
  275. <dependency>
  276. <groupId>org.hamcrest</groupId>
  277. <artifactId>hamcrest-library</artifactId>
  278. <version>1.3</version>
  279. <scope>test</scope>
  280. </dependency>
  281. <dependency>
  282. <groupId>javax.validation</groupId>
  283. <artifactId>validation-api</artifactId>
  284. <version>1.0.0.GA</version>
  285. </dependency>
  286.  
  287. <dependency>
  288. <groupId>org.hibernate</groupId>
  289. <artifactId>hibernate-validator</artifactId>
  290. <version>4.3.1.Final</version>
  291. </dependency>
  292. <dependency>
  293. <groupId>org.thymeleaf</groupId>
  294. <artifactId>thymeleaf-spring4</artifactId>
  295. <version>2.1.4.RELEASE</version>
  296. </dependency>
  297. <dependency>
  298. <groupId>org.springframework</groupId>
  299. <artifactId>spring-jdbc</artifactId>
  300. <version>4.2.5.RELEASE</version>
  301. </dependency>
  302. <dependency>
  303. <groupId>mysql</groupId>
  304. <artifactId>mysql-connector-java</artifactId>
  305. <version>5.1.38</version>
  306. </dependency>
  307. <dependency>
  308. <groupId>javax.inject</groupId>
  309. <artifactId>javax.inject</artifactId>
  310. <version>1</version>
  311. </dependency>
  312. </dependencies>
  313. <properties>
  314. <maven.compiler.source>1.8</maven.compiler.source>
  315. <maven.compiler.target>1.8</maven.compiler.target>
  316. </properties>
  317.  
  318. </project>
  319.  
  320. <Resource name="UserDatabase" auth="Container"
  321. type="org.apache.catalina.UserDatabase"
  322. description="User database that can be updated and saved"
  323. factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
  324. pathname="conf/tomcat-users.xml" />
  325.  
  326. <Resource name="jdbc/SpittrDS"
  327. global="jdbc/SpittrDS"
  328. auth="Container"
  329. type="javax.sql.DataSource"
  330. driverClassName="com.mysql.jdbc.Driver"
  331. url="jdbc:mysql://localhost:3306/SpittrDS"
  332. username="root"
  333. password=" "
  334. maxActive="100"
  335. maxIdle="20"
  336. minIdle="5"
  337. maxWait="10000"/>
  338. </GlobalNamingResources>
  339.  
  340. <ResourceLink name="jdbc/SpittrDS"
  341. global="jdbc/SpittrDS"
  342. auth="Container"
  343. type="javax.sql.DataSource" />
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement