省略 Liferay 友好的减号“-”URL

Omit the minus "-" in Liferay friendly URL

我为我的 abc-portlet 创建了一个友好的 URL 文件(该 portlet 使用 DefaultFriendlyURLMapper):

<routes>
    <route>
        <pattern>/{urlTitle}</pattern>
        <implicit-parameter name="p_p_lifecycle">0</implicit-parameter>
        <implicit-parameter name="struts_action">/view</implicit-parameter>
    </route>
</routes>

这很有效,但我想知道,是否有办法在友好 URL 中省略“-”? 即

http://.../page/-/abc/title

应该是

http://.../page/abc/title

我找到了解决方案。

您必须扩展 DefaultFriendlyURLMapper 并覆盖 isCheckMappingWithPrefix 方法。 (..当然还要将此 class 定义为您的 FriendlyURLMapper。)

public class FriendlyUrlWithoutMinus extends DefaultFriendlyURLMapper {

    @Override
    public boolean isCheckMappingWithPrefix() {
        return false;
    }

}