diff --git a/src/main/java/org/olat/commons/calendar/ICalServlet.java b/src/main/java/org/olat/commons/calendar/ICalServlet.java index bde343b33759982fd8ba9831737a775418e879bb..8bd448aa93306dc0d2cd920a9b5a29e14ea5c9d3 100644 --- a/src/main/java/org/olat/commons/calendar/ICalServlet.java +++ b/src/main/java/org/olat/commons/calendar/ICalServlet.java @@ -141,7 +141,14 @@ public class ICalServlet extends HttpServlet { private void getIcalDocument(String requestUrl, HttpServletResponse response) throws ValidationException, IOException { // get the individual path tokens - String pathInfo = requestUrl.replaceAll(".ics", ""); + String pathInfo; + int icsIndex = requestUrl.indexOf(".ics"); + if(icsIndex > 0) { + pathInfo = requestUrl.substring(0, icsIndex); + } else { + pathInfo = requestUrl; + } + String[] pathInfoTokens = pathInfo.split("/"); if(pathInfoTokens.length < 4) { response.sendError(HttpServletResponse.SC_BAD_REQUEST, requestUrl);