Мое намерение - подключить весенние 4 класса сетевых меток для моего существующего проекта. Вот весной ссылка WebSocket проекта: https://github.com/rstoyanchev/spring-websocket-testДобавление весенних веб-гнезд к существующему весеннему проекту
проблема мой проект использует конфигурационные файлы XML в то время как проект WebSocket использует очень странные конфигурации Java файла.
Мой вопрос: есть ли способ импортировать эти файлы конфигураций из проекта spring в мой уже существующий (на основе xml) проект?
, например, мои XMLs в настоящее время судил в web.xml, в то время как в проекте весной WebSocket нет web.xml вообще ..
PS Не все классы конфигурации в этом проекте являются компонентами, здесь 2 класса без @Configuration разъяснения:
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRegistration.Dynamic;
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;
public class DispatcherServletInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class<?>[] { WebSecurityConfig.class };
}
@Override
protected Class<?>[] getServletConfigClasses() {
return new Class<?>[] { WebConfig.class, WebSocketConfig.class };
}
@Override
protected String[] getServletMappings() {
return new String[] { "/" };
}
@Override
protected void customizeRegistration(Dynamic registration) {
registration.setInitParameter("dispatchOptionsRequest", "true");
}
@Override
public void onStartup(ServletContext servletContext) throws ServletException {
super.onStartup(servletContext);
}
}
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.csrf().disable() //TODO Refactor login form
.authorizeRequests()
.antMatchers("/assets/**").permitAll()
.anyRequest().authenticated()
.and()
.logout()
.logoutSuccessUrl("/login.html?logout")
.logoutUrl("/logout.html")
.permitAll()
.and()
.formLogin()
.defaultSuccessUrl("/index.html")
.loginPage("/login.html")
.failureUrl("/login.html?error")
.permitAll();
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth
.inMemoryAuthentication()
.withUser("fabrice").password("fab123").roles("USER").and()
.withUser("paulson").password("bond").roles("ADMIN","USER");
}
Так они будут подобраны в моем первоначальном сканировании? как мне их интегрировать тогда?
Спасибо!
Классы '@ Configuration' (java config) также являются' @ Components', поэтому, если вы уже используете компонентное сканирование, они будут автоматически загружены. Также имейте в виду, что на момент написания статьи «Весна 4» еще не окончательна! Что касается no-xml, вы можете/должны читать новые функции Spring и новую спецификацию сервлета (3.x), которая позволяет (почти) без xml вообще, если все сделано правильно. –