在我的基于Spring的Web应用程序中,将其部署在JBoss Wildfly 8.1中,表单Validator
类接收表单bean,其中所有页面字段为空/ null。我的验证员
@Component
public class CampaignValidator implements Validator {
@Override
public void validate(Object target, Errors errors) {
Campaign campaign = (Campaign) target;
//campaign fields are empty/null
}
}
相同的代码在tc服务器和Wildfly 9.0 Alpha中没有任何错误地运行。我无法弄清楚我的配置有什么问题?我的应用程序安全性,
@Override
protected void _configure(HttpSecurity http) throws Exception {
AuthenticationSuccessHandler successHandler = new CustomAuthenticationSuccessHandler();
http.csrf()
.disable()
.authorizeRequests()
.antMatchers("/login")
.permitAll()
// .anyRequest().authenticated()
.and().formLogin().loginPage("/login")
.loginProcessingUrl("/authenticate")
.defaultSuccessUrl("/dashboard").failureUrl("/login?error")
.usernameParameter("username").passwordParameter("password")
.successHandler(successHandler).and().logout()
.logoutUrl("/logout").permitAll();
}
我的控制器
@Controller
@SessionAttributes("quickCampaignbean")
public class QuickCampaignController {
Validator @Autowired @Qualifier("quickCampaignValidator") validator;
@InitBinder
public void bind(WebDataBinder binder) {
binder.addValidators(validator);
}
@RequestMapping(value = "/quickcampaign", method = RequestMethod.GET)
public String loadCreatePage(@AuthenticationPrincipal LoginUser user,
ModelMap model) {
// load initial page values
}
@RequestMapping(value = "/quickcampaign", method = RequestMethod.POST)
public String createQuickCampaignGroup(
@Valid @ModelAttribute("quickCampaignbean") QuickCampaign quickCampaignbean,
BindingResult result, ModelMap model,
@AuthenticationPrincipal LoginUser user) throws Throwable {
// fetch the form values from the bean, populate service bean and
// call service, perhaps only if no errors
}
}
我无法找到为什么相同的应用程序在Wildfly 9.0,Fabris tc Server中没有任何问题,但在Wildfly 8.1中有错误?