protected String [] splitPathInfo(ResolvedSiteMount resSiteMount, HttpServletRequest request, String characterEncoding) { String pathInfo = HstRequestUtils.getPathInfo(resSiteMount, request, characterEncoding);
@Override public void invoke(ValveContext context) throws ContainerException { try { MethodUtils.invokeStaticMethod(busFactoryClass, "setThreadDefaultBus", new Object[] { bus }); HttpServletRequest request = context.getServletRequest(); ResolvedSiteMount resolvedSiteMount = context.getRequestContext().getResolvedSiteMount(); String servletPath = resolvedSiteMount.getResolvedMountPath(); String pathInfo = HstRequestUtils.getPathInfo(resolvedSiteMount, request); HttpServletRequest adjustedRequest = new PathsAdjustedHttpServletRequestWrapper(context.getServletRequest(), servletPath, pathInfo); MethodUtils.invokeMethod(servletController, "invoke", new Object[] { adjustedRequest, context.getServletResponse() }); } catch (Exception e) { if (log.isDebugEnabled()) { log.error("Failed to invoke jaxrs service.", e); } else { log.error("Failed to invoke jaxrs service. {}", e.toString()); } } finally { try { MethodUtils.invokeStaticMethod(busFactoryClass, "setThreadDefaultBus", new Object[] { null }); } catch (Exception ignore) { } } }