This is an automated email from the ASF dual-hosted git repository. deepak pushed a commit to branch release18.12 in repository https://gitbox.apache.org/repos/asf/ofbiz-framework.git
The following commit(s) were added to refs/heads/release18.12 by this push: new 8b38d77a29 Corrected override view condition if overrideViewUri is null then allowDirectViewRendering was set to false and condition breaks the flow. Also fixed the resolveURI test case 8b38d77a29 is described below commit 8b38d77a29d0b1905b5995bed74b14173a186d3d Author: Deepak Dixit <dee...@apache.org> AuthorDate: Sat Jun 15 11:26:42 2024 +0530 Corrected override view condition if overrideViewUri is null then allowDirectViewRendering was set to false and condition breaks the flow. Also fixed the resolveURI test case --- .../ofbiz/webapp/control/ConfigXMLReader.java | 23 +++++++++++++++++++--- .../ofbiz/webapp/control/RequestHandler.java | 6 +++--- .../ofbiz/webapp/control/RequestHandlerTests.java | 2 +- 3 files changed, 24 insertions(+), 7 deletions(-) diff --git a/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/ConfigXMLReader.java b/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/ConfigXMLReader.java index cb15c385b4..11f3c498c8 100644 --- a/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/ConfigXMLReader.java +++ b/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/ConfigXMLReader.java @@ -573,9 +573,26 @@ public class ConfigXMLReader { public String strictTransportSecurity; public String description; public boolean noCache = false; - public boolean allowDirectViewRendering = false; - public boolean directViewRenderingWithAuth = false; - + private boolean allowDirectViewRendering = false; + private boolean directViewRenderingWithAuth = false; + + /** + * allow direct view rendering boolean + * + * @return the boolean + */ + public boolean isAllowDirectViewRendering() { + return this.allowDirectViewRendering; + } + + /** + * direct view rendering with authentication boolean + * + * @return the boolean + */ + public boolean isDirectViewRenderingWithAuth() { + return this.directViewRenderingWithAuth; + } public ViewMap(Element viewMapElement) { this.name = viewMapElement.getAttribute("name"); this.page = viewMapElement.getAttribute("page"); diff --git a/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/RequestHandler.java b/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/RequestHandler.java index 98f205aeec..21c1461dfe 100644 --- a/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/RequestHandler.java +++ b/framework/webapp/src/main/java/org/apache/ofbiz/webapp/control/RequestHandler.java @@ -203,11 +203,11 @@ public class RequestHandler { // Ensure that overridden view exists and direct view rendering is allowed. if (UtilValidate.isNotEmpty(overrideViewUri)) { ConfigXMLReader.ViewMap overrideViewMap = ccfg.getViewMapMap().get(overrideViewUri); - allowDirectViewRendering = (overrideViewMap != null && overrideViewMap.allowDirectViewRendering); + allowDirectViewRendering = (overrideViewMap != null && overrideViewMap.isAllowDirectViewRendering()); } if (requestMapMap.containsKey(requestUri) // Ensure that overridden view exists. - && (allowDirectViewRendering + && (overrideViewUri == null || allowDirectViewRendering || ("SOAPService".equals(requestUri) && "wsdl".equalsIgnoreCase(req.getQueryString())))){ rmaps = requestMapMap.get(requestUri); } else if (defaultRequest != null) { @@ -486,7 +486,7 @@ public class RequestHandler { // Check if direct view rendering requires authentication. if (UtilValidate.isNotEmpty(overrideViewUri)) { ConfigXMLReader.ViewMap overrideViewMap = ccfg.getViewMapMap().get(overrideViewUri); - directViewRenderingWithAuth = (overrideViewMap != null && overrideViewMap.directViewRenderingWithAuth); + directViewRenderingWithAuth = (overrideViewMap != null && overrideViewMap.isDirectViewRenderingWithAuth()); } // Perform security check. if (requestMap.securityAuth || directViewRenderingWithAuth) { diff --git a/framework/webapp/src/test/java/org/apache/ofbiz/webapp/control/RequestHandlerTests.java b/framework/webapp/src/test/java/org/apache/ofbiz/webapp/control/RequestHandlerTests.java index 812756fb62..b7bf4a1456 100644 --- a/framework/webapp/src/test/java/org/apache/ofbiz/webapp/control/RequestHandlerTests.java +++ b/framework/webapp/src/test/java/org/apache/ofbiz/webapp/control/RequestHandlerTests.java @@ -132,7 +132,7 @@ public class RequestHandlerTests { when(req.getPathInfo()).thenReturn("/foo/baz"); when(ccfg.getDefaultRequest()).thenReturn("bar"); - when(viewMaps.get("baz").allowDirectViewRendering).thenReturn(true); + when(viewMaps.get("baz").isAllowDirectViewRendering()).thenReturn(true); assertThat(RequestHandler.resolveURI(ccfg, req), hasItem(foo)); }