【问题标题】:Unable to use Liferay Freindly URL Mapper无法使用 Liferay 友好的 URL 映射器
【发布时间】:2013-08-16 00:09:30
【问题描述】:

我正在关注 Liferay 网站上的这份文档来工作 Map Firendly URL 映射

http://www.liferay.com/documentation/liferay-portal/6.1/development/-/ai/adding-friendly-url-mapping-to-the-portlet

我正在使用 Liferay 版本=6.1.0

在超链接导航期间,我得到了以下网址

http://localhost:8080/web/guest/what-we-do?p_p_id=sai_WAR_Saiportlet&
p_p_lifecycle=0&p_p_state=normal&p_p_mode=view&p_p_col_id=column-1
&_sai_WAR_Saiportlet_jspPage=%2Fhtml%2Fsai%2Fedit.jsp

要修改上述内容,我尝试使用 Friendly URL Mapper,并且我已经完成了以下方式

在 liferay-portlet.xml 文件中。

<portlet>
        <portlet-name>sai</portlet-name>
        <icon>/icon.png</icon>
         <friendly-url-mapper-class>com.liferay.portal.kernel.portlet.DefaultFriendlyURLMapper</friendly-url-mapper-class>
         <friendly-url-mapping>sai</friendly-url-mapping>
         <friendly-url-routes>com/test/sai-friendly-url-routes.xml</friendly-url-routes>
        <instanceable>false</instanceable>
        <header-portlet-css>/css/main.css</header-portlet-css>
        <footer-portlet-javascript>
            /js/main.js
        </footer-portlet-javascript>
        <css-class-wrapper>sai-portlet</css-class-wrapper>
    </portlet>

在里面创建了一个名为 sai-friendly-url-routes.xml 的新文件

D:\liferay-plugins-sdk-6.1.0-SNAPSHOT\portlets\Sai-portlet\docroot\WEB-INF\src\com\test\sai-friendly-url-routes.xml

sai-friendly-url-routes.xml里面的内容是

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE routes PUBLIC "-//Liferay//DTD Friendly URL Routes 6.1.0//EN" "http://www.liferay.com/dtd/liferay-friendly-url-routes_6_1_0.dtd">

<routes>
   <route>
      <pattern>/{mvcPathName}</pattern>
      <generated-parameter name="mvcPath">/{mvcPathName}.jsp</generated-parameter>
   </route>
</routes>

但我观察到网址没有变化

http://localhost:8080/web/guest/what-we-do?p_p_id=sai_WAR_Saiportlet&p_p_lifecycle=0&p_p_state=normal&p_p_mode=view&p_p_col_id=column-1&p_p_col_count=1&_sai_WAR_Saiportlet_jspPage=%2Fhtml%2Fsai%2Fedit.jsp

请让我知道我到底在哪里做错了。

【问题讨论】:

    标签: liferay-6


    【解决方案1】:

    您保留原来的值。也就是说,您将 {mvcPathName} 和“mvcPath”保持原样。

    生成友好 URL 时,它会从 URL 解析 mvcPath(即 edit.jsp 或 view.jsp),然后应用该模式,将 .../edit.jsp 替换为 .../edit。

    此示例适用于编辑 JSP。它适用于视图页面;但不是在单击 Save ... 时,这是我可以研究的。但是,如果您去编辑然后单击返回链接,则会显示视图 JSP 的友好 URL。

    我创建了一个票证来完成此示例,以便在单击保存时它也转到一个友好的 URL。当我们完成修复时,我将更新此部分。 谢谢。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-14
      • 2012-12-24
      • 2012-10-21
      • 2012-10-22
      • 2013-02-07
      • 2016-01-13
      • 2016-10-05
      • 2015-01-06
      相关资源
      最近更新 更多