Guest User

Untitled

a guest
May 7th, 2018
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.37 KB | None | 0 0
  1. Context initialization failed java.lang.NoSuchMethodError:
  2. org.springframework.beans.factory.annotation.InjectionMetadata.needsRefresh
  3. (Lorg/springframework/beans/factory/annotation/InjectionMetadata;
  4. Ljava/lang/Class;)Z
  5.  
  6. Exception thrown from LifecycleProcessor on context close
  7. java.lang.IllegalStateException: LifecycleProcessor not initialized
  8. call 'refresh' before invoking lifecycle methods via the context: Root
  9. WebApplicationContext
  10.  
  11. @Configuration
  12. @EnableWebSecurity
  13. @EnableGlobalMethodSecurity(securedEnabled = true)
  14. public class SecurityConfig extends WebSecurityConfigurerAdapter {
  15.  
  16. @Autowired
  17. private UserDetailsServiceImpl userDetailsService;
  18. @Autowired
  19. public void registerGlobalAuthentication(AuthenticationManagerBuilder auth)
  20. throws Exception {
  21. auth.userDetailsService(userDetailsService);
  22. }
  23.  
  24. @Override
  25. protected void configure(HttpSecurity http) throws Exception {
  26. http.csrf().disable()
  27. .authorizeRequests()
  28. .antMatchers("/resources/**", "/**").permitAll()
  29. .anyRequest().permitAll()
  30. .and();
  31.  
  32. http.formLogin()
  33. .loginPage("/login")
  34. .loginProcessingUrl("/j_spring_security_check")
  35. .failureUrl("/login?error")
  36. .usernameParameter("j_username")
  37. .passwordParameter("j_password")
  38. .permitAll();
  39.  
  40. http.logout()
  41. .permitAll()
  42. .logoutUrl("/logout")
  43. .logoutSuccessUrl("/login?logout")
  44. .invalidateHttpSession(true);
  45. }
  46.  
  47. @Configuration
  48. @EnableWebMvc
  49. @ComponentScan("com")
  50. public class WebAppConfig extends WebMvcConfigurerAdapter {
  51.  
  52. @Override
  53. public void addResourceHandlers(ResourceHandlerRegistry registry) {
  54. registry.addResourceHandler("/pages/**").addResourceLocations("/pages/");
  55. }
  56.  
  57. @Bean
  58. public UserDetailsService getUserDetailsService(){
  59. return new UserDetailsServiceImpl();
  60. }
  61.  
  62. @Bean
  63. public UrlBasedViewResolver setupViewResolver() {
  64. UrlBasedViewResolver resolver = new UrlBasedViewResolver();
  65. resolver.setPrefix("/pages/");
  66. resolver.setSuffix(".jsp");
  67. resolver.setViewClass(JstlView.class);
  68.  
  69. return resolver;
  70. }
  71.  
  72. }
  73.  
  74. @Entity
  75. @Table(name="roles")
  76. public class Role implements GrantedAuthority {
  77. @Id
  78. @GeneratedValue(strategy = GenerationType.AUTO)
  79. private long id;
  80. private String role;
  81.  
  82. public long getId() {
  83. return id;
  84. }
  85.  
  86. public void setId(long id) {
  87. this.id = id;
  88. }
  89.  
  90. public String getRole() {
  91. return role;
  92. }
  93.  
  94. public void setRole(String role) {
  95. this.role = role;
  96. }
  97.  
  98. protected Role(){}
  99. public Role(String name)
  100. {
  101. role = name;
  102. }
  103.  
  104. @ManyToMany(mappedBy = "roles")
  105. Set<User> users;
  106.  
  107. public Set<User> getUsers() {
  108. return users;
  109. }
  110.  
  111. public void setUsers(Set<User> users) {
  112. this.users = users;
  113. }
  114.  
  115. @Override
  116. public String getAuthority() {
  117. return getRole();
  118. }
  119. }
  120.  
  121. @Entity
  122. @Table(name = "users")
  123. public class User {
  124.  
  125. @Id
  126. @Column(name = "id")
  127. @GeneratedValue
  128. private Integer id;
  129. @Column(name = "username")
  130. private String login;
  131. @Column(name = "password")
  132. private String password;
  133.  
  134. public User(String login, String password) {
  135. this.login = login;
  136. this.password = password;
  137. }
  138.  
  139. public User() {
  140.  
  141. }
  142.  
  143. public String getLogin() {
  144. return login;
  145. }
  146.  
  147. public void setLogin(String login) {
  148. this.login = login;
  149. }
  150.  
  151. public String getPassword() {
  152. return password;
  153. }
  154.  
  155. public void setPassword(String password) {
  156. this.password = password;
  157. }
  158.  
  159. @ManyToMany
  160. @JoinTable(name = "users_roles",
  161. joinColumns = {@JoinColumn(name = "user_id")},
  162. inverseJoinColumns = @JoinColumn(name = "role_id"))
  163. private Set<Role> roles;
  164.  
  165. public Set<Role> getRoles() {
  166. return roles;
  167. }
  168.  
  169. public void setRoles(Set<Role> roles) {
  170. this.roles = roles;
  171. }
  172. }
  173.  
  174. public interface UsersRepository extends CrudRepository<User, Long> {
  175. User findByLogin(String username);
  176. }
  177.  
  178. @Service
  179. public class UserDetailsServiceImpl implements UserDetailsService {
  180.  
  181. @Autowired
  182. private UsersRepository userRep;
  183.  
  184. @Override
  185. public UserDetails loadUserByUsername(String email) throws UsernameNotFoundException {
  186.  
  187. UserDetails loadedUser;
  188.  
  189. try {
  190. User client = userRep.findByLogin(email);
  191. loadedUser = new org.springframework.security.core.userdetails.User(
  192. client.getLogin(), client.getPassword(),
  193. client.getRoles());
  194. } catch (Exception repositoryProblem) {
  195. throw new
  196. InternalAuthenticationServiceException(repositoryProblem.getMessage(),
  197. repositoryProblem);
  198. }
  199. return loadedUser;
  200. }
Add Comment
Please, Sign In to add comment