resin的web.xml两个小应用

Posted by 猪头小队长 | 程序设计 | Thursday 22 November 2007 15:08

这两个玩意比较常用,整理一下。

  1. 个性化JSP扩展名
    虽然从Google或者是Baidu能够搜到一大坨的关于个性化JSP扩展名的设置,但是几乎没有可用的,:),天下文章一大抄,这就是中国互联网的现状。
      <servlet> 
        <servlet-name>jsp</servlet-name> 
        <servlet-class>com.caucho.jsp.JspServlet</servlet-class
        <init-param> 
          <param-name>param1</param-name> 
          <param-value>value1</param-value> 
        </init-param> 
        <load-on-startup>-2147483646</load-on-startup> 
      </servlet> 
      <servlet-mapping> 
        <servlet-name>jsp</servlet-name> 
        <url-pattern>*.simplelife</url-pattern> 
      </servlet-mapping>

    这个配置的意思就是,用jsp引擎来执行*.simplelife这样的扩展名的文件,于是*.simplelife就相当于*.jsp了。

  2. 使用resin来管理权限
    前几天配置trac,一个简单高效的项目管理系统,这个系统的用户认证并没有自己开发,而是基于Apache的认证的,这种精神是我常常缺失的,为了系统的所谓的完整性,总在开发一些重复的组件。尤其是在一个内部使用的系统中,这种权限认证真的是方便高效。
      <security-constraint>
        <web-resource-collection>
          <web-resource-name>Protected Context</web-resource-name>
          <url-pattern>/*</url-pattern>
        </web-resource-collection>       
        <auth-constraint role-name='simplelifeAdmin'/>
      </security-constraint>   

      <authenticator type="com.caucho.server.security.XmlAuthenticator">
        <init>
          <user name='admin' password='54admin' roles='simplelifeAdmin'/>
          <user name='simplelife' password='simplelife.cn' roles='user'/>
          <password-digest>none</password-digest>
        </init>
      </authenticator>

    配置分成两部分,下面authenticator的的意思是:
    - 用户名"admin",密码是"54admin",角色是"simplelifeAdmin";
    - 用户名"simplelife",密码是"simplelife.cn",角色是"user";
    - 密码是没有经过加密的,也就是明文的

    上面的security-constraint,的意思是:
    -  对这样的URL"/*",角色simplelifeAdmin拥有访问权限
    同理可以配置,角色是"user"的用户,拥有什么样的访问权限,只要增加一个security-constraint节点就可以了。

No Comments

No comments yet.

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.