<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="/xsl/rss.xsl" type="text/xsl" media="screen"?>
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:ppp="http://blog.sohu.com/rss/module/ppp/"
	>

	<channel>
		<title>燕子钨</title>
		<link>http://wangyi878750.blog.sohu.com/</link>
		<description><![CDATA[茫茫人海|茫茫网络|一个交点|OpenCms]]></description>
		<pubDate>Wed, 14 May 2008 00:23:30 +0800</pubDate>
		<generator>搜狐博客</generator>
		<ppp:ebi>4b68af3792</ppp:ebi>
		<image>
			<title>http://blog.sohu.com</title>
			<url>http://js.pp.sohu.com/ppp/blog/images/common/logo_150_60.gif</url>
			<link>http://blog.sohu.com/</link>
			<width>100</width>
			<height>43</height>
			<description>搜狐博客</description>
		</image>
		<item>
			<title>JSTL中&#60;c:set&#62;标签的用法</title>
			<link>http://wangyi878750.blog.sohu.com/87282528.html</link>
			<comments>http://wangyi878750.blog.sohu.com/87282528.html#comment</comments>
			<dc:creator>燕子钨</dc:creator>
			<pubDate>Wed, 14 May 2008 00:23:30 +0800</pubDate>
			<category>工作笔记</category>
			<guid>http://wangyi878750.blog.sohu.com/87282528.html</guid>
			<description><![CDATA[&lt;c:set&gt;标签有两种不同的属性设置：var和target。<br /><br />var&ldquo;版本&rdquo;用于设置作用域属性，target&ldquo;版本&rdquo;用于设置bean属性或Map值。<br /><br />这两个版本都有两种形式：有标签体和没有标签体。有标签体的只是放入值的另一种途径。<br /><br />★ var&ldquo;版本&rdquo;<br /><br />&nbsp;&nbsp; 1. &lt;c:set var=&quot;userLevel&quot; scope=&quot;session&quot; value=&quot;Cowboy&quot;/&gt; &nbsp;<br />&nbsp;&nbsp; 2.&nbsp; &nbsp;<br />&nbsp;&nbsp; 3. &lt;c:set var=&quot;fido&quot; value=&quot;${person.dog}&quot;/&gt; &nbsp;<br />&nbsp;&nbsp; 4.&nbsp; &nbsp;<br />&nbsp;&nbsp; 5. &lt;c:set var=&quot;user&quot; scope=&quot;session&quot;&gt; &nbsp;<br />&nbsp;&nbsp; 6.&nbsp;&nbsp;&nbsp; Sheriff, Bartender, Cowgirl&nbsp; &nbsp;<br />&nbsp;&nbsp; 7. &lt;/c:set&gt; &nbsp;<br /><br />如果&ldquo;value&rdquo;为null，&ldquo;var&rdquo;指定的属性将被删除！<br /><br />如果&ldquo;var&rdquo;指定的属性不存在，则会创建一个属性，但仅当&ldquo;value&rdquo;不为null时才会创建新属性。<br /><br />★ target&ldquo;版本&rdquo;<br /><br />&nbsp;&nbsp; 1. &lt;c:set target=&quot;${petMap}&quot; property=&quot;dogName&quot; value=&quot;Clover&quot; scope=&quot;session&quot;/&gt; &nbsp;<br />&nbsp;&nbsp; 2.&nbsp; &nbsp;<br />&nbsp;&nbsp; 3. &lt;c:set target=&quot;${person}&quot; property=&quot;name&quot;&gt; &nbsp;<br />&nbsp;&nbsp; 4.&nbsp;&nbsp;&nbsp; ${foo.name}&nbsp; &nbsp;<br />&nbsp;&nbsp; 5. &lt;/c:set&gt; &nbsp;<br /><br />如果&ldquo;target&rdquo;是一个Map，&ldquo;property&rdquo;指定的是该Map的一个键；如果&ldquo;target&rdquo;是一个bean，&ldquo;property&rdquo;指定的是该bean的一个成员字段。<br /><br />如果&ldquo;target&rdquo;表达式为null，容器会抛出一个异常。<br /><br />如果&ldquo;target&rdquo;表达式不是一个Map或bean，容器会抛出一个异常。<br /><br />如果&ldquo;target&rdquo;表达式是一个bean，但是这个bean没有与&ldquo;property&rdquo;匹配的成员字段，容器会抛出一个异常。<br /><br /><br /><br />]]></description>
		</item>
		    
		
		<item>
			<title>&#60;cms:include&#62; 标签的基本使用方法</title>
			<link>http://wangyi878750.blog.sohu.com/87276188.html</link>
			<comments>http://wangyi878750.blog.sohu.com/87276188.html#comment</comments>
			<dc:creator>燕子钨</dc:creator>
			<pubDate>Tue, 13 May 2008 23:07:08 +0800</pubDate>
			<category>工作笔记</category>
			<guid>http://wangyi878750.blog.sohu.com/87276188.html</guid>
			<description><![CDATA[<h3><code>&lt;cms:include&gt;</code> 标签的基本使用方法</h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [<a href="http://wangyi878750.blog.sohu.com/87276188.html" target="_blank">王毅原创，转载注明</a>]<br /><br />

<p>&lt;cms:include&gt;用于运行中从OpenCms VFS动态包含文件，包含的文件被当成一个请求的附加参数。</p>
					<p>使用一下一些属性来标识要包含的对象文件名称:</p>
					<ul><li><code>page</code> 
						</li><li><code>property</code> 
						</li><li><code>attribute</code> </li></ul>
					<p>如果这些属性都没有设定, <code>&lt;cms:include&gt;</code> 
					标签的标签体将使用别的方法得到文件名称.</p>
					<p><em>注意: 如果不能通过上诉方法得到包含的文件名称, 就会调用 当前 <code>
					CmsRequestContext</code> <code>
					的
					getUri()</code> 方法返回名称.</em> </p>
					<p><strong>属性:</strong> </p>
					<p><u>page (file)</u>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
					<p>&nbsp;&nbsp;&nbsp; 这个属性的值指明要包含的文件的 name 。属性名称 &quot;page&quot; 
					和 &quot;file&quot; 在这里是等价的.&nbsp; </p>
					<p><u>property</u> </p>
					<p>&nbsp;&nbsp;&nbsp; 这个属性的值指明要包含的指定 JSP 文件的某个属性值作为文件名称.</p>
					<u>attribute</u> 
					<p>&nbsp;&nbsp;&nbsp; 这个属性的值是当前页面请求的参数列表的一个参数键名称的值. 
							在使用前必须通过程序来设定这个键值对.</p>
					<p><u>element</u>&nbsp; </p>
					<p>&nbsp;&nbsp;&nbsp; 如果目标jsp文件被
							cms:template 标签分割为几个模板元素, 那么只有指定的元素被包含进来. 
					否则，不管jsp文件被分割为几个模板元素也会被全部包含进来。<br />
							<em>注意: element 被作为当前请求的附加请求参数被传递.</em>&nbsp;&nbsp;&nbsp;
					</p>
					<p><u>suffix</u>&nbsp;&nbsp;&nbsp; </p>
&nbsp;&nbsp;&nbsp; 给通过 <code>property</code> 
							和 <code>attribue</code> 属性包含的文件追加后缀名.<p>
					<u>cachable</u>&nbsp; </p>
					<p>&nbsp;&nbsp;&nbsp; 如果这个属性的值被设置为 &quot;false&quot;, 那么这个被包含进来的部分不会进行 Flexcache 
					缓存.</p>
					<p><strong>标签体:</strong> </p>
					<p>如果没有设置 <code>page</code>/
					<code>file</code>, <code>property</code> 或者 <code>attribute</code> 
					这些属性的任何一个，那么可以使用 jsp 来写标签体.</p>
					<p>可以添加额外的键值对参数到被包含的页面, 例如： <code>&lt;cms:param name=&quot;myparam&quot; value=&quot;myvalue&quot; 
					/&gt;</code>.</p>
					<p><strong>示例用法:</strong> </p>
					<p>包含页面 &quot;some_page.html&quot;:</p>
					<pre>&lt;cms:include page=&quot;some_page.html&quot; /&gt; or &lt;cms:include file=&quot;some_page.html&quot; /&gt;<br /></pre>
					<p>读取当前文件的 &quot;template&quot; 属性, 并且给这个属性值追加 &quot;_head.jsp&quot; 
					作为文件名称 (&quot;suffix&quot;属性可选):</p>
					<pre>&lt;cms:include property=&quot;template&quot; suffix=&quot;_head.jsp&quot; /&gt;<br /></pre>
					<p>处理另一个标签，将结果作为本标签的标签体，比如这里读取某个文件的一个属性值作为标签体:</p>
					<pre>&lt;cms:include&gt;<br /><br />&lt;cms:property name=&quot;template&quot; file=&quot;parent&quot;/&gt;<br /><br />&lt;/cms:include&gt;<br /></pre>
					<p>设置页面请求参数列表来传递将要包含的文件的名称:</p>
					<pre>&lt;%<br /><br />...<br /><br />request.setAttribute( &quot;body&quot;, &quot;../elements/template-body.html&quot; );<br /><br />...<br /><br />%&gt;<br /><br /><br /><br />&lt;cms:include attribute=&quot;body&quot;&gt;<br /><br />    &lt;cms:param name=&quot;__locale&quot;&gt;&lt;%= locale %&gt;&lt;/cms:param&gt;<br /><br />&lt;/cms:include&gt;<br /></pre>
					<p>包含某个文件，并且传递一些属性, 将增加的属性作为键值对传递给将要包含的文件:</p>
					<pre>&lt;cms:include file=&quot;../elements/template-nav-top.jsp&quot;&gt;<br /><br />    &lt;cms:param name=&quot;__locale&quot;&gt;&lt;%= locale %&gt;&lt;/cms:param&gt;<br /><br />    &lt;cms:param name=&quot;__navpart&quot; value=&quot;toprow&quot; /&gt;<br /><br />&lt;/cms:include&gt;<br /></pre>
					<p>包含 &quot;template&quot; 属性指明的 jsp 文件的 &ldquo;head&rdquo; 模板元素:</p>
					<pre>&lt;cms:include property=&quot;template&quot; element=&quot;head&quot; /&gt;</pre>
					<pre>　<br /></pre><div style="font-weight: bold;">我的相关日志：</div><br />2008-05-13&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/87181809.html" target="_blank" title="<cms:template>标签的使用">&lt;cms:template&gt;标签的使用</a><br />2008-05-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/87140660.html" target="_blank" title="对 OpenCms 的 <cms:user> 标签的使用补充">对 OpenCms 的 &lt;cms:user&gt; 标签的使用补充</a><br />2008-04-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84464893.html" target="_blank" title="<cms:param>标签的使用">&lt;cms:param&gt;标签的使用</a><br />2008-04-11&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84331580.html" target="_blank" title="<cms:img>标签的用法举例说明">&lt;cms:img&gt;标签的用法举例说明</a><br />2008-04-10&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84239085.html" target="_blank" title="再谈<cms:contentaccess>标签的使用">再谈&lt;cms:contentaccess&gt;标签的使用</a><br />2008-04-09&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84148243.html" target="_blank" title="浅谈<cms:contentaccess>标签的使用">浅谈&lt;cms:contentaccess&gt;标签的使用</a><br />2008-03-21&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/82365520.html" target="_blank" title="<cms:contentload>标签的使用">&lt;cms:contentload&gt;标签的使用</a><br />2007-12-14&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/73464277.html" target="_blank" title="<cms:editable>标签的使用">&lt;cms:editable&gt;标签的使用</a><br />2007-12-13&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/73341938.html" target="_blank" title="<cms:contentshow>标签的使用">&lt;cms:contentshow&gt;标签的使用</a><br />2007-12-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/73231894.html" target="_blank" title="<cms:contentloop> 标签的使用">&lt;cms:contentloop&gt; 标签的使用</a><br /><br />]]></description>
		</item>
		    
		
		<item>
			<title>&#60;cms:template&#62;标签的使用</title>
			<link>http://wangyi878750.blog.sohu.com/87181809.html</link>
			<comments>http://wangyi878750.blog.sohu.com/87181809.html#comment</comments>
			<dc:creator>燕子钨</dc:creator>
			<pubDate>Tue, 13 May 2008 00:16:13 +0800</pubDate>
			<category>工作笔记</category>
			<guid>http://wangyi878750.blog.sohu.com/87181809.html</guid>
			<description><![CDATA[[<a href="http://wangyi878750.blog.sohu.com/87181809.html" target="_blank">王毅原创，转载注明</a>]<br /><br />&nbsp; <a href="http://wangyi878750.blog.sohu.com/87181809.htmlhttp://wangyi878750.blog.sohu.com/87181809.htmlz" target="_blank">&lt;cms:template&gt;</a> 该标签允许您把一个JSP页面分割成多个元素，以便使用&lt;cms:include&gt;引入。<br /><br /><span style="text-decoration: underline;">属性</span>:<br /><br /><span style="font-weight: bold;">Name</span><br />&nbsp;&nbsp; &nbsp;element<br /><span style="font-weight: bold;">Description</span><br />&nbsp;&nbsp; &nbsp;在将要被&lt;cms:include&gt;标签使用时候使用的名称.<br /><span style="font-weight: bold;">Required </span><br />&nbsp;&nbsp; &nbsp;yes <br /><br /><span style="text-decoration: underline;">标签体</span>:<br /><br />模板中的任何 HTML, JSP 或者 JSTL 代码. <br /><br /><a href="http://wangyi878750.blog.sohu.com/87181809.html" target="_blank"><span style="text-decoration: underline;">示例用法</span></a>:<br /><br /><span style="font-style: italic;">&lt;cms:template element=&quot;head&quot;&gt;</span><br /><span style="font-style: italic;">&lt;html&gt;</span><br /><span style="font-style: italic;">&lt;body&gt;</span><br /><span style="font-style: italic;">This is the template head.&lt;hr&gt;</span><br /><span style="font-style: italic;">&lt;!-- Main page body starts here --&gt;</span><br /><span style="font-style: italic;">&lt;/cms:template&gt;</span><br /><span style="font-style: italic;">&lt;cms:template element=&quot;foot&quot;&gt;</span><br /><span style="font-style: italic;">&lt;!-- Main page body ends here --&gt;</span><br /><span style="font-style: italic;">&lt;hr&gt;This is the template foot.</span><br /><span style="font-style: italic;">&lt;/body&gt;</span><br /><span style="font-style: italic;">&lt;/html&gt;</span><br /><span style="font-style: italic;">&lt;/cms:template&gt;</span><br /><br /><br />=======================================<br />本标签对应的API调用方法如下代码：<br /><br /><span style="font-style: italic; background-color: rgb(255, 255, 255);"></span><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;%@ page session=&quot;false&quot; import=&quot;org.opencms.jsp.*&quot; %&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;%</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CmsJspActionElement cms = new CmsJspActionElement(pageContext, request, response);</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; %&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp; </span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;% if (cms.template(&quot;head&quot;)){ %&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;html&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;head&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;title&gt; &lt;cms:property name=&quot;Title&quot; escapeHtml=&quot;true&quot;/&gt; &lt;/title&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;/head&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;body&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is the template head. &lt;p&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;% } %&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp; </span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;% if (cms.template(&quot;foot&quot;)){ %&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;p&gt; This is the template foot.</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;/body&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;/html&gt;</span><br /><span style="color: rgb(255, 153, 153); font-style: italic;">&nbsp;&nbsp;&nbsp; &lt;% } %&gt;</span><br />=======================================<br /><br /><div style="font-weight: bold;">我的相关日志：</div><br />2008-05-13&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/87181809.html" target="_blank" title="<cms:template>标签的使用">&lt;cms:template&gt;标签的使用</a><br />2008-05-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/87140660.html" target="_blank" title="对 OpenCms 的 <cms:user> 标签的使用补充">对 OpenCms 的 &lt;cms:user&gt; 标签的使用补充</a><br />2008-04-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84464893.html" target="_blank" title="<cms:param>标签的使用">&lt;cms:param&gt;标签的使用</a><br />2008-04-11&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84331580.html" target="_blank" title="<cms:img>标签的用法举例说明">&lt;cms:img&gt;标签的用法举例说明</a><br />2008-04-10&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84239085.html" target="_blank" title="再谈<cms:contentaccess>标签的使用">再谈&lt;cms:contentaccess&gt;标签的使用</a><br />2008-04-09&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84148243.html" target="_blank" title="浅谈<cms:contentaccess>标签的使用">浅谈&lt;cms:contentaccess&gt;标签的使用</a><br />2008-03-21&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/82365520.html" target="_blank" title="<cms:contentload>标签的使用">&lt;cms:contentload&gt;标签的使用</a><br />2007-12-14&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/73464277.html" target="_blank" title="<cms:editable>标签的使用">&lt;cms:editable&gt;标签的使用</a><br />2007-12-13&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/73341938.html" target="_blank" title="<cms:contentshow>标签的使用">&lt;cms:contentshow&gt;标签的使用</a><br />2007-12-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/73231894.html" target="_blank" title="<cms:contentloop> 标签的使用">&lt;cms:contentloop&gt; 标签的使用</a><br /><br /><br />]]></description>
		</item>
		    
		
		<item>
			<title>对 OpenCms 的 &#60;cms:user&#62; 标签的使用补充</title>
			<link>http://wangyi878750.blog.sohu.com/87140660.html</link>
			<comments>http://wangyi878750.blog.sohu.com/87140660.html#comment</comments>
			<dc:creator>燕子钨</dc:creator>
			<pubDate>Mon, 12 May 2008 17:15:34 +0800</pubDate>
			<category>工作笔记</category>
			<guid>http://wangyi878750.blog.sohu.com/87140660.html</guid>
			<description><![CDATA[原来转载过一篇 <a href="http://wangyi878750.blog.sohu.com/38870605.html" target="_blank">OpenCms JSP标签详解&mdash;&mdash;&lt;cms:user标签</a>&gt; 的文章，想起一些相关的东西，记下来补充一下。<br /><br /><span style="font-style: italic;">&lt;cms:user property=&quot;city&quot;/&gt;</span>　取得当前用户的&ldquo;城市&rdquo;信息（city）&nbsp; （<span style="color: rgb(204, 204, 255);">原文漏掉了这一个属性</span>）<br /><br /><br />示例用法:<br />
<br /><span style="font-style: italic;">
Get the first and the last name of the current user:</span><br />
<br /><span style="font-style: italic;">
&lt;cms:user property=&quot;firstname&quot;/&gt; &lt;cms:user property=&quot;lastname&quot;/&gt;</span><br /><br /><br />这个标签对应使用API方法如下：<br />
<br /><span style="font-style: italic;">
&nbsp; &nbsp;&lt;%@ page session=&quot;false&quot; import=&quot;org.opencms.jsp.*&quot; %&gt;</span><br /><span style="font-style: italic;">
&nbsp; &nbsp; </span><br /><span style="font-style: italic;">
&nbsp; &nbsp;&lt;%</span><br /><span style="font-style: italic;">
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;CmsJspActionElement cms = new CmsJspActionElement(pageContext, request, response);</span><br /><span style="font-style: italic;">
&nbsp; &nbsp;%&gt;</span><br />
<br /><span style="font-style: italic;">
&nbsp; &nbsp;用户名: &lt;%=cms.user(&quot;name&quot;) %&gt; &lt;p&gt;</span><br /><span style="font-style: italic;">
&nbsp; &nbsp;姓名: &lt;%=cms.user(&quot;lastname&quot;) %&gt;, &lt;%=cms.user(&quot;firstname&quot;) %&gt; &lt;p&gt;</span><br /><span style="font-style: italic;">
&nbsp; &nbsp;Email: &lt;%=cms.user(&quot;email&quot;) %&gt; &lt;p&gt;</span><br /><br />也可以在得到<br />
CmsUser 对象以后，使用下面这几个方法得到比使用上述方法更多的信息：<br />
<br />
<strong style="font-style: italic;">getAddress</strong><span style="font-style: italic;">()</span><br />
<strong style="font-style: italic;">getCity</strong><span style="font-style: italic;">()</span><br />
<strong style="font-style: italic;">getCountry</strong><span style="font-style: italic;">()</span><br />
<strong style="font-style: italic;">getDateCreated</strong><span style="font-style: italic;">()</span><br />
<strong style="font-style: italic;">getDescription</strong><span style="font-style: italic;">()</span><br />
<strong style="font-style: italic;">getEmail</strong><span style="font-style: italic;">()</span><br />
<strong style="font-style: italic;">getLastlogin</strong><span style="font-style: italic;">()</span><br />
<br />
当然，更多的请参考 OpenCms 提供的API文档。<br /><br />至于在实际应用中使用何种方法，具体的情况具体讨论了，标签用法方便，但是信息有限，在某些特定的需要上，还是需要你得到CmsUser对象，让你后再去得到其他需要的属性的。<br /><br /><br /><div style="font-weight: bold;">我的相关日志：</div><br />2008-05-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/87140660.html" target="_blank" title="对 OpenCms 的 <cms:user> 标签的使用补充">对 OpenCms 的 &lt;cms:user&gt; 标签的使用补充</a><br />2008-04-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84464893.html" target="_blank" title="<cms:param>标签的使用">&lt;cms:param&gt;标签的使用</a><br />2008-04-11&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84331580.html" target="_blank" title="<cms:img>标签的用法举例说明">&lt;cms:img&gt;标签的用法举例说明</a><br />2008-04-10&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84239085.html" target="_blank" title="再谈<cms:contentaccess>标签的使用">再谈&lt;cms:contentaccess&gt;标签的使用</a><br />2008-04-09&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84148243.html" target="_blank" title="浅谈<cms:contentaccess>标签的使用">浅谈&lt;cms:contentaccess&gt;标签的使用</a><br />2008-03-21&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/82365520.html" target="_blank" title="<cms:contentload>标签的使用">&lt;cms:contentload&gt;标签的使用</a><br />2007-12-14&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/73464277.html" target="_blank" title="<cms:editable>标签的使用">&lt;cms:editable&gt;标签的使用</a><br />2007-12-13&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/73341938.html" target="_blank" title="<cms:contentshow>标签的使用">&lt;cms:contentshow&gt;标签的使用</a><br />2007-12-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/73231894.html" target="_blank" title="<cms:contentloop> 标签的使用">&lt;cms:contentloop&gt; 标签的使用</a><br />2007-12-11&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/73124915.html" target="_blank" title="<cms:contentinfo>标签的使用">&lt;cms:contentinfo&gt;标签的使用</a><br />2007-03-23&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/38870605.html" target="_blank" title="[转]OpenCms JSP标签详解——cms:user标签">[转]OpenCms JSP标签详解&mdash;&mdash;cms:user标签</a><br /><br /><br />]]></description>
		</item>
		    
		
		<item>
			<title>OpenCms.7.Development 目录</title>
			<link>http://wangyi878750.blog.sohu.com/86996523.html</link>
			<comments>http://wangyi878750.blog.sohu.com/86996523.html#comment</comments>
			<dc:creator>燕子钨</dc:creator>
			<pubDate>Sun, 11 May 2008 00:22:06 +0800</pubDate>
			<category>工作笔记</category>
			<guid>http://wangyi878750.blog.sohu.com/86996523.html</guid>
			<description><![CDATA[&nbsp;&nbsp;&nbsp; 然后下面就是本书的目录了。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Table of Contents<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Preface 1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Chapter 1: Overview 7<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Site Design 8<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Required Developer Skills 12<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Basic Site Development 12<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sites Requiring Custom Content Types 13<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sites Requiring Custom Features 14<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Bespoke Site Development 14<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OpenCms Application Overview 14<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The OpenCms Directory Structure 15<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Real File System Layout 15<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Virtual File System Layout 18<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OpenCms Architecture 19<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Extensibility through Modules 20<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The OpenCms Web Request Process 20<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OpenCms Web Application Packaging 21<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Building a Complete Site with OpenCms 21<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary 22<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Chapter 2: Developing in OpenCms 23<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Developing Basic Site Content 23<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Setting Up an Environment for Creating JSP Code 24<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Editing Files Using File Synchronization 26<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Using WebDAV for Editing 28<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debugging JSP Code in OpenCms 30<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Setting Up an Eclipse Environment to Build OpenCms 33<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Tools Needed to Build OpenCms in Eclipse 33<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Step 1: Checkout the Project Source from CVS 34<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Step 2: Setting the Classpath for Compilation 40<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Step 3: Using Ant to Build a Distribution Package 41<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Building OpenCms outside of Eclipse Using Ant 44<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debugging OpenCms in Eclipse 45<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Setting Up an Eclipse Environment without Building OpenCms 46<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary 47<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Chapter 3: Our First Module 49<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Understanding OpenCms Modules 50<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Common Module Types 50<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Module Events 51<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Exporting and Importing Modules 51<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Creating a Module 52<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Creating a BlogEntry Content Type 55<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Registering the Content Type 59<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Additional Schema Features 66<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Field Mappings 66<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Field Validations 67<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Default Field Values 67<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Localization 68<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Content Relationships 68<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Content Previewing 69<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Creating Content Using a Model 70<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; User Interface Widgets 70<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Nested Content Definitions 80<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Editing Configuration Files with Validating Editors 84<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Organizing the Content 87<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary 87<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Chapter 4: Developing Templates 89<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Review of the Page Layout 89<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Templates in OpenCms 94<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Creating the Templates 94<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Homepage Template 95<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Blog Content Loop 97<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Sidebar and Footer 99<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Common Code Elements 100<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Header Code 101<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Search Form 102<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Advertisements 102<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Blog Archives 103<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RSS Client and RSS Feeds 105<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Footer Section 106<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Supporting Java Bean Class 106<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Blog Template 112<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Content and Template Loading Process 113<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Expressions in JSP Templates 115<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Using the Tag Library from JSP 115<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Combining Expressions with JSTL 116<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Accelerating Template Development Using WebDAV 117<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Install the Eclipse WebDAV Plug-in 118<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Create a Site Within Eclipse for the Server 120<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Import Content into the Project 122<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary 124<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Chapter 5: Adding Site Search 125<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; A Quick Overview of Lucene 125<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Search Indexes 125<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Search Queries 127<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Configuring OpenCms Search 127<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Field Configurations 128<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Creating a Field Configuration 130<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Creating an Index Source 133<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Additional Search Settings 136<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Introducing Luke &ndash; a Visual Index Tool 137<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Writing the Search Code 140<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; A Simple Search Example 140<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Subclassing the CmsSearch Bean 143<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Search.jsp Template 145<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary 151<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Chapter 6: Adding User Registration and Comment Support 153<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Understanding OpenCms Security 153<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; User, Groups, Roles, and Permissions 154<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Organizational Units 157<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Setting up Security for Our Site 158<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Organization Unit and Group Setup 159<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Adding the Users 163<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Resource Permissions 166<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; User Login and Registration Code 169<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Adding Comment Support 178<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Adding the Comments to the XML Content 181<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Publishing the Comments 183<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary 184<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Chapter 7: Providing Site Customization Features 185<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; What is RSS? 185<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Creating the Module 186<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The RSS Client Code 187<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Displaying the RSS Feed in the Template 189<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Adding User Preferences to Accounts 190<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Updating the Java Code 191<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Updating the JSP Templates 193<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Hooking up the Account Management Page 196<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary 198<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Chapter 8: Extending OpenCms: Developing a Custom Widget 199<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Designing a Custom Widget 199<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Designing the Widget 201<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Widget Code 202<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Custom Source Interface and Implementations 207<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Using OpenCms Message Strings for Localization 212<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Registering the Widget with OpenCms 213<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary 214<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Chapter 9: Extending OpenCms: Adding RSS Feed Support 215<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RSS Feed Design 215<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The RSS Feed Content Type 218<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Creating a Supporting Widget 223<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The RSS Feed Template and Java Classes 226<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Content Wrapper Java Classes 231<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Wrapping It Up 236<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary 238<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Chapter 10: Extending OpenCms: Adding an Administration Point 239<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Administrative Points 239<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Administration View 243<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Hooking the Administration Point Up to the Module 245<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The RSS Administration Module 246<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Leveraging the OpenCms Dialog Classes 250<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Feed Manager Class 259<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The New Channel Action 265<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary 270<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Index 271<br />]]></description>
		</item>
		    
		
		<item>
			<title>OpenCms.7.Development 到手</title>
			<link>http://wangyi878750.blog.sohu.com/86993779.html</link>
			<comments>http://wangyi878750.blog.sohu.com/86993779.html#comment</comments>
			<dc:creator>燕子钨</dc:creator>
			<pubDate>Sun, 11 May 2008 00:27:38 +0800</pubDate>
			<category>工作笔记</category>
			<guid>http://wangyi878750.blog.sohu.com/86993779.html</guid>
			<description><![CDATA[&nbsp;&nbsp;&nbsp; 上次还说 <a href="http://wangyi878750.blog.sohu.com/84057039.html" target="_blank">OpenCms 7 Development 5月份即将出版</a> ，昨天晚上就拿到了OpenCms.7.Development的电子版本。<br />&nbsp;&nbsp;&nbsp; 抢先看一下完整封面：<br /><img src="http://1822.img.pp.sohu.com.cn/images/blog/2008/5/10/23/29/11a77e57fba.jpg" style="margin: 0px auto 10px; display: block; text-align: center;" alt="" border="0" />&nbsp;&nbsp;&nbsp; 目录在 <font size="3"><a href="http://wangyi878750.blog.sohu.com/86996523.html" target="_blank">这里</a></font> 。<span style="font-family: 黑体; background-color: rgb(255, 153, 255); color: rgb(153, 102, 51);"></span><br />&nbsp;&nbsp;&nbsp; 大概浏览了一下，发现这本书还是可读的，比起原来的两本来，对开发者更有价值了。等忙过现在这阵子，我也想好好看看，看能带给自己多少东西。<br />&nbsp;&nbsp;&nbsp; 有兴趣的朋友可以到itpub的下载区域搜索一下这本书。也可以在google上搜一下国外的共享。：）<br />&nbsp;&nbsp;&nbsp; 当然，更希望有机会在国内买到实体图书！<br /><br /><br /><div style="font-weight: bold;">我的相关日志：</div><br />2008-05-08&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86805847.html" target="_blank" title="Alkacon_OAMP_SyndicationFeed 使用示例">Alkacon_OAMP_SyndicationFeed 使用示例</a><br />2008-05-07&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86689922.html" target="_blank" title="How to create structured content in opencms">How to create structured content in opencms</a><br />2008-05-07&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86645459.html" target="_blank" title="Alkacon_OAMP_Counter 使用示例">Alkacon_OAMP_Counter 使用示例</a><br />2008-05-05&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86538216.html" target="_blank" title="期待 OpenCms 7.0.5">期待 OpenCms 7.0.5</a><br />2008-04-30&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86043207.html" target="_blank" title="Alkacon 提供的 OpenCms 模块预览(二)">Alkacon 提供的 OpenCms 模块预览(二)</a><br />2008-04-30&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86043104.html" target="_blank" title="Alkacon 提供的 OpenCms 模块预览(一)">Alkacon 提供的 OpenCms 模块预览(一)</a><br />2008-04-29&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86016021.html" target="_blank" title="给我发mail的OpenCms Core Developer的真身">给我发mail的OpenCms Core Developer的真身</a><br />2008-04-28&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/85845116.html" target="_blank" title="OpenCms 中实现文章分类功能">OpenCms 中实现文章分类功能</a><br />2008-04-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84464893.html" target="_blank" title="<cms:param>标签的使用">&lt;cms:param&gt;标签的使用</a><br /><br /><br />]]></description>
		</item>
		    
		
		<item>
			<title>Alkacon_OAMP_SyndicationFeed 使用示例</title>
			<link>http://wangyi878750.blog.sohu.com/86805847.html</link>
			<comments>http://wangyi878750.blog.sohu.com/86805847.html#comment</comments>
			<dc:creator>燕子钨</dc:creator>
			<pubDate>Fri, 9 May 2008 00:07:22 +0800</pubDate>
			<category>工作笔记</category>
			<guid>http://wangyi878750.blog.sohu.com/86805847.html</guid>
			<description><![CDATA[&nbsp;&nbsp;&nbsp; [<a href="http://wangyi878750.blog.sohu.com/86805847.html" target="_blank">王毅原创，转载注明</a>]<br />&nbsp;&nbsp;&nbsp; 在使用 Alkacon_OAMP_SyndicationFeed&nbsp; 模块之前，曾经也使用 <a href="http://www.clicksandlinks.com/opencms/opencms/CL_Solutions/open_source/opencms/rss_module/index.html" target="_blank"><img src="http://1832.img.pp.sohu.com.cn/images/blog/2008/5/9/0/6/11a6d8cc08d.jpg" style="" alt="" border="0" /></a> 的 RSS 模块，不过使用起来差别还是很大的。甚至自己也写过 jsp 来输出 RSS 的文件，但是都没有什么太大的通用性。<br />&nbsp;&nbsp;&nbsp; 这个模块，个人觉得，只要能自己安装的话，使用就不会有问题的。<br />&nbsp;&nbsp;&nbsp; 只要在新建资源的时候，选择<a href="http://wangyi878750.blog.sohu.com/86805847.html" target="_blank"><img src="http://1832.img.pp.sohu.com.cn/images/blog/2008/5/8/21/9/11a6ceac3f3.jpg" style="margin: 0px auto 10px; display: block; text-align: center;" alt="" border="0" /></a><br />&nbsp;&nbsp;&nbsp; 然后选择其中的<a href="http://wangyi878750.blog.sohu.com/86805847.html" target="_blank"><img src="http://1812.img.pp.sohu.com.cn/images/blog/2008/5/8/21/10/11a6ceb77f0.jpg" style="margin: 0px auto 10px; display: block; text-align: center;" alt="" border="0" /></a><br />&nbsp;&nbsp;&nbsp; 那么就会在 VFS 看到这样的文件：<a href="http://wangyi878750.blog.sohu.com/86805847.html" target="_blank"><img src="http://1832.img.pp.sohu.com.cn/images/blog/2008/5/8/21/11/11a6cecac54.jpg" style="margin: 0px auto 10px; display: block; text-align: center;" alt="" border="0" /></a><br /><br />&nbsp;&nbsp;&nbsp; 打开编辑它，会发现设置是很方便的。<a href="http://wangyi878750.blog.sohu.com/86805847.html" target="_blank"><img src="http://1802.img.pp.sohu.com.cn/images/blog/2008/5/8/21/12/11a6ced50ca.jpg" style="margin: 0px auto 10px; display: block; text-align: center;" alt="" border="0" /></a><br />&nbsp;&nbsp;&nbsp; 经过设置以后，这个文件就会输出符合你要求的 RSS 文件了。在IE中订阅查看的话，就会看到如下类似的效果。<a href="http://wangyi878750.blog.sohu.com/86805847.html" target="_blank"><img src="http://1802.img.pp.sohu.com.cn/images/blog/2008/5/8/21/14/11a6ceed6a6.jpg" style="margin: 0px auto 10px; display: block; text-align: center;" alt="" border="0" /></a><br />&nbsp;&nbsp;&nbsp; 当然了，你还可以通过 <span><b>Google Reader </b>或者其他的在线订阅、离线阅读器来订阅这个文件生成的地址。<br />&nbsp;&nbsp;&nbsp; 这样一来，只需要在需要的文件夹下建立需要的资源就可以方便的实现 RSS 订阅的生成了。这个在 Web 2.0 是非常需要的功能（起码我大部分信息，比如感兴趣的新闻和博客就是通过 Reader 来阅读的）。<br /><br />&nbsp;&nbsp;&nbsp; 实际上，这个模块的功能还可以自己通过修改一些文件来符合自己的需求，扩展性也不错。<br /><br />&nbsp;&nbsp;&nbsp; </span><br /><div style="font-weight: bold;">我的相关日志：</div><br />2008-05-08&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86805847.html" target="_blank" title="Alkacon_OAMP_SyndicationFeed 使用示例">Alkacon_OAMP_SyndicationFeed 使用示例</a><br />2008-05-07&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86645459.html" target="_blank" title="Alkacon_OAMP_Counter 使用示例">Alkacon_OAMP_Counter 使用示例</a><br />2008-04-30&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86043207.html" target="_blank" title="Alkacon 提供的 OpenCms 模块预览(二)">Alkacon 提供的 OpenCms 模块预览(二)</a><br />2008-04-30&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86043104.html" target="_blank" title="Alkacon 提供的 OpenCms 模块预览(一)">Alkacon 提供的 OpenCms 模块预览(一)</a><br />2008-03-18&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/82148540.html" target="_blank" title="来自 Alkacon Software GmbH 的邮件">来自 Alkacon Software GmbH 的邮件</a><br />2008-05-07&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86689922.html" target="_blank" title="How to create structured content in opencms">How to create structured content in opencms</a><br />2008-05-05&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86538216.html" target="_blank" title="期待 OpenCms 7.0.5">期待 OpenCms 7.0.5</a><br />2008-04-29&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86016021.html" target="_blank" title="给我发mail的OpenCms Core Developer的真身">给我发mail的OpenCms Core Developer的真身</a><br />2008-04-28&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/85845116.html" target="_blank" title="OpenCms 中实现文章分类功能">OpenCms 中实现文章分类功能</a><br />2008-04-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84464893.html" target="_blank" title="<cms:param>标签的使用">&lt;cms:param&gt;标签的使用</a><br />2008-04-11&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84331580.html" target="_blank" title="<cms:img>标签的用法举例说明">&lt;cms:img&gt;标签的用法举例说明</a><br /><br />]]></description>
		</item>
		    
		
		<item>
			<title>How to create structured content in opencms</title>
			<link>http://wangyi878750.blog.sohu.com/86689922.html</link>
			<comments>http://wangyi878750.blog.sohu.com/86689922.html#comment</comments>
			<dc:creator>燕子钨</dc:creator>
			<pubDate>Wed, 7 May 2008 16:10:43 +0800</pubDate>
			<category>工作笔记</category>
			<guid>http://wangyi878750.blog.sohu.com/86689922.html</guid>
			<description><![CDATA[<span style="color: rgb(0, 51, 255);">转载一个关于 OpenCms 自定义结构内容的创建的文章，是官方的文档。虽然不是最新的。

    
    

</span><p><b><br />This document
explains How to create structured content in opencms. </b>
</p>In order to create your
own structured content editor, the first step is to create an opencms
  module as a container for it.<br /><br />As for now we can use
default opencms module named
&ldquo;<font size="2"><font face="Courier New, monospace">org.opencms.frontend.templateone.modules&rdquo;
</font></font><p>
</p>

<p><b>Step 1:</b></p>

<p> <b>Open the
opencms-modules.xml file which is in the below path:   </b>
</p>

<p>\ProgramFiles\IBM\WebSphere\AppServer\profiles\default\installedApps\krishnanNode01Cell\opencms_war.ear\opencms.war\WEB-INF\config\</p>

<p><b>Step 2: </b>
</p>
<p><b>Go to the module
&ldquo;org.opencms.frontend.templateone.modules&rdquo;  by using the
keyword &ldquo;&lt;name&gt;org.opencms.frontend.templateone.modules&lt;/name&gt;&rdquo;
 to search.</b></p>

<p><font color="#800000"><img src="http://docs.google.com/File?id=dd74w53p_262hrqnw7z7_b" border="0" height="500" width="600" /></font></p>
<p><br />
</p><br /><img src="http://docs.google.com/File?id=dd74w53p_263dwhzmmcp_b" border="0" height="297" width="600" /><img src="http://docs.google.com/File?id=dd74w53p_264fvvfs2fc_b" />
<p><br />
</p>
<p><br />
</p>

<p><b>Step 3:</b></p>

<p><b>Copy and paste the
&ldquo;type&rdquo; which is shown in the below screen shot.</b></p><br />

<p><br />
</p>
<p><img src="http://docs.google.com/File?id=dd74w53p_265zz6933dx_b" border="0" height="342" width="600" /><img src="http://docs.google.com/File?id=dd74w53p_266dwv3pc24_b" /></p>
<p><b>Step 4:</b></p>

<p> <b>Now we have to edit
the pasted &ldquo;type&rdquo; as per our requirement.</b></p>

<p><img src="http://docs.google.com/File?id=dd74w53p_2678trchzg4_b" border="0" height="130" width="599" /></p>
<p><br />
</p>
<p><br />
</p>
<p><br />
</p>

<p>	</p>
<p><b>Step 5:</b></p><br />

<p><b>Now Copy and paste
the &ldquo;explorertype&rdquo; as like in the screen shot given below</b></p>

<p><br />
</p>
<p><img src="http://docs.google.com/File?id=dd74w53p_268d7t9spdq_b" border="0" height="218" width="599" /><img src="http://docs.google.com/File?id=dd74w53p_269gf4477gd_b" /></p><b>Step 6:</b>
<p><b>Now we have to edit
the pasted &ldquo;explorertype&rdquo; as per our requirement.</b></p><br />

<p><img src="http://docs.google.com/File?id=dd74w53p_270f8d3r7gw_b" border="0" height="155" width="600" /></p>
<p><br />
</p>The name which is
marked above should match the name that we had given in the step 4.

<p>Now save the changes
and close the file.</p><b>Step 7:</b>

<p><b>Go to the link given
below in OpenCms Admin Interface</b></p>

<p>
/system/modules/org.opencms.frontend.templateone.modules/ 
</p>

<p><b>Step 8:</b></p>
<p><b>Create your new
&ldquo;xsd&rdquo; file inside the schemas folder.</b></p>

<p><img src="http://docs.google.com/File?id=dd74w53p_271fjd6cmgj_b" border="0" height="381" width="600" /></p>
<p><br />
</p>
<p><b>Step 9:</b></p>

<p><b>Copy and paste any
one of the sample xsd code and edit our changes.</b></p>

<p><img src="http://docs.google.com/File?id=dd74w53p_272hhrf8ff7_b" border="0" height="433" width="600" /></p>
<p><br />
</p>
<p>In the Box 1 (red) you
would edit the element name and type and also the complexType name.</p>
<p>Note:</p>
<p> The element name must
be ended with the letter &ldquo;s&rdquo;.</p>
<p> In the element type
you should add the text OpenCms in front of the element name as shown
in the above Box 1.</p>
<p> For the ComplexType
name also you should add the text OpenCms in front of the element
name as shown in the above Box 1.</p>In the Box 2 (green)
would edit the element name and type and also the complexType name.

<p>Note:</p>
<p> Here the element name
must not be ended with the letter &ldquo;s&rdquo;.</p>
<p> In the element type
you should add the text OpenCms in front of the element name as shown
in the above Box 2.</p>
<p> For the ComplexType
name also you should add the text OpenCms in front of the element
name as shown in the above Box 2.</p>In the Box 3 (brown)
the element name &ldquo;Business_Type&rdquo;which is marked in the
above fig would display in the structured content file. You can
change the label of the element in the workplace.properties file. 


<p>The type
&ldquo;OpenCmsString&rdquo; is used to create the Tex Field. Refer
OpenCms Documentation for the various fields.</p>

<p>Note: 
</p>
<p> If you are not give
any label for the element the default element name in the xsd file
will display in the Structured Content file. 
</p>Finally save the
changes and close the xsd file.


<p><b>Step 10:</b></p>
<p><b>Open the
workplace.properties file the below path</b></p>

<p>/system/modules/org.opencms.frontend.templateone.modules/classes/org/opencms/frontend/templateone/modules/</p>

<p><img src="http://docs.google.com/File?id=dd74w53p_273gw2m449s_b" border="0" height="331" width="549" /></p>

<p>The &ldquo;test_article&rdquo;
which is marked in the box 1 (red) is the type name given in the
<b>opencms-modules.xml </b>file.</p>

<p>The &ldquo;Test&rdquo;
which is marked in the box 2(green) is the element name given in the
<b>samples.xsd</b> file.</p>

<p>Now save the changes
and close the file.</p><b>Step 11.</b>

<p><b>Publish the Project </b>
</p>

<p><img src="http://docs.google.com/File?id=dd74w53p_274dq2m5rcw_b" border="0" height="380" width="600" /></p>
<p><br />
</p><b>Step 12:</b>
<p><b>After publishing the
project you need to reload the Opencms instance in the server or
restart the server.</b></p>

<p><b>Step 13:</b></p>

<p><b>Open the OpenCms
Admin Interface now you can able to see your new structured content
file.</b></p>
<p> 
<img src="http://docs.google.com/File?id=dd74w53p_275cngc6sc3_b" border="0" height="442" width="599" /></p>
<p><br />
</p><b>Step 14:</b>

<p><b>Now you can create a
new xml file by using the newly created structured content file.</b></p>

<p><img src="http://docs.google.com/File?id=dd74w53p_276c6w984g2_b" border="0" height="287" width="600" /></p>

<p><b>Step 15: </b>
</p>

<p><b>Now you can edit
your structured content file.</b></p><img src="http://docs.google.com/File?id=dd74w53p_277fhj2n4cg_b" border="0" height="434" width="599" />
<p><br />
</p>Enter the values in the
field and save your changes.<br /><br /><p><br /></p><br /><p></p>＝＝＝＝＝＝＝＝＝＝＝＝＝＝分割线＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝<br /><br />实际上在很多地方都有关于这个问题的讨论，以前也都曾讨论过，但是官方文档不多见，所以还是放上来好了。<br /><br /><br /><div style="font-weight: bold;">我的相关日志：</div><br />2008-05-07&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86645459.html" target="_blank" title="Alkacon_OAMP_Counter 使用示例">Alkacon_OAMP_Counter 使用示例</a><br />2008-05-05&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86538216.html" target="_blank" title="期待 OpenCms 7.0.5">期待 OpenCms 7.0.5</a><br />2008-04-30&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86043207.html" target="_blank" title="Alkacon 提供的 OpenCms 模块预览(二)">Alkacon 提供的 OpenCms 模块预览(二)</a><br />2008-04-30&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86043104.html" target="_blank" title="Alkacon 提供的 OpenCms 模块预览(一)">Alkacon 提供的 OpenCms 模块预览(一)</a><br />2008-04-29&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86016021.html" target="_blank" title="给我发mail的OpenCms Core Developer的真身">给我发mail的OpenCms Core Developer的真身</a><br />2008-04-28&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/85845116.html" target="_blank" title="OpenCms 中实现文章分类功能">OpenCms 中实现文章分类功能</a><br />2008-04-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84464893.html" target="_blank" title="<cms:param>标签的使用">&lt;cms:param&gt;标签的使用</a><br />2008-04-11&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84331580.html" target="_blank" title="<cms:img>标签的用法举例说明">&lt;cms:img&gt;标签的用法举例说明</a><br />2008-04-10&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84239085.html" target="_blank" title="再谈<cms:contentaccess>标签的使用">再谈&lt;cms:contentaccess&gt;标签的使用</a><br />2008-04-09&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84148243.html" target="_blank" title="浅谈<cms:contentaccess>标签的使用">浅谈&lt;cms:contentaccess&gt;标签的使用</a><br /><br /><br />]]></description>
		</item>
		    
		
		<item>
			<title>Alkacon_OAMP_Counter 使用示例</title>
			<link>http://wangyi878750.blog.sohu.com/86645459.html</link>
			<comments>http://wangyi878750.blog.sohu.com/86645459.html#comment</comments>
			<dc:creator>燕子钨</dc:creator>
			<pubDate>Wed, 7 May 2008 00:52:42 +0800</pubDate>
			<category>工作笔记</category>
			<guid>http://wangyi878750.blog.sohu.com/86645459.html</guid>
			<description><![CDATA[[<a href="http://wangyi878750.blog.sohu.com/86645459.html" target="_blank">王毅原创，转载注明</a>]<br />实际上，发现官方提供的这个模块还是很易于使用的。<br />只要按照官方的说明文档安装，配置，就可以<a href="http://wangyi878750.blog.sohu.com/86645459.html" target="_blank">自己测试一下</a>了。<br />譬如，<br />我写以下代码就可以实现在每次访问页面的时候计数器自动加一：<br /><br />&lt;%@ taglib prefix=&quot;fn&quot; uri=&quot;http://java.sun.com/jsp/jstl/functions&quot; %&gt;&lt;%<br />&nbsp;&nbsp; &nbsp;CmsExampleUseBean cms = new CmsExampleUseBean(pageContext, request, response);<br />&nbsp;&nbsp; &nbsp;pageContext.setAttribute(&quot;cms&quot;, cms);<br />%&gt;<br />&lt;c:set var=&quot;cvalue1&quot;&gt;&lt;%= cms.getCounterManager().incrementCounter(&quot;pageview&quot;) %&gt;&lt;/c:set&gt;<br /><br />本页面被浏览次数：&lt;span style=&quot;color: red;&quot;&gt;&lt;c:out value=&quot;${cvalue1}&quot;/&gt;&lt;/span&gt;<br /><br />显示效果如下：<br /><br /><a href="http://wangyi878750.blog.sohu.com/86645459.html" target="_blank"><img src="http://1832.img.pp.sohu.com.cn/images/blog/2008/5/7/0/16/11a6363c124.jpg" style="margin: 0px auto 10px; display: block; text-align: center;" alt="" border="0" /></a><br />当然，这个只是个demo而已，在这个示例中，没有判断当前项目的状态，因为实际使用中应该是给Online的项目使用；还有一点就是可以在页面增加参数来确定当前用户是否实在刷新页面，防止用户刷新计数器；比较重要的还有，这个可以写成一个专门计数的模板元素，然后可以在页面模板中使用，这样可以给很多页面html计数。当然，最需要的恐怕就是还需要写一些代码来实现在页面计数的时候判断计数器管理里面时候有这个页面的计数，没有的话，需要自己先增加了。<br /><br />这个模块模块的实用性上来说，可以给页面计数，或者文件下载次数计数，或者其他的譬如某用户登录次数、某表单被提交次数等等，可以在很多方面使用。<br />但是个人觉得，如果在这个已经提供的基础上进行自己的二次开发来适合自己的需要的话，效果会更好。<br /><br /><br />注意：配置数据库连接池的时候，可能需要<a href="http://wangyi878750.blog.sohu.com/83875297.html" target="_blank">修改OpenCms的配制文件来配置使用的连接池</a>。<br /><br /><font size="2">说个题外话，感觉开源的这些模块，要想在项目中很好的使用，也需要真正研究一番才行。<br />今天忽然发现，从官方下载的一些东西还缺少文件，还需要自己揣摩写一些文件才能够正确运行。</font><br /><br /><br /><div style="font-weight: bold;">我的相关日志：</div><br />2008-04-30&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86043207.html" target="_blank" title="Alkacon 提供的 OpenCms 模块预览(二)">Alkacon 提供的 OpenCms 模块预览(二)</a><br />2008-04-30&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86043104.html" target="_blank" title="Alkacon 提供的 OpenCms 模块预览(一)">Alkacon 提供的 OpenCms 模块预览(一)</a><a href="http://wangyi878750.blog.sohu.com/82148540.html" target="_blank" title="来自 Alkacon Software GmbH 的邮件"></a><br />2008-05-05&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86538216.html" target="_blank" title="期待 OpenCms 7.0.5">期待 OpenCms 7.0.5</a><br />2008-04-29&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86016021.html" target="_blank" title="给我发mail的OpenCms Core Developer的真身">给我发mail的OpenCms Core Developer的真身</a><br />2008-04-28&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/85845116.html" target="_blank" title="OpenCms 中实现文章分类功能">OpenCms 中实现文章分类功能</a><br />2008-04-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84464893.html" target="_blank" title="<cms:param>标签的使用">&lt;cms:param&gt;标签的使用</a><br />2008-04-11&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84331580.html" target="_blank" title="<cms:img>标签的用法举例说明">&lt;cms:img&gt;标签的用法举例说明</a><br />2008-04-10&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84239085.html" target="_blank" title="再谈<cms:contentaccess>标签的使用">再谈&lt;cms:contentaccess&gt;标签的使用</a><br />2008-04-09&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84148243.html" target="_blank" title="浅谈<cms:contentaccess>标签的使用">浅谈&lt;cms:contentaccess&gt;标签的使用</a><br />2008-04-08&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84057039.html" target="_blank" title="OpenCms 7 Development 5月份即将出版">OpenCms 7 Development 5月份即将出版</a><br /><br /><br />]]></description>
		</item>
		    
		
		<item>
			<title>期待 OpenCms 7.0.5</title>
			<link>http://wangyi878750.blog.sohu.com/86538216.html</link>
			<comments>http://wangyi878750.blog.sohu.com/86538216.html#comment</comments>
			<dc:creator>燕子钨</dc:creator>
			<pubDate>Mon, 5 May 2008 22:13:04 +0800</pubDate>
			<category>工作笔记</category>
			<guid>http://wangyi878750.blog.sohu.com/86538216.html</guid>
			<description><![CDATA[&nbsp;&nbsp;&nbsp; 前两天在看到官方的某个写新模块的文档里面看到了下面这个截图：<br /><a href="http://pp.sohu.com/photoview-192682328-1095968.html" target="_blank"><img src="http://1812.img.pp.sohu.com.cn/images/blog/2008/5/5/21/29/11a5da4ad4e.jpg" style="margin: 0px auto 10px; display: block; text-align: center;" alt="" border="0" /></a>&nbsp;&nbsp;&nbsp; 可能就是说，官方可能基本上有了 7.0.5 的雏形了，说不好已经好了，只是没有发布而已。都不知道。<br />&nbsp;&nbsp;&nbsp; 不过我期待的不是它最新的更新，因为我也不具体知道有了那些新特性。我期待的是官方可能再发布两个开源的OpenCms模块，一个是投票|在线调查模块，基于在线表单的扩展，主要是可以对某些结果图形化显示；另一个就是日历功能，这个比较另我兴奋，就象上面的截图，可以有这两种视图，而且可以自己集成关联自定义类型文件，定制自己的CSS等等（惭愧，以前项目中曾经做过类似的东西，不过最后基本上成了摆设）。<br />&nbsp;&nbsp;&nbsp; 这两个如果要是开源的话，那么 OpenCms 的模块会更有吸引力，相信会有更多的人使用，因为毕竟成本会大大降低。<br />&nbsp;&nbsp;&nbsp; 我自己安装了这两个模块（需要自己编译项目），但是官方网站上迄今为止还没有这个消息。但是相关更新是4.25号的（看截图中的事件已经是4.28了）。<br />&nbsp;&nbsp;&nbsp; 具体使用方法还没有都测试完毕，不过确实值得一试！<br />&nbsp;&nbsp;&nbsp; 所以，期待 OpenCms 7.0.5 的发布，一些新的东西希望不仅仅是存在于官方的 Demo 上，譬如 oampdemo 模块，我第一次看到就是在官方的demo站点对它做了改进才发布的。<br />&nbsp;&nbsp;&nbsp; <br /><div style="font-weight: bold;">我的相关日志：</div><a href="http://wangyi878750.blog.sohu.com/38870991.html" target="_blank" title="[转][图文]OpenCms VFS plugin for Eclipse 安装与使用"></a><br />2008-04-30&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86043207.html" target="_blank" title="Alkacon 提供的 OpenCms 模块预览(二)">Alkacon 提供的 OpenCms 模块预览(二)</a><br />2008-04-30&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86043104.html" target="_blank" title="Alkacon 提供的 OpenCms 模块预览(一)">Alkacon 提供的 OpenCms 模块预览(一)</a><br />2008-04-29&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/86016021.html" target="_blank" title="给我发mail的OpenCms Core Developer的真身">给我发mail的OpenCms Core Developer的真身</a><br />2008-04-28&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/85845116.html" target="_blank" title="OpenCms 中实现文章分类功能">OpenCms 中实现文章分类功能</a><br />2008-04-12&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84464893.html" target="_blank" title="<cms:param>标签的使用">&lt;cms:param&gt;标签的使用</a><br />2008-04-11&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84331580.html" target="_blank" title="<cms:img>标签的用法举例说明">&lt;cms:img&gt;标签的用法举例说明</a><br />2008-04-10&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84239085.html" target="_blank" title="再谈<cms:contentaccess>标签的使用">再谈&lt;cms:contentaccess&gt;标签的使用</a><br />2008-04-09&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84148243.html" target="_blank" title="浅谈<cms:contentaccess>标签的使用">浅谈&lt;cms:contentaccess&gt;标签的使用</a><br />2008-04-08&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/84057039.html" target="_blank" title="OpenCms 7 Development 5月份即将出版">OpenCms 7 Development 5月份即将出版</a><br />2008-04-07&nbsp;|&nbsp;<a href="http://wangyi878750.blog.sohu.com/83954845.html" target="_blank" title="OpenCms中操作外部数据库的方法之二">OpenCms中操作外部数据库的方法之二</a><br /><br />]]></description>
		</item>
		    
		
	</channel>
</rss>
