如何在Liferay 7中将书签的URL设置为友好的URL?

问题描述

我正在尝试在jsf portlet中将书签的URL创建为友好的URL。我已参考此https://help.liferay.com/hc/en-us/articles/360017880652-Making-URLs-Friendlier。但是出现的书签仍然具有较长的url。这些是我所做的更改。

    My route.xml is 
        <routes>
        <route>
        <pattern>/views/{viewName}/id={my_id}</pattern>
            <generated-parameter name="_facesViewIdRender">/WEB-INF/views/{viewName}.xhtml</generated-parameter>
            <implicit-parameter name="p_p_lifecycle">0</implicit-parameter>
            <implicit-parameter name="p_p_mode">view</implicit-parameter>
            <implicit-parameter name="p_p_state">normal</implicit-parameter>
        </route>
         <route>
             <pattern></pattern>
             <implicit-parameter name="mvcRenderCommandName">/Bookmark/view</implicit-parameter>
             <implicit-parameter name="p_p_lifecycle">0</implicit-parameter>
             <implicit-parameter name="p_p_state">normal</implicit-parameter>
         </route>
         <route>
             <pattern>/maximized</pattern>
             <implicit-parameter name="mvcRenderCommandName">/Bookmark/view</implicit-parameter>
             <implicit-parameter name="p_p_lifecycle">0</implicit-parameter>
             <implicit-parameter name="p_p_state">maximized</implicit-parameter>
         </route>
         <route>
             <pattern>/{entryId:\d+}</pattern>
             <implicit-parameter name="categoryId"></implicit-parameter>
             <implicit-parameter name="mvcRenderCommandName">/Bookmark/view_entry</implicit-parameter>
             <implicit-parameter name="p_p_lifecycle">0</implicit-parameter>
             <implicit-parameter name="p_p_state">normal</implicit-parameter>
             <implicit-parameter name="tag"></implicit-parameter>
         </route>
    </routes>
    liferay portlet.xml::
    
    <portlet>
            <portlet-name>BookmarksPortlet</portlet-name>
            <icon>/resources/images/icon.png</icon>
            <friendly-url-mapper-class>com.liferay.portal.kernel.portlet.DefaultFriendlyURLMapper
            </friendly-url-mapper-class>
             <friendly-url-mapping>bookmarks-portlet</friendly-url-mapping>
             <friendly-url-routes>meta-inf/friendly-url-routes/routes.xml</friendly-url-routes>
            <instanceable>true</instanceable>
            <requires-namespaced-parameters>false</requires-namespaced-parameters>
            <ajaxable>false</ajaxable>
            <css-class-wrapper>bookmarks-portlet</css-class-wrapper>
        </portlet>
    And Friendly Url Mapper class::
    
    @Component(
             property = {
                     "com.liferay.portlet.friendly-url-routes=meta-inf/friendly-url-routes/routes.xml","javax.portlet.name= bookmark-portlet"
                     },service = FriendlyURLMapper.class
                     )
    public class FriendlyUrlMapper extends DefaultFriendlyURLMapper{
    
        @Override
        public String getMapping() {
            
            return _MAPPING;
        }
        private static final String _MAPPING = "Bookmark";
        
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)