﻿<?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-我的JAVA</title><link>http://www.blogjava.net/walwal/</link><description>我的门户</description><language>zh-cn</language><lastBuildDate>Sun, 12 Apr 2026 07:52:40 GMT</lastBuildDate><pubDate>Sun, 12 Apr 2026 07:52:40 GMT</pubDate><ttl>60</ttl><item><title>Acegi 配置指南(4)</title><link>http://www.blogjava.net/walwal/archive/2010/02/25/313915.html</link><dc:creator>xuyang</dc:creator><author>xuyang</author><pubDate>Thu, 25 Feb 2010 10:02:00 GMT</pubDate><guid>http://www.blogjava.net/walwal/archive/2010/02/25/313915.html</guid><wfw:comment>http://www.blogjava.net/walwal/comments/313915.html</wfw:comment><comments>http://www.blogjava.net/walwal/archive/2010/02/25/313915.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/walwal/comments/commentRss/313915.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/walwal/services/trackbacks/313915.html</trackback:ping><description><![CDATA[<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="ProgId" content="Word.Document" />
<meta name="Generator" content="Microsoft Word 12" />
<meta name="Originator" content="Microsoft Word 12" />
<link rel="File-List" href="file:///C:%5CUsers%5Cxulee%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml" />
<link rel="Edit-Time-Data" href="file:///C:%5CUsers%5Cxulee%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_editdata.mso" /><!--[if !mso]>
<style>
v":* {behavior:url(#default#VML);}
o":* {behavior:url(#default#VML);}
w":* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<link rel="themeData" href="file:///C:%5CUsers%5Cxulee%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx" />
<link rel="colorSchemeMapping" href="file:///C:%5CUsers%5Cxulee%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml" /><!--[if gte mso 9]><xml>
Normal
0
false
7.8 磅
0
2
false
false
false
EN-US
ZH-CN
X-NONE
</xml><![endif]--><!--[if gte mso 9]><![endif]--><style>
<!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:宋体;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Cambria;
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:""@宋体";
panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{
mso-style-parent:"";
margin:0cm;
margin-bottom:.0001pt;
text-align:justify;
text-justify:inter-ideograph;
font-size:12.0pt;
font-family:"Calibri","sans-serif";
mso-bidi-font-family:"Times New Roman";}
h2
{
mso-style-link:"标题 2 Char";
margin-top:13.0pt;
margin-right:0cm;
margin-bottom:13.0pt;
margin-left:0cm;
text-align:justify;
text-justify:inter-ideograph;
line-height:173%;
page-break-after:avoid;
font-size:16.0pt;
font-family:"Cambria","serif";
mso-bidi-font-family:"Times New Roman";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
{
margin:0cm;
margin-bottom:.0001pt;
text-align:justify;
text-justify:inter-ideograph;
text-indent:21.0pt;
font-size:12.0pt;
font-family:"Calibri","sans-serif";
mso-bidi-font-family:"Times New Roman";}
span.2Char
{mso-style-name:"标题 2 Char";
mso-style-link:"标题 2";
font-family:"Cambria","serif";
mso-bidi-font-family:"Times New Roman";
font-weight:bold;}
p.a, li.a, div.a
{
margin-top:0cm;
margin-right:0cm;
margin-bottom:0cm;
margin-left:21.0pt;
margin-bottom:.0001pt;
text-indent:-21.0pt;
background:silver;
border:none;
padding:0cm;
font-size:10.5pt;
font-family:"Courier New";}
p.1, li.1, div.1
{
margin:0cm;
margin-bottom:.0001pt;
text-align:justify;
text-justify:inter-ideograph;
text-indent:24.0pt;
line-height:150%;
font-size:12.0pt;
font-family:"Calibri","sans-serif";
mso-bidi-font-family:"Times New Roman";}
p.a0, li.a0, div.a0
{
margin:0cm;
margin-bottom:.0001pt;
text-align:center;
line-height:150%;
font-size:12.0pt;
font-family:"Calibri","sans-serif";
mso-bidi-font-family:"Times New Roman";}
.MsoChpDefault
{
mso-bidi-font-family:"Times New Roman";}
/* Page Definitions */
@page
{}
@page Section1
{size:612.0pt 792.0pt;
margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.Section1
{page:Section1;}
/* List Definitions */
@list l0
{}
@list l0:level1
{
margin-left:21.0pt;
text-indent:-21.0pt;
font-family:Wingdings;}
@list l1
{}
@list l1:level1
{
margin-left:21.0pt;
text-indent:-21.0pt;
font-family:Wingdings;}
ol
{margin-bottom:0cm;}
ul
{margin-bottom:0cm;}
-->
</style><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{
mso-style-parent:"";
font-size:10.5pt;
font-family:"Calibri","sans-serif";}
table.MsoTableGrid
{
border:solid black 1.0pt;
font-size:10.5pt;
font-family:"Calibri","sans-serif";}
</style>
<![endif]-->
<h2>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="ProgId" content="Word.Document" />
<meta name="Generator" content="Microsoft Word 12" />
<meta name="Originator" content="Microsoft Word 12" />
<link rel="File-List" href="file:///C:%5CUsers%5Cxulee%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml" />
<link rel="themeData" href="file:///C:%5CUsers%5Cxulee%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx" />
<link rel="colorSchemeMapping" href="file:///C:%5CUsers%5Cxulee%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml" /><!--[if gte mso 9]><xml>
Normal
0
7.8 磅
0
2
false
false
false
EN-US
ZH-CN
X-NONE
</xml><![endif]--><!--[if gte mso 9]><![endif]--><style>
<!--
/* Font Definitions */
@font-face
{font-family:宋体;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:""@宋体";
panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{
mso-style-parent:"";
margin:0cm;
margin-bottom:.0001pt;
text-align:justify;
text-justify:inter-ideograph;
font-size:12.0pt;
font-family:"Calibri","sans-serif";
mso-bidi-font-family:"Times New Roman";}
h1
{
mso-style-link:"标题 1 Char";
margin-top:17.0pt;
margin-right:0cm;
margin-bottom:16.5pt;
margin-left:0cm;
text-align:justify;
text-justify:inter-ideograph;
line-height:240%;
page-break-after:avoid;
font-size:22.0pt;
font-family:"Calibri","sans-serif";}
span.1Char
{mso-style-name:"标题 1 Char";
mso-style-link:"标题 1";
font-weight:bold;}
.MsoChpDefault
{
mso-bidi-font-family:"Times New Roman";}
/* Page Definitions */
@page
{}
@page Section1
{size:612.0pt 792.0pt;
margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.Section1
{page:Section1;}
-->
</style><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{
mso-style-parent:"";
font-size:10.5pt;
font-family:"Calibri","sans-serif";}
</style>
<![endif]-->
<h1 style="margin: 7.8pt 0cm;"><span style="font-family: 宋体;">认证模式配置（二）</span></h1>
<span style="font-family: 宋体;">表单认证</span></h2>
<p style="margin: 6pt 0cm;"><span style="font-family: 宋体;">表单认证利用开发者开发的登录页面搜集用户名和密码，下面是登录页面的基本代码：</span></p>
<div style="border: 1pt solid windowtext; padding: 1pt 4pt; background: none repeat scroll 0% 0% silver;">
<p><span>&lt;form action="j_acegi_security_check"
method="post"&gt;</span></p>
<p>&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体;">用户名：</span>&lt;input name="j_username"&gt;&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体;">密　码：</span><span>&lt;input name="j_password"
type="password"&gt;&lt;br&gt;</span></p>
<p>&nbsp;&nbsp;&nbsp; 14<span style="font-family: 宋体;">天之内免登录</span><span>&lt;input name="_acegi_security_remember_me"
type="checkbox"&gt;&lt;br&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;input
type="submit" value="</span><span style="font-family: 宋体;">登录</span>"&gt;</p>
<p>&lt;/form&gt;</p>
</div>
<p style="margin: 6pt 0cm;"><span style="font-family: 宋体;">同时，还加入了退出、免登录和匿名三个过滤器。</span></p>
<p style="margin: 6pt 0cm;"><span style="font-family: 宋体;">代码：</span></p>
<div style="border: 1pt solid windowtext; padding: 1pt 4pt; background: none repeat scroll 0% 0% silver;">
<p>&lt;!-- <span style="font-family: 宋体;">退出过滤器</span> --&gt;</p>
<p><span>&lt;bean id="logoutFilter"
class="org.acegisecurity.ui.logout.LogoutFilter"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;constructor-arg
value="/index.jsp" /&gt;</span></p>
<p>&nbsp;&nbsp;&nbsp; &lt;constructor-arg&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;list&gt;</p>
<p><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;ref
local="rememberMeServices" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;ref
local="securityContextLogoutHandler" /&gt;</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/list&gt;</p>
<p>&nbsp;&nbsp;&nbsp; &lt;/constructor-arg&gt;</p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">安全上下文退出句柄</span> --&gt;</p>
<p><span>&lt;bean
id="securityContextLogoutHandler"
class="org.acegisecurity.ui.logout.SecurityContextLogoutHandler"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="invalidateHttpSession" value="true" /&gt;</span></p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- ================</p>
<p>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="font-family: 宋体;">认证部分</span></p>
<p>&nbsp;&nbsp;&nbsp; &nbsp;================ --&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">表单认证过滤器</span> --&gt;</p>
<p><span>&lt;bean
id="authenticationProcessingFilter"
class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="authenticationManager" ref="authenticationManager"
/&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="authenticationFailureUrl" value="/login.jsp?error=1"
/&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="defaultTargetUrl" value="/" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="alwaysUseDefaultTargetUrl" value="true" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="filterProcessesUrl" value="/j_acegi_security_check"
/&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="rememberMeServices" ref="rememberMeServices" /&gt;</span></p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">认证管理器</span> --&gt;</p>
<p><span>&lt;bean id="authenticationManager"
class="org.acegisecurity.providers.ProviderManager"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="providers"&gt;</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;list&gt;</p>
<p><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;ref
local="daoAuthenticationProvider" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;ref
local="anonymousAuthenticationProvider" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;ref
local="rememberMeAuthenticationProvider" /&gt;</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/list&gt;</p>
<p>&nbsp;&nbsp;&nbsp; &lt;/property&gt;</p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- DAO<span style="font-family: 宋体;">认证源提供者</span> --&gt;</p>
<p><span>&lt;bean id="daoAuthenticationProvider"
class="org.acegisecurity.providers.dao.DaoAuthenticationProvider"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="userDetailsService" ref="inMemDaoImpl" /&gt;</span></p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">用户信息源（内存）</span> --&gt;</p>
<p><span>&lt;bean id="inMemDaoImpl"
class="org.acegisecurity.userdetails.memory.InMemoryDaoImpl"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="userMap"&gt;</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;value&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; admin=password,ROLE_ADMIN,ROLE_USER</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; user1=password,ROLE_USER</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/value&gt;</p>
<p>&nbsp;&nbsp;&nbsp; &lt;/property&gt;</p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">免登录认证过滤器</span> --&gt;</p>
<p><span>&lt;bean id="rememberMeProcessingFilter"
class="org.acegisecurity.ui.rememberme.RememberMeProcessingFilter"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="authenticationManager" ref="authenticationManager"
/&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="rememberMeServices" ref="rememberMeServices"&gt;&lt;/property&gt;</span></p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">免登录服务</span> --&gt;</p>
<p><span>&lt;bean id="rememberMeServices"
class="org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="userDetailsService" ref="inMemDaoImpl" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="key" value="springRocks" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="tokenValiditySeconds" value="1209600" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="parameter" value="_acegi_security_remember_me" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="cookieName"
value="ACEGI_SECURITY_HASHED_REMEMBER_ME_COOKIE" /&gt;</span></p>
<p>&nbsp;&nbsp;&nbsp; &lt;!-- </p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="alwaysRemember" value="true" /&gt;</span></p>
<p>&nbsp;&nbsp;&nbsp; &nbsp;--&gt;</p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">免登录认证源提供者</span> --&gt;</p>
<p><span>&lt;bean
id="rememberMeAuthenticationProvider"
class="org.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="key" value="springRocks" /&gt;</span></p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">匿名认证过滤器</span> --&gt;</p>
<p><span>&lt;bean id="anonymousProcessingFilter"
class="org.acegisecurity.providers.anonymous.AnonymousProcessingFilter"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="key" value="foobar" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="userAttribute" value="anonymousUser,ROLE_ANONYMOUS"
/&gt;</span></p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">匿名认证源提供者</span> --&gt;</p>
<p><span>&lt;bean id="anonymousAuthenticationProvider"
class="org.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="key" value="foobar" /&gt;</span></p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">异常处理过滤器</span> --&gt;</p>
<p><span>&lt;bean id="exceptionTranslationFilter"
class="org.acegisecurity.ui.ExceptionTranslationFilter"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="authenticationEntryPoint"
ref="authenticationProcessingFilterEntryPoint" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="accessDeniedHandler" ref="accessDeniedHandlerImpl"
/&gt;</span></p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">表单认证入口点</span> --&gt;</p>
<p><span>&lt;bean
id="authenticationProcessingFilterEntryPoint" class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="loginFormUrl" value="/login.jsp" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="forceHttps" value="false" /&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="serverSideRedirect" value="false" /&gt;</span></p>
<p>&lt;/bean&gt;</p>
<p>&lt;!-- <span style="font-family: 宋体;">授权拒绝句柄</span> --&gt;</p>
<p><span>&lt;bean id="accessDeniedHandlerImpl"
class="org.acegisecurity.ui.AccessDeniedHandlerImpl"&gt;</span></p>
<p><span>&nbsp;&nbsp;&nbsp; &lt;property
name="errorPage" value="/accessDenied.jsp" /&gt;</span></p>
<p>&lt;/bean&gt;</p>
</div>
<p style="margin: 6pt 0cm;"><span style="font-family: 宋体;">说明：</span></p>
<p style="margin: 6pt 0cm;"><span style="font-family: 宋体;">在基本认证过滤器之前加入退出过滤器，之后加入免登录过滤器和匿名过滤器。参数：</span></p>
<table style="width: 100%; border-collapse: collapse; border: medium none;" border="1" cellpadding="0" cellspacing="0" width="100%">
    <tbody>
        <tr>
            <td style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p style="text-align: center;" align="center">Bean</p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p style="text-align: center;" align="center"><span style="font-family: 宋体;">参数</span></p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p style="text-indent: 24pt;"><span style="font-family: 宋体;">描述</span></p>
            </td>
        </tr>
        <tr>
            <td rowspan="2" style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p><span>logoutFilter<br />
            </span><span style="font-family: 宋体;">退出过滤器</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p><span style="font-family: 宋体;">构造参数</span>1</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指定退出后的重定向</span>url</p>
            </td>
        </tr>
        <tr>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p><span style="font-family: 宋体;">构造参数</span>2</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指派退出的执行句柄，多值</span></p>
            <p style="margin-left: 21pt; text-indent: -21pt;"><span style="font-family: 宋体;">退出免登录服务</span></p>
            <p style="margin-left: 21pt; text-indent: -21pt;"><span style="font-family: 宋体;">退出安全上下文</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p><span>securityContextLogoutHandler<br />
            </span><span style="font-family: 宋体;">安全上下文退出句柄</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>invalidateHttpSession</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">是否让</span>HTTP<span style="font-family: 宋体;">会话失效</span></p>
            </td>
        </tr>
        <tr>
            <td rowspan="6" style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p><span>authenticationProcessingFilter<br />
            </span><span style="font-family: 宋体;">基本认证过滤器</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>authenticationManager</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指派认证管理器</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>authenticationFailureUrl</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">认证失败的</span>URL<span style="font-family: 宋体;">。</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>defaultTargetUrl</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">认证成功之后的缺省</span>URL<span style="font-family: 宋体;">。两种情况下使用：</span>1. <span style="font-family: 宋体;">用户直接进入登录页；</span>2. alwaysUseDefaultTargetUrl<span style="font-family: 宋体;">设为</span>true<span style="font-family: 宋体;">。（一般情况是用户进入受保护页时，</span>acegi<span style="font-family: 宋体;">会先跳转到登录页，认证成功之后再跳转到用户要访问的页面。如果用户直接进入登录页，认证成功之后</span>acegi<span style="font-family: 宋体;">不知道用户要访问的页面是什么时，采用该值。）</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>alwaysUseDefaultTargetUrl</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">是否无论用户要访问的页面是什么，认证成功之后都跳转到</span>defaultTargetUrl<span style="font-family: 宋体;">。</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>filterProcessesUrl</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">表单提交的</span>Action<span style="font-family: 宋体;">，默认值为</span><span><br />
            /j_acegi_security_check</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>rememberMeServices</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指派免登录服务</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p><span>authenticationManager<br />
            </span><span style="font-family: 宋体;">认证管理器</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>providers</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指派认证源提供者，多值</span></p>
            <p style="margin-left: 21pt; text-indent: -21pt;">DAO<span style="font-family: 宋体;">认证源提供者</span></p>
            <p style="margin-left: 21pt; text-indent: -21pt;"><span style="font-family: 宋体;">免登录认证源提供者</span></p>
            <p style="margin-left: 21pt; text-indent: -21pt;"><span style="font-family: 宋体;">匿名认证源提供者</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p><span>daoAuthenticationProvider<br />
            DAO</span><span style="font-family: 宋体;">认证源提供者</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>userDetailsService</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指派用户信息源</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p><span>inMemDaoImpl<br />
            </span><span style="font-family: 宋体;">用户信息源（内存）</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>userMap</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">用户信息</span></p>
            </td>
        </tr>
        <tr>
            <td rowspan="2" style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p>rememberMeProcessingFilter</p>
            <p><span style="font-family: 宋体;">免登录过滤器</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>authenticationManager</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指派认证管理器</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>rememberMeServices</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指派免登录服务</span></p>
            </td>
        </tr>
        <tr style="height: 10.75pt;">
            <td rowspan="6" style="width: 39.3%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="39%">
            <p>rememberMeServices</p>
            <p><span style="font-family: 宋体;">免登录服务</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="26%">
            <p>userDetailsService</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指派用户信息源</span></p>
            </td>
        </tr>
        <tr style="height: 10.75pt;">
            <td style="width: 26.58%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="26%">
            <p>key</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指定密钥</span></p>
            </td>
        </tr>
        <tr style="height: 10.75pt;">
            <td style="width: 26.58%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="26%">
            <p>tokenValiditySeconds</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">免登录的时间段，单位为秒，缺省值为</span>1209600<span style="font-family: 宋体;">，合</span>14<span style="font-family: 宋体;">天</span></p>
            </td>
        </tr>
        <tr style="height: 10.75pt;">
            <td style="width: 26.58%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="26%">
            <p>parameter</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">在登录表单中提交的参数名，</span>acegi<span style="font-family: 宋体;">依据当前值判断用户是否需要免登录服务，缺省值为：</span><span><br />
            _acegi_security_remember_me</span></p>
            </td>
        </tr>
        <tr style="height: 10.75pt;">
            <td style="width: 26.58%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="26%">
            <p>cookieName</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">保存在浏览器的</span>Cookie<span style="font-family: 宋体;">名，</span>acegi<span style="font-family: 宋体;">依据</span>cookie<span style="font-family: 宋体;">值完成自动登录，达到用户免登录目的，缺省值为：</span><span><br />
            ACEGI_SECURITY_HASHED_<br />
            REMEMBER_ME_COOKIE</span></p>
            </td>
        </tr>
        <tr style="height: 10.75pt;">
            <td style="width: 26.58%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="26%">
            <p>alwaysRemember</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt; height: 10.75pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">是否自动提供免登录服务，将该参数设为</span>true<span style="font-family: 宋体;">时，无论用户是否选择都提供免登录服务，设为</span>true<span style="font-family: 宋体;">时会覆盖</span>parameter<span style="font-family: 宋体;">的作用。（一般在</span>HTTP<span style="font-family: 宋体;">基本认证时采用，表单认证时不用）</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p>rememberMeAuthenticationProvider</p>
            <p><span style="font-family: 宋体;">免登录认证源提供者</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>key</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指定密钥，和免登录服务的密钥保持一致</span></p>
            </td>
        </tr>
        <tr style="height: 16.15pt;">
            <td rowspan="2" style="width: 39.3%; padding: 0cm 5.4pt; height: 16.15pt;" valign="top" width="39%">
            <p>anonymousProcessingFilter</p>
            <p><span style="font-family: 宋体;">匿名过滤器</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt; height: 16.15pt;" valign="top" width="26%">
            <p>userAttribute</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt; height: 16.15pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指定匿名登录的用户和角色，格式：</span></p>
            <p>uid,role</p>
            </td>
        </tr>
        <tr style="height: 16.1pt;">
            <td style="width: 26.58%; padding: 0cm 5.4pt; height: 16.1pt;" valign="top" width="26%">
            <p>key</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt; height: 16.1pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指定密钥</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p><span>anonymousAuthenticationProvider<br />
            </span><span style="font-family: 宋体;">匿名认证源提供者</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>key</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指定密钥，和匿名过滤器的密钥保持一致</span></p>
            </td>
        </tr>
        <tr>
            <td rowspan="2" style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p><span>exceptionTranslationFilter<br />
            </span><span style="font-family: 宋体;">异常处理过滤器</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>authenticationEntryPoint</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指派认证入口点</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>accessDeniedHandler</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指派授权拒绝处理器</span></p>
            </td>
        </tr>
        <tr>
            <td rowspan="3" style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p><span>authenticationProcessingFilterEntryPoint<br />
            </span><span style="font-family: 宋体;">表单认证入口点</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>loginFormUrl</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">指定登录页面，如：</span>/login.jsp</p>
            </td>
        </tr>
        <tr>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>forceHttps</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">是否强制使用</span>https<span style="font-family: 宋体;">协议</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>serverSideRedirect</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">是否采用</span>WEB<span style="font-family: 宋体;">服务器内部跳转到登录页面</span></p>
            </td>
        </tr>
        <tr>
            <td style="width: 39.3%; padding: 0cm 5.4pt;" valign="top" width="39%">
            <p><span>accessDeniedHandlerImpl<br />
            </span><span style="font-family: 宋体;">授权拒绝处理器</span></p>
            </td>
            <td style="width: 26.58%; padding: 0cm 5.4pt;" valign="top" width="26%">
            <p>errorPage</p>
            </td>
            <td style="width: 34.12%; padding: 0cm 5.4pt;" valign="top" width="34%">
            <p><span style="font-family: 宋体;">访问无权限的页面时，</span>acegi<span style="font-family: 宋体;">跳转的错误页面</span></p>
            </td>
        </tr>
    </tbody>
</table>
<p style="margin: 6pt 0cm;"><span>&nbsp;Spring
Bean</span><span style="font-family: 宋体;">关系图：</span></p>
<div align="center"><img alt="" src="http://www.blogjava.net/images/blogjava_net/walwal/image12.png" height="822" width="964" /><br />
</div>
<p style="margin: 6pt 0cm;"><span><!--[if gte vml 1]>
<![endif]--></span></p>
<p style="margin: 6pt 0cm;"><span style="font-family: 宋体;">说明：每个图块为一个</span>Spring Bean<span style="font-family: 宋体;">。<em>斜体</em></span><em>Bean</em><span style="font-family: 宋体;">和同名正体</span>Bean<span style="font-family: 宋体;">为同一个</span>Bean<span style="font-family: 宋体;">。</span></p>
<p style="margin: 6pt 0cm;"><span style="font-family: 宋体;">问题：</span></p>
<p style="margin: 6pt 0cm;"><span style="font-family: 宋体;">在表单认证下，加入了&#8220;退出&#8221;之后，是可以退出</span>Acegi<span style="font-family: 宋体;">安全上下文的。因此之前</span>HTTP<span style="font-family: 宋体;">基本认证不能退出可能是</span>Acegi<span style="font-family: 宋体;">的一个</span>BUG<span style="font-family: 宋体;">。</span></p>
<img src ="http://www.blogjava.net/walwal/aggbug/313915.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/walwal/" target="_blank">xuyang</a> 2010-02-25 18:02 <a href="http://www.blogjava.net/walwal/archive/2010/02/25/313915.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Acegi配置指南(3)</title><link>http://www.blogjava.net/walwal/archive/2010/02/23/313710.html</link><dc:creator>xuyang</dc:creator><author>xuyang</author><pubDate>Tue, 23 Feb 2010 05:53:00 GMT</pubDate><guid>http://www.blogjava.net/walwal/archive/2010/02/23/313710.html</guid><wfw:comment>http://www.blogjava.net/walwal/comments/313710.html</wfw:comment><comments>http://www.blogjava.net/walwal/archive/2010/02/23/313710.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/walwal/comments/commentRss/313710.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/walwal/services/trackbacks/313710.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: v\:* {behavior:url(#default#VML);}o\:* {behavior:url(#default#VML);}w\:* {behavior:url(#default#VML);}.shape {behavior:url(#default#VML);}Normal0false7.8 磅02false...&nbsp;&nbsp;<a href='http://www.blogjava.net/walwal/archive/2010/02/23/313710.html'>阅读全文</a><img src ="http://www.blogjava.net/walwal/aggbug/313710.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/walwal/" target="_blank">xuyang</a> 2010-02-23 13:53 <a href="http://www.blogjava.net/walwal/archive/2010/02/23/313710.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Acegi配置指南(2)</title><link>http://www.blogjava.net/walwal/archive/2010/02/22/313656.html</link><dc:creator>xuyang</dc:creator><author>xuyang</author><pubDate>Mon, 22 Feb 2010 09:46:00 GMT</pubDate><guid>http://www.blogjava.net/walwal/archive/2010/02/22/313656.html</guid><wfw:comment>http://www.blogjava.net/walwal/comments/313656.html</wfw:comment><comments>http://www.blogjava.net/walwal/archive/2010/02/22/313656.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/walwal/comments/commentRss/313656.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/walwal/services/trackbacks/313656.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: v\:* {behavior:url(#default#VML);}o\:* {behavior:url(#default#VML);}w\:* {behavior:url(#default#VML);}.shape {behavior:url(#default#VML);}Normal0false7.8 磅02false...&nbsp;&nbsp;<a href='http://www.blogjava.net/walwal/archive/2010/02/22/313656.html'>阅读全文</a><img src ="http://www.blogjava.net/walwal/aggbug/313656.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/walwal/" target="_blank">xuyang</a> 2010-02-22 17:46 <a href="http://www.blogjava.net/walwal/archive/2010/02/22/313656.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Acegi配置指南(1)</title><link>http://www.blogjava.net/walwal/archive/2010/02/21/313491.html</link><dc:creator>xuyang</dc:creator><author>xuyang</author><pubDate>Sun, 21 Feb 2010 01:55:00 GMT</pubDate><guid>http://www.blogjava.net/walwal/archive/2010/02/21/313491.html</guid><wfw:comment>http://www.blogjava.net/walwal/comments/313491.html</wfw:comment><comments>http://www.blogjava.net/walwal/archive/2010/02/21/313491.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/walwal/comments/commentRss/313491.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/walwal/services/trackbacks/313491.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: v\:* {behavior:url(#default#VML);}o\:* {behavior:url(#default#VML);}w\:* {behavior:url(#default#VML);}.shape {behavior:url(#default#VML);}Normal0false7.8 磅02false...&nbsp;&nbsp;<a href='http://www.blogjava.net/walwal/archive/2010/02/21/313491.html'>阅读全文</a><img src ="http://www.blogjava.net/walwal/aggbug/313491.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/walwal/" target="_blank">xuyang</a> 2010-02-21 09:55 <a href="http://www.blogjava.net/walwal/archive/2010/02/21/313491.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>BO</title><link>http://www.blogjava.net/walwal/archive/2006/12/29/90690.html</link><dc:creator>xuyang</dc:creator><author>xuyang</author><pubDate>Fri, 29 Dec 2006 03:33:00 GMT</pubDate><guid>http://www.blogjava.net/walwal/archive/2006/12/29/90690.html</guid><wfw:comment>http://www.blogjava.net/walwal/comments/90690.html</wfw:comment><comments>http://www.blogjava.net/walwal/archive/2006/12/29/90690.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/walwal/comments/commentRss/90690.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/walwal/services/trackbacks/90690.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 1												/**/										/*																										  2														 * 创建日期 2006-12-22						  3														 *						  4														 * TODO 要更改此生成的文件的模板，请转至		...&nbsp;&nbsp;<a href='http://www.blogjava.net/walwal/archive/2006/12/29/90690.html'>阅读全文</a><img src ="http://www.blogjava.net/walwal/aggbug/90690.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/walwal/" target="_blank">xuyang</a> 2006-12-29 11:33 <a href="http://www.blogjava.net/walwal/archive/2006/12/29/90690.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>