Skip to content

Commit

Permalink
Merge pull request #437 from Thisara-Welmilla/resolve-absolute-path
Browse files Browse the repository at this point in the history
Resolve absolute path for admin console.
  • Loading branch information
Thisara-Welmilla authored Feb 8, 2025
2 parents 6b3803b + 99684d3 commit 5f59db6
Show file tree
Hide file tree
Showing 5 changed files with 73 additions and 37 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
import org.wso2.carbon.CarbonException;
import org.wso2.carbon.registry.extensions.ui.clients.ResourceServiceClient;
import org.wso2.carbon.ui.CarbonUIMessage;
import org.wso2.carbon.ui.CarbonUIUtil;
import org.wso2.carbon.ui.transports.fileupload.AbstractFileUploadExecutor;
import org.wso2.carbon.utils.FileItemData;
import org.wso2.carbon.utils.ServerConstants;
Expand Down Expand Up @@ -53,8 +54,8 @@ public boolean execute(HttpServletRequest request, HttpServletResponse response)
log.error(msg);

CarbonUIMessage.sendCarbonUIMessage(msg, CarbonUIMessage.ERROR, request);
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/admin/error.jsp");
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/admin/error.jsp", request));

return false;
}
Expand Down Expand Up @@ -89,9 +90,11 @@ public boolean execute(HttpServletRequest request, HttpServletResponse response)
String msg = "Successfully uploaded extension.";
if (redirect == null) {
CarbonUIMessage.sendCarbonUIMessage(msg, CarbonUIMessage.INFO, request);
response.sendRedirect(getContextRoot(request) + "/" + webContext + "/admin/index.jsp");
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/admin/index.jsp", request));
} else {
response.sendRedirect(getContextRoot(request) + "/" + webContext + "/" + redirect);
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/" + redirect, request));
}
return true;

Expand All @@ -102,12 +105,12 @@ public boolean execute(HttpServletRequest request, HttpServletResponse response)

if (errorRedirect == null) {
CarbonUIMessage.sendCarbonUIMessage(msg, CarbonUIMessage.ERROR, request);
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/admin/error.jsp");
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/admin/error.jsp", request));
} else {
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/" + errorRedirect + (errorRedirect.indexOf("?")
== -1 ? "?" : "&") + "msg=" + URLEncoder.encode(msg, "UTF-8"));
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/" + errorRedirect + (errorRedirect.indexOf("?")
== -1 ? "?" : "&") + "msg=" + URLEncoder.encode(msg, "UTF-8"), request));
}
return false;
} catch (RuntimeException e) {
Expand All @@ -132,12 +135,12 @@ private void buildUIError(HttpServletRequest request, HttpServletResponse respon
throws IOException {
CarbonUIMessage.sendCarbonUIMessage(msg, CarbonUIMessage.ERROR, request);
if (errorRedirect == null) {
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/admin/error.jsp");
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/admin/error.jsp", request));
} else {
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/" + errorRedirect + (errorRedirect.indexOf("?")
== -1 ? "?" : "&") + "msg=" + URLEncoder.encode(msg, "UTF-8"));
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/" + errorRedirect + (errorRedirect.indexOf("?")
== -1 ? "?" : "&") + "msg=" + URLEncoder.encode(msg, "UTF-8"), request));
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
ProfilesAdminServiceClient client = new ProfilesAdminServiceClient(config,session);
if(username != null && client.putUserProfile(username)){
String resourcePagePath = "../resources/resource.jsp?region=region3&item=resource_browser_menu&viewType=std&path=/_system/config/users";
response.sendRedirect(resourcePagePath);
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL("", resourcePagePath, request));
return;
}
else{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
import org.wso2.carbon.server.admin.ui.ServerAdminClient;
import org.wso2.carbon.registry.core.RegistryConstants;
import org.wso2.carbon.registry.resource.ui.clients.ResourceServiceClient;
import org.wso2.carbon.ui.CarbonUIUtil;
import org.wso2.carbon.ui.transports.fileupload.AbstractFileUploadExecutor;
import org.wso2.carbon.ui.CarbonUIMessage;
import org.wso2.carbon.ui.transports.fileupload.FileSizeLimitExceededException;
Expand Down Expand Up @@ -62,8 +63,9 @@ public boolean execute(HttpServletRequest request, HttpServletResponse response)
log.error(msg);

CarbonUIMessage.sendCarbonUIMessage(msg, CarbonUIMessage.ERROR, request);
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/resources/resource.jsp?region=region3&item=resource_browser_menu&errorMsg=" + msg);
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/resources/resource.jsp?region=region3&item=resource_browser" +
"_menu&errorMsg=" + msg, request));

return false;
}
Expand All @@ -80,14 +82,15 @@ public boolean execute(HttpServletRequest request, HttpServletResponse response)
String msg = "File upload failed. " + errorAttribute;
if (errorRedirect == null) {
CarbonUIMessage.sendCarbonUIMessage(msg, CarbonUIMessage.ERROR, request);
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/resources/resource.jsp?region=region3&item=resource_browser_menu&errorMsg=" + msg);
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request),
"/" + webContext + "/resources/resource.jsp?region=region3&item" +
"=resource_browser_menu&errorMsg=" + msg, request));
} else {
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/" + errorRedirect +
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request),
"/" + webContext + "/" + errorRedirect +
(errorRedirect.indexOf("?")
== -1 ? "?" : "&") + "msg=" +
URLEncoder.encode(msg, "UTF-8"));
URLEncoder.encode(msg, "UTF-8"), request));
}
return false;
}
Expand Down Expand Up @@ -185,10 +188,12 @@ public boolean execute(HttpServletRequest request, HttpServletResponse response)
} else {
parentPath = URLEncoder.encode(parentPath, "UTF-8");
}
response.sendRedirect(getContextRoot(request) + "/" + webContext + "/resources/resource.jsp?region=region3&item=resource_browser_menu&path=" +
parentPath);
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/resources/resource.jsp?region=region3&item=resource_browser_menu&path=" +
parentPath, request));
} else {
response.sendRedirect(getContextRoot(request) + "/" + webContext + "/" + redirect);
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/" + redirect, request));
}
return true;

Expand All @@ -198,12 +203,13 @@ public boolean execute(HttpServletRequest request, HttpServletResponse response)
log.error("File upload failed. ", e);
if (errorRedirect == null) {
CarbonUIMessage.sendCarbonUIMessage(msg, CarbonUIMessage.ERROR, request);
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/resources/resource.jsp?region=region3&item=resource_browser_menu&errorMsg=" + msg);
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/resources/resource.jsp?region=region3&item=resource_browser_" +
"menu&errorMsg=" + msg, request));
} else {
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/" + errorRedirect + (errorRedirect.indexOf("?")
== -1 ? "?" : "&") + "msg=" + URLEncoder.encode(msg, "UTF-8"));
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/" + errorRedirect + (errorRedirect.indexOf("?")
== -1 ? "?" : "&") + "msg=" + URLEncoder.encode(msg, "UTF-8"), request));
}
return false;
} catch (RuntimeException e) {
Expand Down Expand Up @@ -238,12 +244,13 @@ private void buildUIError(HttpServletRequest request, HttpServletResponse respon
throws IOException {
CarbonUIMessage.sendCarbonUIMessage(msg, CarbonUIMessage.ERROR, request);
if (errorRedirect == null) {
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/resources/resource.jsp?region=region3&item=resource_browser_menu&errorMsg=" + msg);
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/resources/resource.jsp?region=region3&item=resource_browser" +
"_menu&errorMsg=" + msg, request));
} else {
response.sendRedirect(
getContextRoot(request) + "/" + webContext + "/" + errorRedirect + (errorRedirect.indexOf("?")
== -1 ? "?" : "&") + "msg=" + URLEncoder.encode(msg, "UTF-8"));
response.sendRedirect(CarbonUIUtil.resolveAdminConsoleBaseURL(getContextRoot(request), "/" +
webContext + "/" + errorRedirect + (errorRedirect.indexOf("?")
== -1 ? "?" : "&") + "msg=" + URLEncoder.encode(msg, "UTF-8"), request));
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ public class ClaimTestUtil {
public static final String CLAIM_URI6 = "http://wso2.org/claims/lastname";
public static final String CLAIM_URI7 = "http://wso2.org/claims/nickname";
public static final String CLAIM_URI8 = "http://wso2.org/claims/displayname";
public static final String CLAIM_URI9 = "http://wso2.org/claims/userid";
public static final String CLAIM_URI10 = "http://wso2.org/claims/username";
public static final String HOME_PROFILE_NAME = "HomeProfile";

public static Map<String, ClaimMapping> getClaimTestData() {
Expand Down Expand Up @@ -142,6 +144,30 @@ public static Map<String, ClaimMapping> getClaimTestData() {
cm8.setMappedAttribute("attr8");
claims.put(CLAIM_URI8, cm8);

Claim claim9 = new Claim();
claim9.setClaimUri(CLAIM_URI9);
claim9.setDescription("Unique ID of the user");
claim9.setDialectURI("http://wso2.org/");
claim9.setDisplayTag("User ID");
claim9.setRequired(true);
claim9.setSupportedByDefault(true);
ClaimMapping cm9 = new ClaimMapping();
cm9.setClaim(claim9);
cm9.setMappedAttribute("scimId");
claims.put(CLAIM_URI9, cm9);

Claim claim10 = new Claim();
claim10.setClaimUri(CLAIM_URI10);
claim10.setDescription("Unique ID of the user");
claim10.setDialectURI("http://wso2.org/");
claim10.setDisplayTag("User ID");
claim10.setRequired(true);
claim10.setSupportedByDefault(true);
ClaimMapping cm10 = new ClaimMapping();
cm10.setClaim(claim10);
cm10.setMappedAttribute("scimId");
claims.put(CLAIM_URI10, cm10);

return claims;

}
Expand All @@ -157,4 +183,4 @@ public static Map<String, ProfileConfiguration> getProfileTestData() {
return map;
}

}
}
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1602,7 +1602,7 @@
<properties>
<!-- Carbon platform version comes here-->

<carbon.kernel.version>4.5.3</carbon.kernel.version>
<carbon.kernel.version>4.10.17</carbon.kernel.version>
<carbon.kernel.feature.version>${carbon.kernel.version}</carbon.kernel.feature.version>
<carbon.kernel.package.import.version.range>[4.5.0, 5.0.0)</carbon.kernel.package.import.version.range>

Expand Down

0 comments on commit 5f59db6

Please sign in to comment.