in src/main/java/org/apache/sling/dynamicinclude/SyntheticResourceFilter.java [54:73]
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,
ServletException {
final SlingHttpServletRequest slingRequest = (SlingHttpServletRequest) request;
final String resourceType = getResourceTypeFromSuffix(slingRequest);
final Configuration config = configurationWhiteboard.getConfiguration(slingRequest, resourceType);
if (config == null || !config.hasIncludeSelector(slingRequest)
|| !ResourceUtil.isSyntheticResource(slingRequest.getResource())
|| (config.hasExtensionSet() && !config.hasExtension(slingRequest))) {
chain.doFilter(request, response);
return;
}
final RequestDispatcherOptions options = new RequestDispatcherOptions();
options.setForceResourceType(resourceType);
String resourcePath = StringUtils.substringBefore(slingRequest.getRequestPathInfo().getResourcePath(), ".");
Resource resource = slingRequest.getResourceResolver().resolve(resourcePath);
final RequestDispatcher dispatcher = slingRequest.getRequestDispatcher(resource, options);
dispatcher.forward(request, response);
}