Making URLs Friendly
2015-05-20 20:34
211 查看
如果你已经部署了一个Guestbook Portlet ,并且在页面上有一个add 按钮,点击这个add 按钮 ,
产生的超链接如下:
当你做了URL friendly之后,点击add 按钮,将会产生如下形式的链接:
这样是不是更友好一点,想要做到这种可读性比较高的链接,请遵循下面两步:
1.创建一个Friendly URL routes的xml格式的文件.
2.在liferay-portlet.xml文件中,添加三行代码.
一,定义Friendly URL routes
1. Create
2.Add this code to the file:
<?xml version="1.0"?>
<!DOCTYPE routes PUBLIC "-//Liferay//DTD Friendly URL Routes 6.2.0//EN"
"http://www.liferay.com/dtd/liferay-friendly-url-routes_6_2_0.dtd">
<routes>
<route>
<pattern>/add_entry</pattern>
<pre id="yui_patched_v3_11_0_1_1432125207462_412"><code id="yui_patched_v3_11_0_1_1432125207462_421"> <implicit-parameter name="p_p_lifecycle">0</implicit-parameter></code> <implicit-parameter name="mvcPath">/html/guestbook/edit_entry.jsp</implicit-parameter> </route> <route> <pattern>/{entryName}/view_entry</pattern> <implicit-parameter name="mvcPath">/html/guestbook/view_entry.jsp</implicit-parameter>
</route></routes>
在这个文件中,有两个标签是我们要注意的:
1. The
这个标签是用来定义占位符的,它是用来占位我们产生的URL中各个参数的值,简单来说,它就是用来放一些你URL中的一些参数,促使你的URL更具有可读性。
2.The
定义一些不需要产生的参数值,因为它在所有的URL中都是一样的
二,声明friendly URL mapping 给 portlet
在这个文件docroot/WEB-INF/liferay-portlet.xml里面添加:
<friendly-url-mapper-class>com.liferay.portal.kernel.portlet.DefaultFriendlyURLMapper</friendly-url-mapper-class>
<friendly-url-mapping>guestbook</friendly-url-mapping>
<friendly-url-routes>com/liferay/docs/guestbook/portlet/guestbook-friendly-url-routes.xml</friendly-url-routes>
测试如下:
当我们点击Add Entry的时候,请注意地址:
产生的超链接如下:
http://localhost:8080/web/guest/home?p_p_id=guestbook_WAR_guestbookportlet&p_p_lifecycle=0& p_p_state=normal&p_p_mode=view&p_p_col_id=column-2&p_p_col_pos=1&p_p_col_count=3 &_guestbook_WAR_guestbookportlet_mvcPath=%2Fhtml%2Fguestbook%2Fedit_guestbook.jsp[/code]
当你做了URL friendly之后,点击add 按钮,将会产生如下形式的链接:
http://localhost:8080/web/guest/home/-/guestbook/add_guestbook
这样是不是更友好一点,想要做到这种可读性比较高的链接,请遵循下面两步:
1.创建一个Friendly URL routes的xml格式的文件.
2.在liferay-portlet.xml文件中,添加三行代码.
一,定义Friendly URL routes
1. Create
com/liferay/docs/guestbook/portlet/guestbook-friendly-url-routes.xml.标准的方式是把这个文件放在和你的portlet同一个包下面.
2.Add this code to the file:
<?xml version="1.0"?>
<!DOCTYPE routes PUBLIC "-//Liferay//DTD Friendly URL Routes 6.2.0//EN"
"http://www.liferay.com/dtd/liferay-friendly-url-routes_6_2_0.dtd">
<routes>
<route>
<pattern>/add_entry</pattern>
<pre id="yui_patched_v3_11_0_1_1432125207462_412"><code id="yui_patched_v3_11_0_1_1432125207462_421"> <implicit-parameter name="p_p_lifecycle">0</implicit-parameter></code> <implicit-parameter name="mvcPath">/html/guestbook/edit_entry.jsp</implicit-parameter> </route> <route> <pattern>/{entryName}/view_entry</pattern> <implicit-parameter name="mvcPath">/html/guestbook/view_entry.jsp</implicit-parameter>
</route></routes>
在这个文件中,有两个标签是我们要注意的:
1. The
patterntag
这个标签是用来定义占位符的,它是用来占位我们产生的URL中各个参数的值,简单来说,它就是用来放一些你URL中的一些参数,促使你的URL更具有可读性。
2.The
implicit-parametertag
定义一些不需要产生的参数值,因为它在所有的URL中都是一样的
二,声明friendly URL mapping 给 portlet
在这个文件docroot/WEB-INF/liferay-portlet.xml里面添加:
<friendly-url-mapper-class>com.liferay.portal.kernel.portlet.DefaultFriendlyURLMapper</friendly-url-mapper-class>
<friendly-url-mapping>guestbook</friendly-url-mapping>
<friendly-url-routes>com/liferay/docs/guestbook/portlet/guestbook-friendly-url-routes.xml</friendly-url-routes>
测试如下:
当我们点击Add Entry的时候,请注意地址:
相关文章推荐
- Making machines with brains
- Flow Chart for Project Decision Making
- Making parts of Windows CE Device Driver Code Non-Pageable
- Making IT Happen: Critical Issues in IT Management
- Making the Browser Visit a URL:让浏览器访问一个applet URL
- Making plain binary files using a C compiler (i386+)
- chap 2 making and using objects
- Making Project Management easy as 1-2-3 简单进行项目管理
- Making your C++ code robust
- Android Custom UI: Making a Vintage Thermometer
- A Guide to Blocks & Grand Central Dispatch (and the Cocoa API's making use of them)
- The 11 JavaScript Mistakes you’re Making
- Artificial Sand Making Equipment Operation Taboos
- django python query Making queries -- 模型的数据库查询 good
- Making cloud using Houdini
- 做市商策略(Market Making Strategy)
- Desion Making Process
- ossec 安装 出现 Error Making os_dbd 错误
- google 最佳实践 - ListView优化 (Making ListView Scrolling Smooth)
- Making your own 3D list [定制3D listview]