diff --git a/doubleview-spring-web/src/main/java/io/emeraldpay/doubleview/spring/web/DoubleView.java b/doubleview-spring-web/src/main/java/io/emeraldpay/doubleview/spring/web/DoubleView.java index 6d9f3cb..7651a4f 100644 --- a/doubleview-spring-web/src/main/java/io/emeraldpay/doubleview/spring/web/DoubleView.java +++ b/doubleview-spring-web/src/main/java/io/emeraldpay/doubleview/spring/web/DoubleView.java @@ -1,6 +1,7 @@ package io.emeraldpay.doubleview.spring.web; import io.emeraldpay.doubleview.DoubleViewRenderer; +import jakarta.servlet.RequestDispatcher; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import org.springframework.http.MediaType; @@ -20,13 +21,18 @@ public DoubleView(DoubleViewRenderer renderer, String componentName) { @Override public String getContentType() { - return MediaType.TEXT_HTML.getType(); + return MediaType.TEXT_HTML_VALUE; } @Override public void render(Map model, HttpServletRequest request, HttpServletResponse response) throws Exception { String rendered = renderer.render(componentName, (Map) model); - response.setStatus(200); + Object status = request.getAttribute(RequestDispatcher.ERROR_STATUS_CODE); + if (status != null && status instanceof Integer) { + response.setStatus((int) status); + } else { + response.setStatus(200); + } response.getOutputStream().write(rendered.getBytes()); }