﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-我的天空</title><link>http://www.blogjava.net/yyp/</link><description /><language>zh-cn</language><lastBuildDate>Mon, 13 Apr 2026 10:46:03 GMT</lastBuildDate><pubDate>Mon, 13 Apr 2026 10:46:03 GMT</pubDate><ttl>60</ttl><item><title>Tapestry中RenderBody的用法</title><link>http://www.blogjava.net/yyp/archive/2006/01/27/29319.html</link><dc:creator>yyp</dc:creator><author>yyp</author><pubDate>Fri, 27 Jan 2006 14:58:00 GMT</pubDate><guid>http://www.blogjava.net/yyp/archive/2006/01/27/29319.html</guid><wfw:comment>http://www.blogjava.net/yyp/comments/29319.html</wfw:comment><comments>http://www.blogjava.net/yyp/archive/2006/01/27/29319.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yyp/comments/commentRss/29319.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yyp/services/trackbacks/29319.html</trackback:ping><description><![CDATA[<P><FONT size=2>在做一个网站时，我们通常要做一个框架，以后的内容都在框架里展现，这就需要RednderBody了，如下： <BR><FONT color=#008000>//使用了Border这个直定义的组件（Border.html； Border.jwc； Border.java)</FONT><BR></FONT><FONT face="Courier New"><FONT size=2><FONT color=#0000ff>&lt;span jwcid="@Border"&gt;<BR>&lt;TABLE align=center border=0&gt;<BR>&nbsp;&nbsp; &lt;TR&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;TD&gt;这是嵌入页面&lt;/TD&gt;<BR>&nbsp;&nbsp; &lt;/TR&gt;<BR>&lt;/TABLE&gt;<BR>&lt;br/&gt;<BR>&lt;/span&gt;</FONT><BR></FONT></FONT><FONT size=2><FONT color=#008000><BR>//Border.html <BR></FONT>&lt;html jwcid="@Shell" title="RenderBody Example"&gt;<BR>&nbsp;&nbsp; &lt;body jwcid="@Body"&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;table width="100%" cellspacing="0" border="0"&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;tr&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td&gt;在这里开始&lt;/td&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;/tr&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;tr&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &lt;td&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;span jwcid="@RenderBody"&gt;Page content goes here.&lt;/span&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/td&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/tr&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;tr&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td&gt;在这里结束&lt;/td&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/tr&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp; &lt;/table&gt;<BR>&nbsp; &lt;/body&gt;<BR>&lt;/html&gt;<BR>最后的结果是:<BR>&lt;html jwcid="@Shell" title="RenderBody Example"&gt;<BR>&nbsp;&nbsp; &lt;body jwcid="@Body"&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;table width="100%" cellspacing="0" border="0"&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;tr&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td&gt;在这里开始&lt;/td&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;/tr&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;tr&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &lt;td&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT face="Courier New">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT></FONT><FONT face="Courier New"><FONT size=2><SPAN style="COLOR: #0000ff">&lt;TABLE align=center border=0&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TR&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TD&gt;这是嵌入页面&lt;/TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/TR&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/TABLE&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;br/&gt;</SPAN></FONT></FONT><FONT face=Tahoma><BR></FONT><FONT size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/td&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/tr&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;tr&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td&gt;在这里结束&lt;/td&gt;<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/tr&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp; &lt;/table&gt;<BR>&nbsp; &lt;/body&gt;<BR>&lt;/html&gt;<BR></FONT></P><img src ="http://www.blogjava.net/yyp/aggbug/29319.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yyp/" target="_blank">yyp</a> 2006-01-27 22:58 <a href="http://www.blogjava.net/yyp/archive/2006/01/27/29319.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>页面跳转类组件：ActionLink, DirectLink, ExternalLink, GenericLink, ServiceLink</title><link>http://www.blogjava.net/yyp/archive/2006/01/27/29316.html</link><dc:creator>yyp</dc:creator><author>yyp</author><pubDate>Fri, 27 Jan 2006 14:25:00 GMT</pubDate><guid>http://www.blogjava.net/yyp/archive/2006/01/27/29316.html</guid><wfw:comment>http://www.blogjava.net/yyp/comments/29316.html</wfw:comment><comments>http://www.blogjava.net/yyp/archive/2006/01/27/29316.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/yyp/comments/commentRss/29316.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yyp/services/trackbacks/29316.html</trackback:ping><description><![CDATA[<P class=cjk style="PAGE-BREAK-BEFORE: auto; PAGE-BREAK-AFTER: auto; TEXT-INDENT: 0cm; LINE-HEIGHT: 100%" align=left><FONT size=2><STRONG><FONT face="Times New Roman, serif">ActionLink</FONT><FONT face="Lucida Sans Unicode">组件</FONT></STRONG></FONT></P></LI>
<OL><FONT size=2></FONT></OL>
<P class=cjk style="PAGE-BREAK-BEFORE: auto; PAGE-BREAK-AFTER: auto; TEXT-INDENT: 0cm; LINE-HEIGHT: 100%" align=left><FONT size=2><FONT face=宋体>页面响应时，创建了一个链接。如果触发了链接时，组件</FONT><FONT face=宋体>ActionLink</FONT><FONT face=宋体>得到一个监听器（通过调用方法</FONT><FONT face=宋体>actionTriggered()</FONT><FONT face=宋体>）。<BR><BR></FONT></FONT><FONT size=2><STRONG>DirectLink组件</STRONG></FONT></P>
<P class=cjk><FONT size=2><FONT face="宋体, sans-serif"><FONT color=#000000>DirectLink</FONT></FONT><FONT face="宋体, sans-serif"><FONT color=#000000>组件涉及到</FONT></FONT><FONT face="宋体, sans-serif"><FONT color=#000000>session</FONT></FONT><FONT face="宋体, sans-serif"><FONT color=#000000>，与</FONT></FONT><FONT face="宋体, sans-serif"><FONT color=#000000>ExternalLink</FONT></FONT><FONT face="宋体, sans-serif"><FONT color=#000000>组件的区别有两个：<BR>&nbsp; </FONT></FONT></FONT><FONT color=#000000><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">第一： </FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">DirectLink</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">涉及</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">session</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">，</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">DirectLink</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">拥有一个</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">boolean</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">类型的</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">stateful</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">参数来选择</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">stateful</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">或</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">stateless</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">，该参数默认为</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">true</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">，即</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">stateful</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">。而</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">ExternalLink</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">却不涉及</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">session</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">，</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">ExternalLink</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">仅仅是</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">stateless</FONT></FONT><FONT style="FONT-SIZE: 10pt"><FONT face="宋体, sans-serif">，不能够选择。 <BR>&nbsp; </FONT></FONT></FONT><FONT color=#000000><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face=SimSun><FONT face="宋体, sans-serif" size=2>第二：非常重要的是，</FONT></FONT></SPAN></SPAN></FONT><FONT size=2><FONT face="Times New Roman, serif"><SPAN lang=en-US><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif">DirectLink</FONT></FONT></SPAN></SPAN></SPAN></FONT><FONT face=SimSun><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif">与</FONT></FONT></SPAN></SPAN></FONT><FONT face="Times New Roman, serif"><SPAN lang=en-US><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif">ExternalLink</FONT></FONT></SPAN></SPAN></SPAN></FONT><FONT face=SimSun><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif">参数传递方式不一样。</FONT></FONT></SPAN></SPAN></FONT><FONT face="Times New Roman, serif"><SPAN lang=en-US><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif">DirectLink</FONT></FONT></SPAN></SPAN></SPAN></FONT><FONT face=SimSun><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif">通过</FONT></FONT></SPAN></SPAN></FONT><FONT face="Times New Roman, serif"><SPAN lang=en-US><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif"><STRONG>listener</STRONG></FONT></FONT></SPAN></SPAN></SPAN></FONT><FONT face=SimSun><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif">监听方法将参数“扔”给下一个页面。而</FONT></FONT></SPAN></SPAN></FONT><FONT face="Times New Roman, serif"><SPAN lang=en-US><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif">ExternalLink</FONT></FONT></SPAN></SPAN></SPAN></FONT><FONT face=SimSun><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif">通过在下一个页面实现</FONT></FONT></SPAN></SPAN></FONT><FONT face="Times New Roman, serif"><SPAN lang=en-US><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif"><B>IExternalPage</B></FONT></FONT></SPAN></SPAN></SPAN></FONT><FONT face=SimSun><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif"><SPAN>接口以及</SPAN></FONT></FONT></SPAN></SPAN></FONT><FONT face="Times New Roman, serif"><SPAN lang=en-US><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif"><B>activateExternalPage</B></FONT></FONT></SPAN></SPAN></SPAN></FONT><FONT face=SimSun><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT color=#000000><FONT face="宋体, sans-serif"><SPAN>方法“接收”参数。</SPAN></FONT><SPAN><FONT style="FONT-SIZE: 10pt"><FONT face="SimSun, SimSun">&nbsp;<BR></FONT></FONT></SPAN></FONT></SPAN></SPAN></FONT></FONT></FONT><FONT size=2><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif">&nbsp; 为了实现分页功能，我们使用</FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif">DirectLink</FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif">组件实现。在下面的例子<FONT color=#000000>，每个页面我们只显示</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif"><FONT color=#000000>10</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif"><FONT color=#000000>条数据，那么</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif"><FONT color=#000000>HQL</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif"><FONT color=#000000>就只从数据库中查询出</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif"><FONT color=#000000>10</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif"><FONT color=#000000>条数据。对于页面来说，就需要实现“下一页”（或“上一页”）页面跳转，以及向我们的业务逻辑层方法传递分页参数（即当前页码，以及每页显示数据数）。<BR>请看对应的</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif"><FONT color=#000000>HTML</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif"><FONT color=#000000>文件中相关代码：&nbsp;<BR></FONT></FONT></FONT></FONT><FONT size=2><FONT color=#2a00ff>&nbsp;&nbsp;&nbsp;&lt;span jwcid="@Conditional" condition="ognl:firstDisable"&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT><FONT size=2><FONT color=#2a00ff>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;span jwcid="first"&gt;</FONT><FONT face="宋体, sans-serif"><FONT color=#000000>首页</FONT></FONT><FONT color=#2a00ff>&lt;/span&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT><FONT size=2><FONT color=#2a00ff>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;span jwcid="previous"&gt;</FONT><FONT face="宋体, sans-serif"><FONT color=#000000>上一页</FONT></FONT><FONT color=#2a00ff>&lt;/span&gt;</FONT><FONT color=#000000>&nbsp;<BR>&nbsp;&nbsp;&nbsp;</FONT></FONT><FONT size=2><FONT color=#2a00ff>&lt;/span&gt;</FONT><FONT color=#000000>&nbsp;<BR>&nbsp;&nbsp;&nbsp;</FONT></FONT><FONT size=2><FONT color=#000000><FONT face="宋体, sans-serif">第 </FONT></FONT><FONT color=#2a00ff>&lt;span jwcid="@Insert" value="ognl:pageNo" /&gt;</FONT><FONT color=#000000><FONT face="宋体, sans-serif"> </FONT><FONT face="宋体, sans-serif">页</FONT>&nbsp;<BR>&nbsp;&nbsp;&nbsp;</FONT></FONT><FONT size=2><FONT color=#2a00ff>&lt;span jwcid="@Conditional" condition="ognl:lastDisable"&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT><FONT size=2><FONT color=#2a00ff>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;span jwcid="next"&gt;</FONT><FONT face="宋体, sans-serif"><FONT color=#000000>下一页</FONT></FONT><FONT color=#2a00ff>&lt;/span&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT><FONT size=2><FONT color=#2a00ff>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;span jwcid="last"&gt;</FONT><FONT face="宋体, sans-serif"><FONT color=#000000>尾页</FONT></FONT><FONT color=#2a00ff>&lt;/span&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT><FONT size=2><FONT color=#2a00ff>&nbsp;&nbsp;&nbsp;&lt;/span&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT><FONT size=2><FONT color=#000000><FONT face="宋体, sans-serif">&nbsp;共</FONT> </FONT><FONT color=#2a00ff>&lt;span jwcid="@Insert" value="ognl:total" /&gt;</FONT><FONT color=#000000><FONT face="宋体, sans-serif"> </FONT><FONT face="宋体, sans-serif">页</FONT> <BR></FONT></FONT><FONT size=2><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">在</SPAN></SPAN></SPAN><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">page</SPAN></SPAN></SPAN><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">文件中声明相关组件：&nbsp;<BR>&nbsp;&nbsp; </SPAN></SPAN></SPAN></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&lt;component</FONT><FONT color=#000000> </FONT><FONT color=#007f00>id</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"first"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>type</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"DirectLink"</FONT><FONT color=#7f007f>&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&nbsp;&nbsp;&lt;binding</FONT><FONT color=#000000> </FONT><FONT color=#007f00>name</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"listener"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>expression</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"listeners.changePage"</FONT><FONT color=#7f007f>/&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&nbsp;&nbsp;&lt;binding</FONT><FONT color=#000000> </FONT><FONT color=#007f00>name</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"parameters"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>expression</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"new java.lang.Object[]{first,</FONT></FONT></FONT><FONT color=#0000ff><FONT face="Courier New"><FONT size=2>maxResult}"<FONT color=#7f007f>/&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&lt;/component&gt;<BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&lt;component</FONT><FONT color=#000000> </FONT><FONT color=#007f00>id</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"previous"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>type</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"DirectLink"</FONT><FONT color=#7f007f>&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&nbsp;&nbsp;&lt;binding</FONT><FONT color=#000000> </FONT><FONT color=#007f00>name</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"listener"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>expression</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"listeners.changePage"</FONT><FONT color=#7f007f>/&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&nbsp;&nbsp;&lt;binding</FONT><FONT color=#000000> </FONT><FONT color=#007f00>name</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"parameters"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>expression</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"new java.lang.Object[]</FONT></FONT></FONT><FONT color=#0000ff><FONT face="Courier New"><FONT size=2>{previous, maxResult}"<FONT color=#7f007f>/&gt;</FONT><FONT color=#000000><BR></FONT></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&nbsp;&nbsp;&lt;binding</FONT><FONT color=#000000> </FONT><FONT color=#007f00>name</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"disabled"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>expression</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"previousDisable"</FONT><FONT color=#7f007f>/&gt;</FONT><FONT color=#000000> <BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&lt;/component&gt;</FONT><FONT color=#000000> <BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&lt;component</FONT><FONT color=#000000> </FONT><FONT color=#007f00>id</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"next"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>type</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"DirectLink"</FONT><FONT color=#7f007f>&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&nbsp;&nbsp;&lt;binding</FONT><FONT color=#000000> </FONT><FONT color=#007f00>name</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"listener"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>expression</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"listeners.changePage"</FONT><FONT color=#7f007f>/&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&nbsp;&nbsp;&lt;binding</FONT><FONT color=#000000> </FONT><FONT color=#007f00>name</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"parameters"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>expression</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"new java.lang.Object[]{next, </FONT></FONT></FONT><FONT color=#0000ff><FONT face="Courier New"><FONT size=2>maxResult}"<FONT color=#7f007f>/&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&nbsp;&nbsp;&lt;binding</FONT><FONT color=#000000> </FONT><FONT color=#007f00>name</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"disabled"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>expression</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"nextDisable"</FONT><FONT color=#7f007f>/&gt;</FONT><FONT color=#000000> <BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&lt;/component&gt;</FONT><FONT color=#000000> <BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&lt;component</FONT><FONT color=#000000> </FONT><FONT color=#007f00>id</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"last"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>type</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"DirectLink"</FONT><FONT color=#7f007f>&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&nbsp;&nbsp;&lt;binding</FONT><FONT color=#000000> </FONT><FONT color=#007f00>name</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"listener"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>expression</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"listeners.changePage"</FONT><FONT color=#7f007f>/&gt;</FONT><FONT color=#000000>&nbsp;<BR></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&nbsp;&nbsp;&lt;binding</FONT><FONT color=#000000> </FONT><FONT color=#007f00>name</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"parameters"</FONT><FONT color=#000000> </FONT><FONT color=#007f00>expression</FONT><FONT color=#000000>=</FONT><FONT color=#0000ff>"new java.lang.Object[]{last,</FONT></FONT></FONT><FONT color=#0000ff><FONT face="Courier New"><FONT size=2>maxResult}"<FONT color=#7f007f>/&gt;</FONT><FONT color=#000000> <BR></FONT></FONT></FONT></FONT><FONT face="Courier New"><FONT size=2><FONT color=#7f007f>&nbsp;&lt;/component&gt;</FONT><FONT color=#000000> <BR></FONT></FONT></FONT><FONT color=#000000><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none"><FONT face="宋体, sans-serif"><SPAN lang=en-US><SPAN><FONT size=2>&nbsp; DirectLink</FONT></SPAN></SPAN></SPAN></SPAN></FONT><FONT size=2><FONT face="宋体, sans-serif"><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">组件表现为一个</SPAN></SPAN></SPAN></FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">HTML<STRONG>&lt;a&gt;</STRONG></SPAN></SPAN></SPAN></SPAN></FONT><FONT face="宋体, sans-serif"><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">元素，用来提供一个</SPAN></SPAN></SPAN></FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">URL</SPAN></SPAN></SPAN></SPAN></FONT><FONT face="宋体, sans-serif"><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">，当用户点击时，触发页面中一个特定的监听方法。<BR></SPAN></SPAN></SPAN></FONT></FONT></FONT><FONT color=#000000><FONT size=2><FONT face="宋体, sans-serif"><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">&nbsp; 在实现分页页面跳转的四个组件里，都声明为同一个</SPAN></SPAN></SPAN></FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">listener</SPAN></SPAN></SPAN></SPAN></FONT><FONT face="宋体, sans-serif"><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">监听方法。请看相应</SPAN></SPAN></SPAN></FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">java</SPAN></SPAN></SPAN></SPAN></FONT><FONT face="宋体, sans-serif"><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">中的对应监听方法</SPAN></SPAN></SPAN></FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">changePage</SPAN></SPAN></SPAN></SPAN></FONT><FONT face="宋体, sans-serif"><SPAN><SPAN style="TEXT-DECORATION: none"><SPAN style="TEXT-DECORATION: none">的代码： <BR></SPAN></SPAN></SPAN></FONT></FONT></FONT><FONT size=2><B><FONT color=#7f0055>public</FONT></B> <B><FONT color=#7f0055>void</FONT></B> changePage(IRequestCycle cycle) {&nbsp;<BR>&nbsp;&nbsp;&nbsp;<FONT color=#008000>//Tapestry4.0已经deprecated了cycle.getListenerParameters()</FONT><BR></FONT><FONT color=#7f0055><B><FONT size=2>&nbsp;&nbsp;&nbsp;Object</FONT></FONT></B><FONT size=2>[] parameters = cycle.getServiceParameters();&nbsp;<BR></FONT><FONT size=2><FONT color=#008000>&nbsp;&nbsp;&nbsp;//获取当前页码</FONT>&nbsp;<BR></FONT><FONT color=#7f0055><B><FONT size=2>&nbsp;&nbsp;&nbsp;Integer</FONT></FONT></B><FONT size=2> ig1 = (<B><FONT color=#7f0055>Integer</FONT></B>) parameters[0];&nbsp;<BR></FONT><FONT color=#7f0055><B><FONT size=2>&nbsp;&nbsp;&nbsp;int</FONT></FONT></B><FONT size=2> i1 = ig1.intValue();&nbsp;<BR></FONT><FONT size=2>&nbsp;&nbsp;&nbsp;setPageNo(i1);&nbsp;<BR></FONT><FONT color=#008000 size=2>&nbsp;&nbsp;&nbsp;//获取每页最大显示数目&nbsp;<BR></FONT><FONT color=#7f0055><B><FONT size=2>&nbsp;&nbsp;&nbsp;Integer</FONT></FONT></B><FONT size=2> ig2 = (<B><FONT color=#7f0055>Integer</FONT></B>) parameters[1];&nbsp;<BR></FONT><FONT color=#7f0055><B><FONT size=2>&nbsp;&nbsp;&nbsp;int</FONT></FONT></B><FONT size=2> i2 = ig2.intValue();&nbsp;<BR></FONT><FONT size=2>&nbsp;&nbsp;&nbsp;setMaxResult(i2); <BR></FONT><FONT size=2>}<BR></FONT><FONT color=#000000 size=2>&nbsp; 对于DirectLink，parameters参数的赋值方式于ExternalLink一样。这里获取的是一个数组，这个数组包含了两样信息：即将跳转的页码数，以及即将跳转的页面显示多少条数据。<BR>&nbsp; </FONT><SPAN style="TEXT-DECORATION: none"><FONT color=#000000 size=2>在前面，我们提到过，页面的java文件在完成页面表现所需数据的处理后，应该将其所有成员变量（页面property）还原为初始值。所以，“当前页码”以及“每页最大显示数据”这两个数据，我们将它们“保存”在页面上。当点击触发监听方法后，再由页面来提供下一个页面的“页码”和“每页最大显示数目”。然后再查询新的maxResult条数据。 <BR>&nbsp; </FONT></SPAN><FONT size=2>运行效果图如下：<BR></P>
<P class=cjk align=center><IMG alt="" hspace=0 src="file:///C:/Documents%20and%20Settings/Administrator/My%20Documents/photo1.gif" align=middle border=0></P>
<P class=cjk><BR></FONT><FONT size=2><STRONG>ExternalLink组件</STRONG></FONT></P>
<P class=cjk style="PAGE-BREAK-BEFORE: auto; PAGE-BREAK-AFTER: auto; TEXT-INDENT: 0cm; LINE-HEIGHT: 100%" align=left><FONT size=2><FONT color=#000000><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif">ExternalLink</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif"><FONT color=#000000>组件使用的是</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif"><FONT color=#000000>Tapestry</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif"><FONT color=#000000>的</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif"><FONT color=#000000>9</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif"><FONT color=#000000>种</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif"><FONT color=#000000>service</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif"><FONT color=#000000>中的</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif"><FONT color=#000000>external service</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif"><FONT color=#000000>。该组件</FONT>使用</FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif">External Service </FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif">创建继承了</FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif">IExternalPage</FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif">接口的一个链接。下面用一个例子说明它的用法。<BR></FONT></FONT></FONT><FONT face="Courier New"><FONT color=#2a00ff size=2>&lt;a jwcid="@ExternalLink" page="SuccessPage" parameters='ognl:new </FONT></FONT><FONT color=#2a00ff><FONT face="Courier New" size=2>java.lang.Object[]{"This is Success Page!", item.id}'</FONT></FONT><FONT color=#2a00ff><FONT face="Courier New" size=2>disabled="ognl:item.Isable"&gt;&lt;/a&gt;<BR></FONT></FONT><FONT color=#000000><FONT size=2><FONT face="宋体, sans-serif"><SPAN lang=en-US>page="SuccessPage"</SPAN></FONT><FONT face="宋体, sans-serif">这个参数的作用，就是指定了将要跳转的页面名称，</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>ExternalLink</SPAN></FONT><FONT face="宋体, sans-serif">组件的</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>page</SPAN></FONT><FONT face="宋体, sans-serif">参数根据配置文件</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>tapestry.application</SPAN></FONT><FONT face="宋体, sans-serif">文件中的配置找到对应的</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>page</SPAN></FONT><FONT face="宋体, sans-serif">文件： <BR></FONT></FONT></FONT><FONT color=#000000><FONT color=#7f007f><FONT face="Courier New" size=2><SPAN lang=en-US>&lt;page <FONT color=#007f00>name</FONT>=<FONT color=#0000ff>"SuccessPage"</FONT> <FONT color=#007f00>specification</FONT>-<FONT color=#007f00>path</FONT>=<FONT color=#0000ff>"/WEBINF/SuccessPage.page"</FONT><FONT color=#7f007f>/&gt;</FONT> <BR></SPAN></FONT></FONT></FONT><FONT color=#000000><FONT size=2><FONT face="宋体, sans-serif">然后在</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>SuccessPage.page</SPAN></FONT><FONT face="宋体, sans-serif">文件中，根据： <BR></FONT></FONT></FONT><FONT color=#000000><FONT color=#7f007f><FONT face="Courier New" size=2><SPAN lang=en-US>&lt;page-specification <FONT color=#007f00>class</FONT>=<FONT color=#0000ff>"com.ce.tapestry.Success"</FONT><FONT color=#7f007f>&gt;</FONT> <BR></SPAN></FONT></FONT></FONT><FONT color=#000000><FONT size=2><FONT face="宋体, sans-serif">找到对应的</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>Success.java</SPAN></FONT><FONT face="宋体, sans-serif">文件。在</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>Success.java</SPAN></FONT><FONT face="宋体, sans-serif">文件中，我们发现该类继承了</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>IExternalPage</SPAN></FONT><FONT face="宋体, sans-serif">接口：<BR></FONT></FONT></FONT><FONT color=#000000><FONT face="宋体, sans-serif"><SPAN lang=en-US><FONT size=2><FONT face="Courier New"><B><FONT color=#7f0055>public</FONT></B> <B><FONT color=#7f0055>abstract</FONT></B> <B><FONT color=#7f0055>class</FONT></B> Success <B><FONT color=#7f0055>implements</FONT></B> IExternalPage</FONT> <BR></FONT></SPAN></FONT></FONT><FONT color=#000000><FONT size=2><FONT face="宋体, sans-serif">以及实现了</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>activateExternalPage(Object[]</SPAN></FONT><FONT face="宋体, sans-serif">，</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>IRequestCycle)</SPAN></FONT><FONT face="宋体, sans-serif">方法。 <BR>&nbsp; </FONT></FONT></FONT><FONT color=#000000><FONT size=2><FONT face="宋体, sans-serif">对于</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>ExternalLink</SPAN></FONT><FONT face="宋体, sans-serif">组件，它必须继承</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>IExternalPage</SPAN></FONT><FONT face="宋体, sans-serif">接口，并实现</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>public void activateExternalPage(Object[] parameters,IRequestCycle cycle)</SPAN></FONT><FONT face="宋体, sans-serif">方法。该方法的参数</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>Object[]</SPAN></FONT><FONT face="宋体, sans-serif">来自该组件的</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>parameters</SPAN></FONT><FONT face="宋体, sans-serif">参数的值。 </FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>disabled</SPAN></FONT><FONT face="宋体, sans-serif">参数默认为</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>false</SPAN></FONT><FONT face="宋体, sans-serif">，当为</FONT><FONT face="宋体, sans-serif"><SPAN lang=en-US>true</SPAN></FONT><FONT face="宋体, sans-serif">时，不能被“点击”。<BR><BR></FONT></FONT></FONT><FONT size=2><STRONG>GenericLink组件</STRONG></FONT></P>
<P class=cjk style="PAGE-BREAK-BEFORE: auto; PAGE-BREAK-AFTER: auto; TEXT-INDENT: 0cm; LINE-HEIGHT: 100%" align=left><FONT size=2><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif">组件</FONT></FONT><FONT face="Times New Roman, serif"><FONT face="宋体, sans-serif">GenericLink</FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face="宋体, sans-serif">通常用于<STRONG>跳转到应用程序范围以外的链接</STRONG>。</FONT><FONT style="FONT-SIZE: 10pt"><FONT face="SimSun, SimSun"><FONT color=#000000> </FONT></FONT></FONT><FONT face=宋体>虽然</FONT></FONT><FONT face="Times New Roman, serif"><FONT face=宋体>GenericLink</FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face=宋体>可以用其他组件也能完成，但是</FONT></FONT><FONT face="Times New Roman, serif"><FONT face=宋体>GenericLink</FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face=宋体>更灵活：它可以设置为</FONT></FONT><FONT face="Times New Roman, serif"><FONT face=宋体>disabled</FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face=宋体>，象</FONT></FONT><FONT face="Times New Roman, serif"><FONT face=宋体>DirectLink</FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face=宋体>或者</FONT></FONT><FONT face="Times New Roman, serif"><FONT face=宋体>ActionLink</FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face=宋体>一样也能包含</FONT></FONT><FONT face="Times New Roman, serif"><FONT face=宋体>Rollover</FONT></FONT><FONT face="Lucida Sans Unicode"><FONT face=宋体>组件</FONT><FONT face=宋体>。<BR></FONT></FONT></FONT><FONT size=2>使用方法如下：<BR></FONT><FONT face="Courier New"><FONT color=#2a00ff size=2>&lt;a jwcid="@GenericLink" href="ognl:item.homepage" disabled="false"/&gt;<BR></FONT></FONT><FONT size=2><FONT face="宋体, sans-serif">Href</FONT><FONT face="宋体, sans-serif">参数：其作用很明显，就是提供一个链接地址。从上例可知：从</FONT><FONT face="宋体, sans-serif">item.homepage</FONT><FONT face="宋体, sans-serif">取出地址。<BR></FONT></FONT><FONT size=2><FONT face="宋体, sans-serif">disabled</FONT><FONT face="宋体, sans-serif">参数：该参数默认为</FONT><FONT face="宋体, sans-serif">false</FONT><FONT face="宋体, sans-serif">，当为</FONT><FONT face="宋体, sans-serif">true</FONT><FONT face="宋体, sans-serif">时，不能被“点击”。关于</FONT><FONT face="宋体, sans-serif">disabled</FONT><FONT face="宋体, sans-serif">参数，所有</FONT><FONT face="宋体, sans-serif">link</FONT><FONT face="宋体, sans-serif">类组件都有，作用均相同。 <BR><BR></FONT></FONT><FONT size=2><STRONG>PageLink组件</STRONG></FONT></P>
<P class=cjk style="PAGE-BREAK-BEFORE: auto; PAGE-BREAK-AFTER: auto; TEXT-INDENT: 0cm; LINE-HEIGHT: 100%" align=left><FONT size=2><FONT face="Times New Roman, serif"><FONT color=#000000><FONT face="宋体, sans-serif">PageLink</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT color=#000000><FONT face="宋体, sans-serif">组件非常简单，只需要在</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT color=#000000><FONT face="宋体, sans-serif">page</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT color=#000000><FONT face="宋体, sans-serif">参数中指明需要跳转到下一个页面的名字。相当于不带参数的</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT color=#000000><FONT face="宋体, sans-serif">ExternalLink</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT color=#000000><FONT face="宋体, sans-serif">。不过需要注意的是，</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT color=#000000><FONT face="宋体, sans-serif">PageLink</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT color=#000000><FONT face="宋体, sans-serif">和</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT color=#000000><FONT face="宋体, sans-serif">ExternalLink</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT color=#000000><FONT face="宋体, sans-serif">使用的不是同一个</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT color=#000000><FONT face="宋体, sans-serif">service</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT color=#000000><FONT face="宋体, sans-serif">，</FONT><FONT face=宋体>该组件使用了</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT color=#000000><FONT face=宋体>Page Service</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT color=#000000><FONT face=宋体>创建了另外一个链接</FONT></FONT></FONT><FONT face="Times New Roman, serif"><FONT color=#000000><FONT face=宋体>URL</FONT></FONT></FONT><FONT face="Lucida Sans Unicode"><FONT color=#000000><FONT face=宋体>。</FONT><FONT face="宋体, sans-serif"> <BR></FONT></FONT></FONT></FONT><FONT size=2>使用方法请见例子：<BR></FONT><FONT face="Courier New"><FONT color=#2a00ff size=2>&lt;a jwcid="@PageLink" page="Infos"&gt;&lt;img src="images/lyb.gif" width="50" </FONT></FONT><FONT color=#2a00ff><FONT face="Courier New" size=2>height="18" border="0"&gt;<BR></FONT></FONT><FONT color=#2a00ff><FONT face="Courier New" size=2>&lt;/a&gt;<BR></FONT></FONT><FONT size=2><FONT face=宋体>跳转到以下的</FONT><FONT face=宋体>URL</FONT><FONT face=宋体>：</FONT><FONT face=宋体>http://localhost:8080/hello/helloworld?<B><FONT color=#800000>service=page</FONT></B>/Upload<BR><BR></FONT></FONT><FONT size=2><STRONG>ServiceLink组件</STRONG></FONT></P>
<P class=cjk style="PAGE-BREAK-BEFORE: auto; PAGE-BREAK-AFTER: auto; TEXT-INDENT: 0cm; LINE-HEIGHT: 100%" align=left><FONT size=2><FONT face=宋体>创建任意不带有参数的引擎服务，</FONT><FONT face=宋体>ServiceLink</FONT><FONT face=宋体>组件用法与</FONT><FONT face=宋体>ActionLink</FONT><FONT face=宋体>，</FONT><FONT face=宋体>PageLink</FONT><FONT face=宋体>和</FONT><FONT face=宋体>DirectLink</FONT><FONT face=宋体>等组件相似，但常常与具体的应用服务一起使用。</FONT><FONT face=宋体>Service</FONT><FONT face=宋体>参数是要调用的</FONT><FONT face=宋体>EngineService</FONT><FONT face=宋体>对象的名称。（</FONT><FONT face=宋体>Body</FONT><FONT face=宋体>）</FONT></FONT></P>
<P class=cjk style="PAGE-BREAK-BEFORE: auto; PAGE-BREAK-AFTER: auto; TEXT-INDENT: 0cm; LINE-HEIGHT: 100%" align=left><FONT size=2><STRONG><FONT color=#ff0000><FONT face=宋体>以上的</FONT><FONT face=宋体>Link</FONT><FONT face=宋体>类组件，都需要在</FONT><FONT face=宋体>Body</FONT></FONT></STRONG><FONT face=宋体><STRONG><FONT color=#ff0000>组件范围内使用。</FONT></STRONG> </FONT></FONT></P>
<P class=cjk style="PAGE-BREAK-BEFORE: auto; PAGE-BREAK-AFTER: auto; TEXT-INDENT: 0cm; LINE-HEIGHT: 100%" align=left><FONT size=2><BR></FONT></P><img src ="http://www.blogjava.net/yyp/aggbug/29316.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yyp/" target="_blank">yyp</a> 2006-01-27 22:25 <a href="http://www.blogjava.net/yyp/archive/2006/01/27/29316.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>