<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feeds.feedsky.com/styles/temp01.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link href="http://feeds.feedsky.com/csdn.net/stenlylee" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feeds.feedsky.com/csdn.net/stenlylee" type="application/rss+xml"></fs:self_link><lastBuildDate>Thu, 05 Feb 2009 11:30:00 GMT</lastBuildDate><title>niinoo</title><description>Stenly Lee的工作记录</description><link>http://blog.csdn.net/stenlylee/</link><item><title>由于csdn不能放广告，所以我主要还是在javaeye的博客上发文章，呵呵</title><link>http://blog.csdn.net/stenlylee/archive/2009/02/05/3863867.aspx</link><wfw:comment>http://blog.csdn.net/stenlylee/comments/3863867.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/stenlylee/comments/commentRss/3863867.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=3863867</trackback:ping><description>http://stenlylee.javaeye.com倒不是为了赚钱，只是好玩，外加看好JavaEye这个网站今后的发展只是JavaEye的编辑器功能太差劲了……用的太不舒服了……阿斯顿发送的&lt;img src =&quot;http://blog.csdn.net/stenlylee/aggbug/3863867.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Thu, 05 Feb 2009 19:30:00 +0800</pubDate><author>李太宁</author><comments>http://blog.csdn.net/stenlylee/archive/2009/02/05/3863867.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/stenlylee/archive/2009/02/05/3863867.aspx</guid><dc:creator>李太宁</dc:creator><fs:srclink>http://blog.csdn.net/stenlylee/archive/2009/02/05/3863867.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/stenlylee/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/stenlylee/~1317737/206290957/1322174</fs:itemid></item><item><title>Seam 2.1 安全模块框架 文档翻译 005</title><link>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066302.aspx</link><wfw:comment>http://blog.csdn.net/stenlylee/comments/3066302.aspx</wfw:comment><slash:comments>4</slash:comments><wfw:commentRss>http://blog.csdn.net/stenlylee/comments/commentRss/3066302.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=3066302</trackback:ping><description>15.5. 错误消息 安全API内嵌了针对各种安全相关操作的faces messages。下面这个表里面列出了在message.properties文件里面修改这些消息的message keys。如果想要禁用这些消息，只要在资源文件里面将这些错误消息的值置空就ok了。 Table 15.6. 安全消息    Message Key 描述  org.jboss.seam.loginSuccessful 不用多说了，看字面就知道什么意思了  org.jboss.seam.loginFailed    org.jboss.seam.NotLoggedIn    org.jboss.seam.AlreadyLoggedIn     15.6. 验证（Authorization） Seam安全API里面提供了很多验证权限的途径，你可以在调用组件的时候、执行组件方法的时候以及在页面内部进行调用权限验证组件。这一节介绍了这些验证途径。如果你需要使用任何高级特性（例如基于规则的权限验证），你一定要记住在components.xml文件里面指明（配置方法见前面的章&lt;img src =&quot;http://blog.csdn.net/stenlylee/aggbug/3066302.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Mon, 13 Oct 2008 10:37:00 +0800</pubDate><author>李太宁</author><comments>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066302.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/stenlylee/archive/2008/10/13/3066302.aspx</guid><dc:creator>李太宁</dc:creator><fs:srclink>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066302.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/stenlylee/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/stenlylee/~1317737/206290958/1322174</fs:itemid></item><item><title>Seam 2.1 安全模块框架 文档翻译 004</title><link>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066296.aspx</link><wfw:comment>http://blog.csdn.net/stenlylee/comments/3066296.aspx</wfw:comment><slash:comments>1</slash:comments><wfw:commentRss>http://blog.csdn.net/stenlylee/comments/commentRss/3066296.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=3066296</trackback:ping><description>15.4. 身份管理 身份管理功能提供了一组标准的API接口，用来管理Seam应用程序的用户和角色。它不管这些用户和角色数据在后台是如何存储的（例如数据库、LDAP等等）。身份管理API的核心部分就是identityManager组件。该组件提供了所有常用的相关功能，例如新建用户、修改用户、删除用户、给用户授权一个角色或者取消用户拥有的某个角色、用户密码修改、设置用户帐号是否有效、验证用户权限以及列出所有用户和角色。 在使用identityManager之前，必须配置一个或多个IdentityStore。这些组件负责具体的数据存储，不管相关数据是存储在数据库中还是LDAP服务器中，或是其他什么东西里面。  15.4.1. 配置IdentityManager identityManager组件允许配置多个不同的存储身份信息的数据源。这就意味着，你可以将用户身份信息存储在LDAP目录下，同时将角色信息存储在相关的数据库中。 Seam支持两种IdentityStore的实现方式：1、JpaIdentityStore，将用户身份和角色信息存储在数据库中。如果没有明确指定存储方式，那么就使用这种&lt;img src =&quot;http://blog.csdn.net/stenlylee/aggbug/3066296.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Mon, 13 Oct 2008 10:36:00 +0800</pubDate><author>李太宁</author><comments>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066296.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/stenlylee/archive/2008/10/13/3066296.aspx</guid><dc:creator>李太宁</dc:creator><fs:srclink>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066296.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/stenlylee/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/stenlylee/~1317737/206290959/1322174</fs:itemid></item><item><title>Seam 2.1 安全模块框架 文档翻译 003</title><link>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066294.aspx</link><wfw:comment>http://blog.csdn.net/stenlylee/comments/3066294.aspx</wfw:comment><slash:comments>7</slash:comments><wfw:commentRss>http://blog.csdn.net/stenlylee/comments/commentRss/3066294.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=3066294</trackback:ping><description>15.3. 验证 Seam安全中的验证特性是基于JAAS （Java Authentication and Authorization Service）开发的，它提供了用来进行用户身份认证的高度可配置的接口。然而，针对复杂多变的验证需求，Seam提供了一套非常简单的验证方法来隐藏JAAS的复杂性。  15.3.1. 配置一个验证组件 注意： 如果你使用Seam的身份管理功能（稍后介绍），那么就不用特地建立一个验证组件（意味着你可以跳过这一章）。  这种简单的验证方法由Seam的一个内置的JAAS登录组件提供，叫做SeamLoginModule，它将验证功能转移到你自己编写的一个Seam组件之中。该登录模块已经作为Seam的默认程序规则设置好了，你不需要额外的配置文件。你可以在一个编写一个你自己的方法来进行验证，稍经修改也可以用来结合其他第三方程序进行验证。这些简单的配置需要在components.xml中添加一个identity组件：  &lt;img src =&quot;http://blog.csdn.net/stenlylee/aggbug/3066294.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Mon, 13 Oct 2008 10:32:00 +0800</pubDate><author>李太宁</author><comments>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066294.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/stenlylee/archive/2008/10/13/3066294.aspx</guid><dc:creator>李太宁</dc:creator><fs:srclink>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066294.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/stenlylee/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/stenlylee/~1317737/206290960/1322174</fs:itemid></item><item><title>Seam 2.1 安全模块框架 文档翻译 002</title><link>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066293.aspx</link><wfw:comment>http://blog.csdn.net/stenlylee/comments/3066293.aspx</wfw:comment><slash:comments>1</slash:comments><wfw:commentRss>http://blog.csdn.net/stenlylee/comments/commentRss/3066293.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=3066293</trackback:ping><description>15.2. 关闭安全控制 某些情况下，可能会想要将安全控制关闭掉，例如执行单元测试的时候。通过调用静态方法 Identity.setSecurityEnabled(false) 来关闭安全认证。这样就能组织以下安全认证：   实体安全 Entity Security  Hibernate安全拦截  Seam安全拦截  页面约束&lt;img src =&quot;http://blog.csdn.net/stenlylee/aggbug/3066293.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Mon, 13 Oct 2008 10:30:00 +0800</pubDate><author>李太宁</author><comments>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066293.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/stenlylee/archive/2008/10/13/3066293.aspx</guid><dc:creator>李太宁</dc:creator><fs:srclink>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066293.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/stenlylee/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/stenlylee/~1317737/206290961/1322174</fs:itemid></item><item><title>Seam 2.1 安全模块框架 文档翻译 001</title><link>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066290.aspx</link><wfw:comment>http://blog.csdn.net/stenlylee/comments/3066290.aspx</wfw:comment><slash:comments>1</slash:comments><wfw:commentRss>http://blog.csdn.net/stenlylee/comments/commentRss/3066290.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=3066290</trackback:ping><description>15.1. 概述 Seam安全API为你使用Seam开发的应用程序提供了大量与安全认证先关的特性，包含了以下几块：   安全验证 - 一个可扩展的、基于JAAS的安全验证层，允许用户to authenticate against any security provider  身份管理 - 用于管理Seam程序中所涉及的用户及角色的接口  权限验证 - 一个应用十分广泛的权限验证框架，支持用户角色、持久化和基于规则的权限设置，能够灵活地实现属于用户自己的安全设置  权限管理 - 一组内置的Seam组件，能让应用程序的安全政策变得容易管理  验证码支持 - 帮助防止通过软件或脚本对你用Seam开发的网站进行攻击  等等  这一章将会详细介绍每一个细节。&lt;img src =&quot;http://blog.csdn.net/stenlylee/aggbug/3066290.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Mon, 13 Oct 2008 10:27:00 +0800</pubDate><author>李太宁</author><comments>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066290.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/stenlylee/archive/2008/10/13/3066290.aspx</guid><dc:creator>李太宁</dc:creator><fs:srclink>http://blog.csdn.net/stenlylee/archive/2008/10/13/3066290.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/stenlylee/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/stenlylee/~1317737/206290962/1322174</fs:itemid></item><item><title>Hibernate Search, Lucene 与 JBoss Seam</title><link>http://blog.csdn.net/stenlylee/archive/2008/09/28/2993462.aspx</link><wfw:comment>http://blog.csdn.net/stenlylee/comments/2993462.aspx</wfw:comment><slash:comments>2</slash:comments><wfw:commentRss>http://blog.csdn.net/stenlylee/comments/commentRss/2993462.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2993462</trackback:ping><description>Hibernate Search, Lucene 与 JBoss Seam&lt;img src =&quot;http://blog.csdn.net/stenlylee/aggbug/2993462.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Mon, 29 Sep 2008 01:36:00 +0800</pubDate><author>李太宁</author><comments>http://blog.csdn.net/stenlylee/archive/2008/09/28/2993462.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/stenlylee/archive/2008/09/28/2993462.aspx</guid><dc:creator>李太宁</dc:creator><fs:srclink>http://blog.csdn.net/stenlylee/archive/2008/09/28/2993462.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/stenlylee/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/stenlylee/~1317737/206290963/1322174</fs:itemid></item><item><title>在 JSF 的 Managed Bean 中获得request session对象</title><link>http://blog.csdn.net/stenlylee/archive/2008/09/27/2988290.aspx</link><wfw:comment>http://blog.csdn.net/stenlylee/comments/2988290.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/stenlylee/comments/commentRss/2988290.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2988290</trackback:ping><description>在 JSF 的 Managed Bean 中获得request session对象&lt;img src =&quot;http://blog.csdn.net/stenlylee/aggbug/2988290.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Sat, 27 Sep 2008 23:22:00 +0800</pubDate><author>李太宁</author><comments>http://blog.csdn.net/stenlylee/archive/2008/09/27/2988290.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/stenlylee/archive/2008/09/27/2988290.aspx</guid><dc:creator>李太宁</dc:creator><fs:srclink>http://blog.csdn.net/stenlylee/archive/2008/09/27/2988290.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/stenlylee/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/stenlylee/~1317737/206290964/1322174</fs:itemid></item><item><title>【翻译】Seam Bean验证快速进阶II：自定义约束</title><link>http://blog.csdn.net/stenlylee/archive/2008/06/24/2583476.aspx</link><wfw:comment>http://blog.csdn.net/stenlylee/comments/2583476.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/stenlylee/comments/commentRss/2583476.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2583476</trackback:ping><description>seam 验证&lt;img src =&quot;http://blog.csdn.net/stenlylee/aggbug/2583476.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Wed, 25 Jun 2008 04:23:00 +0800</pubDate><author>stenlylee</author><comments>http://blog.csdn.net/stenlylee/archive/2008/06/24/2583476.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/stenlylee/archive/2008/06/24/2583476.aspx</guid><dc:creator>stenlylee</dc:creator><fs:srclink>http://blog.csdn.net/stenlylee/archive/2008/06/24/2583476.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/stenlylee/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/stenlylee/~1317737/206290965/1322174</fs:itemid></item><item><title>Java:Web应用下实现定时任务的简便方法</title><link>http://blog.csdn.net/stenlylee/archive/2008/06/12/2537494.aspx</link><wfw:comment>http://blog.csdn.net/stenlylee/comments/2537494.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/stenlylee/comments/commentRss/2537494.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2537494</trackback:ping><description>Java:Web应用下实现定时任务的简便方法&lt;img src =&quot;http://blog.csdn.net/stenlylee/aggbug/2537494.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Thu, 12 Jun 2008 09:44:00 +0800</pubDate><author>stenlylee</author><comments>http://blog.csdn.net/stenlylee/archive/2008/06/12/2537494.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/stenlylee/archive/2008/06/12/2537494.aspx</guid><dc:creator>stenlylee</dc:creator><fs:srclink>http://blog.csdn.net/stenlylee/archive/2008/06/12/2537494.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/stenlylee/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/stenlylee/~1317737/206290966/1322174</fs:itemid></item></channel></rss>