Legacy Knowledge Base
Published Jun. 30, 2025

Servlet filter is not invoked, when using virtual hosts in the site configuration

Written By

Kanchan Bisht

How To articles are not official guidelines or officially supporteddocumentation. They are community-contributed content and may not alwaysreflect the latest updates to Liferay DXP. We welcome your feedback toimprove How to articles!

While we make every effort to ensure this Knowledge Base is accurate, itmay not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with anyfeedback or concerns.

Legacy Article

You are viewing an article from our legacy "FastTrack"publication program, made available for informational purposes. Articlesin this program were published without a requirement for independentediting or verification and are provided "as is" withoutguarantee.

Before using any information from this article, independently verify itssuitability for your situation and project.

Issue

  • The implementation of a servlet filter for friendly URLs is causing issues. It works as expected without Virtual host configuration, but when the virtual host is configured, a filter is not invoked.

Environment

  • Liferay DXP 7.4 update 23

Resolution

  • The root cause is VirtualHostFilter changing the URI from '/' to '/web/guest', causing the filter's URL pattern to no longer match.  As a result, it appears that the following needs to be added to the respective code:
    "url-pattern=/web/guest/*", "url-pattern=/"
    "before-filter=Virtual Host Filter"
    For example:
    @Component(
    immediate = true,
    property = {
    "before-filter=Virtual Host Filter", "servlet-context-name=",
    "servlet-filter-name=redirectLoggedUsersFilter",
    "url-pattern=/web/guest/*", "url-pattern=/"
    },
    service = Filter.class
    )

Additional Information

  • We have a separate channel called "Global Service Team" that can provide additional assistance with code level or any development area.
Did this article resolve your issue ?

Legacy Knowledge Base