[jboss-cvs] jboss-seam/examples/wiki/resources/WEB-INF ...

Christian Bauer christian.bauer at jboss.com
Wed Feb 21 11:24:10 EST 2007


  User: cbauer  
  Date: 07/02/21 11:24:10

  Modified:    examples/wiki/resources/WEB-INF     faces-config.xml
                        pages.xml components.xml web.xml
  Log:
  User registration/login and some security
  JBSEAM-870
  JBSEAM-871
  JBSEAM-874
  
  Revision  Changes    Path
  1.2       +9 -7      jboss-seam/examples/wiki/resources/WEB-INF/faces-config.xml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: faces-config.xml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/resources/WEB-INF/faces-config.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -b -r1.1 -r1.2
  --- faces-config.xml	1 Feb 2007 07:08:27 -0000	1.1
  +++ faces-config.xml	21 Feb 2007 16:24:10 -0000	1.2
  @@ -10,6 +10,7 @@
         <view-handler>org.jboss.seam.ui.facelet.SeamFaceletViewHandler</view-handler>
      </application>
   
  +    <!-- Why do I have to define this here again? It's already in wiki.taglib.xml! -->
       <component>
           <component-type>org.jboss.seam.wiki.core.ui.UIWikiFormattedText</component-type>
           <component-class>org.jboss.seam.wiki.core.ui.UIWikiFormattedText</component-class>
  @@ -17,6 +18,14 @@
               <property-name>value</property-name>
               <property-class>java.lang.String</property-class>
           </property>
  +        <property>
  +            <property-name>linkStyleClass</property-name>
  +            <property-class>java.lang.String</property-class>
  +        </property>
  +        <property>
  +            <property-name>brokenLinkStyleClass</property-name>
  +            <property-class>java.lang.String</property-class>
  +        </property>
       </component>
   
      <!-- Seam transaction management -->
  @@ -24,11 +33,4 @@
         <phase-listener>org.jboss.seam.jsf.TransactionalSeamPhaseListener</phase-listener>
      </lifecycle>
   
  -    <!-- No Seam transaction management -->
  -   <!--  
  -   <lifecycle>
  -      <phase-listener>org.jboss.seam.jsf.SeamPhaseListener</phase-listener>
  -   </lifecycle>
  -   -->
  -
   </faces-config>
  
  
  
  1.3       +62 -4     jboss-seam/examples/wiki/resources/WEB-INF/pages.xml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: pages.xml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/resources/WEB-INF/pages.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -b -r1.2 -r1.3
  --- pages.xml	16 Feb 2007 16:26:45 -0000	1.2
  +++ pages.xml	21 Feb 2007 16:24:10 -0000	1.3
  @@ -1,11 +1,13 @@
   <?xml version="1.0" encoding="UTF-8"?>
   <!DOCTYPE pages PUBLIC "-//Seam/Seam Pages DTD 1.1//EN" "http://jboss.com/products/seam/pages-1.1.dtd">
   
  -<pages>
  +<pages login-view-id="/loginRequired.xhtml">
   
       <page view-id="/display.xhtml" action="#{browser.prepare()}">
           <param name="nodeId" value="#{browser.nodeId}"/>
   
  +        <end-conversation/>
  +
           <navigation>
               <rule if="#{!empty currentDocument}">
                   <render view-id="/docDisplay.xhtml"/>
  @@ -19,6 +21,8 @@
       <page view-id="/docDisplay.xhtml" action="#{browser.prepare()}">
           <param name="nodeId" value="#{browser.nodeId}"/>
   
  +        <end-conversation/>
  +
           <navigation>
               <rule if-outcome="createDoc">
                   <redirect view-id="/docEdit.xhtml">
  @@ -38,7 +42,8 @@
   
       </page>
   
  -    <page view-id="/docEdit.xhtml">
  +    <page view-id="/docEdit.xhtml" login-required="true">
  +        <restrict/>
           <navigation from-action="#{documentHome.remove}">
               <end-conversation/>
               <redirect view-id="/display.xhtml">
  @@ -50,6 +55,8 @@
       <page view-id="/dirDisplay.xhtml" action="#{browser.prepare()}">
           <param name="nodeId" value="#{browser.nodeId}"/>
   
  +        <end-conversation/>
  +
           <navigation>
               <rule if-outcome="createDir">
                   <redirect view-id="/dirEdit.xhtml">
  @@ -70,8 +77,8 @@
   
       </page>
   
  -    <page view-id="/dirEdit.xhtml">
  -
  +    <page view-id="/dirEdit.xhtml" login-required="true">
  +        <restrict/>
           <navigation from-action="#{directoryHome.remove}">
               <rule if="#{!empty directoryHome.parentDirectory}">
                   <end-conversation/>
  @@ -89,6 +96,57 @@
   
       </page>
   
  +    <!-- Global actions -->
  +
  +    <page view-id="/*">
  +        <navigation>
  +            <rule if-outcome="register">
  +                <redirect view-id="/profile.xhtml"/>
  +            </rule>
  +            <rule if-outcome="editMyProfile">
  +                <redirect view-id="/profile.xhtml">
  +                    <param name="userId" value="#{authenticatedUser.id}"/>
  +                </redirect>
  +            </rule>
  +
  +            <rule if-outcome="error">
  +                <redirect view-id="/blank.xhtml">
  +                    <message severity="ERROR">An unrecoverable error occured!</message>
  +                </redirect>
  +            </rule>
  +        </navigation>
  +
  +    </page>
  +
  +    <!-- Special pages -->
  +
  +    <page view-id="/confirmRegistration.xhtml" action="#{authenticator.activate()}">
  +        <navigation>
  +            <rule if-outcome="activated">
  +                <redirect view-id="/blank.xhtml">
  +                    <message severity="INFO">Your account has been activated, please log in.</message>
  +                </redirect>
  +            </rule>
  +            <rule if-outcome="notFound">
  +                <redirect view-id="/blank.xhtml">
  +                    <message severity="ERROR">Your activation code is invalid.</message>
  +                </redirect>
  +            </rule>
  +        </navigation>
  +    </page>
  +
  +    <!-- These effectively "block" the user from navigating forward, he stays on the last browsed page and
  +         gets an error message. -->
  +    <page view-id="/loginRequired.xhtml" action="#{browser.redirectToLastBrowsedPageWithConversation()}"/>
  +    <page view-id="/permissionError.xhtml" action="#{browser.redirectToLastBrowsedPageWithConversation()}"/>
  +    
  +    <exception class="org.jboss.seam.security.AuthorizationException">
  +        <end-conversation/>
  +        <redirect view-id="/permissionError.xhtml">
  +            <message severity="WARN">You do not have permission for this operation</message>
  +        </redirect>
  +    </exception>
  +
   </pages>
   
   
  
  
  
  1.3       +36 -11    jboss-seam/examples/wiki/resources/WEB-INF/components.xml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: components.xml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/resources/WEB-INF/components.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -b -r1.2 -r1.3
  --- components.xml	16 Feb 2007 16:26:45 -0000	1.2
  +++ components.xml	21 Feb 2007 16:24:10 -0000	1.3
  @@ -1,11 +1,38 @@
   <?xml version="1.0" encoding="UTF-8"?>
   <components xmlns="http://jboss.com/products/seam/components"
               xmlns:core="http://jboss.com/products/seam/core"
  +            xmlns:security="http://jboss.com/products/seam/security"
  +            xmlns:drools="http://jboss.com/products/seam/drools"
  +            xmlns:web="http://jboss.com/products/seam/web"
  +            xmlns:mail="http://jboss.com/products/seam/mail"
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xsi:schemaLocation=
                       "http://jboss.com/products/seam/core http://jboss.com/products/seam/core-1.1.xsd
  +                 http://jboss.com/products/seam/security http://jboss.com/products/seam/security-1.1.xsd
  +                 http://jboss.com/products/seam/web http://jboss.com/products/seam/web-1.1.xsd
  +                 http://jboss.com/products/seam/drools http://jboss.com/products/seam/drools-1.1.xsd
  +                 http://jboss.com/products/seam/mail http://jboss.com/products/seam/mail-1.1.xsd
                    http://jboss.com/products/seam/components http://jboss.com/products/seam/components-1.1.xsd">
   
  +    <!-- ##### WIKI USER CONFIGURATION ##### -->
  +
  +    <component name="globalPrefs" class="org.jboss.seam.wiki.core.prefs.GlobalPreferences"
  +               scope="application" auto-create="true">
  +
  +        <property name="baseURL">http://www.seamframework.org/wiki</property>
  +        <property name="defaultURLRendering">PERMLINK</property>
  +        <property name="permlinkSuffix">.html</property>
  +        <property name="themeName">default</property>
  +        <property name="newUserInRole">member</property>
  +        <property name="passwordRegex">^[0-9A-Za-z]{6,15}</property>
  +        <property name="activationCodeSalt">MySecretSalt123</property>
  +
  +    </component>
  +
  +   <mail:mail-session host="mail.bluewin.ch" port="25"/>
  +
  +    <!-- ##### END OF WIKI USER CONFIGURATION ##### -->
  +
       <core:init debug="false" jndi-pattern="@jndiPattern@"/>
   
       <core:manager concurrent-request-timeout="500"
  @@ -14,22 +41,20 @@
                     conversation-is-long-running-parameter="clr"/>
   
       <core:managed-persistence-context name="entityManager"
  -                                      persistence-unit-jndi-name="java:/wikiEntityManagerFactory"/>
  +                                      persistence-unit-jndi-name="java:/wikiEntityManagerFactory"
  +                                      auto-create="true"/>
   
       <core:ejb installed="@embeddedEjb@"/>
   
  -    <!-- ##### WIKI CONFIGURATION ##### -->
  -
  -    <component name="globalPrefs" class="org.jboss.seam.wiki.core.prefs.GlobalPreferences"
  -               scope="application" auto-create="true">
  +    <!-- Login and security -->
   
  -        <property name="defaultURLRendering">WIKILINK</property>
  -        <property name="permlinkSuffix">.html</property>
  -        <property name="themeName">default</property>
  +    <security:rule-based-identity authenticate-method="#{authenticator.authenticate}"/>
   
  -    </component>
  +    <drools:rule-base name="securityRules">
  +       <drools:rule-files><value>/META-INF/security-rules.drl</value></drools:rule-files>
  +    </drools:rule-base>
   
  -    <!-- ##### END OF CONFIGURATION ##### -->
  +    <!-- Misc application settings -->
   
       <factory name="themePath" value="#{facesContext.externalContext.request.contextPath}/themes/#{globalPrefs.themeName}"/>
   
  
  
  
  1.3       +10 -0     jboss-seam/examples/wiki/resources/WEB-INF/web.xml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: web.xml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/resources/WEB-INF/web.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -b -r1.2 -r1.3
  --- web.xml	20 Feb 2007 15:11:11 -0000	1.2
  +++ web.xml	21 Feb 2007 16:24:10 -0000	1.3
  @@ -58,6 +58,16 @@
         <url-pattern>/seam/resource/*</url-pattern>
       </servlet-mapping>     
   
  +    <servlet>
  +      <servlet-name>Seam Resource Servlet</servlet-name>
  +      <servlet-class>org.jboss.seam.servlet.ResourceServlet</servlet-class>
  +    </servlet>
  +
  +    <servlet-mapping>
  +      <servlet-name>Seam Resource Servlet</servlet-name>
  +      <url-pattern>/seam/resource/*</url-pattern>
  +    </servlet-mapping>
  +
       <filter>
           <filter-name>UrlRewriteFilter</filter-name>
           <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
  
  
  



More information about the jboss-cvs-commits mailing list