Приложением для одного вида просмотра vaadin 7.7.7, spring-boot 1.5 i проверить фрагмент uri https:/tld/#! Category-name-1 от пользователя и если категория есть показать детали и если неvaadin + spring boot: не может перейти на страницу с ошибкой по запросу
VaadinService.getCurrentResponse().sendError(404, "page not found!");
, но я получил сообщение об ошибке после обновления пружинного загрузки 1.5 и Vaadin 7.7.7 (с котом) поместить его:
Cannot forward to error page for request [/vaadinServlet/UIDL/] as the response has already been committed. As a result, the response may have the wrong status code. If your application is running on WebSphere Application Server you may be able to resolve this problem by setting com.ibm.ws.webcontainer.invokeFlushAfterService to false
Как я могу отправить HTTP страницы ошибок из Vaadin для пользователя?
ErrorPageCutomizer.java
@Component
public class ErrorPageCutomizer implements EmbeddedServletContainerCustomizer {
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
container.addErrorPages(new ErrorPage(HttpStatus.NOT_FOUND, "/error/404"));
container.addErrorPages(new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/error/500"));
}
}
RestController.java
import org.springframework.boot.autoconfigure.web.ErrorController;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class ErrorHandlingController implements ErrorController {
private static final String PATH = "/error";
@RequestMapping(value = PATH + "/404")
public String error404() {
return "<div style='font-weight:bold; margin-top:200px; text-align:center; font-size:160%;'>Page not found...<br><a href=\"https://tld\">to home</a></div>";
}
@RequestMapping(value = PATH + "/500")
public String error500() {
return "<div style='font-weight:bold; margin-top:200px; text-align:center; font-size:160%;'>500 Internal server error...</div>";
}
@Override
public String getErrorPath() {
return PATH;
}
}
Он не работает для Vaadin 8.0.5 и Spring boot 1.5.3 –