Class RelativePathPrefixHandler

  • All Implemented Interfaces:
    Serializable, IMarkupFilter, IComponentResolver, IClusterable

    public final class RelativePathPrefixHandler
    extends AbstractMarkupFilter
    implements IComponentResolver
    The purpose of this filter is to make all "href", "src" and "background" attributes found in the markup which contain a relative URL like "myDir/myPage.gif" actually resolve in the output HTML, by prefixing them with with an appropriate path to make the link work properly, even if the current page is being displayed at a mounted URL or whatever. It is applied to all non wicket component tags, except for auto-linked tags. It achieves this by being both an IMarkupFilter and IComponentResolver, and works similarly to the <wicket:message> code. For each tag, we look to see if the path in "href", "src" and "background" attributes is relative. If it is, we assume it's relative to the context path and we should prefix it appropriately so that it resolves correctly for the current request, even if that's for something that's not at the context root. This is done for ServletWebRequests by prepending with "../" tokens, for example.
    Author:
    Al Maw
    See Also:
    Serialized Form