You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shiro.apache.org by bd...@apache.org on 2016/10/25 16:48:29 UTC

svn commit: r1766556 [18/21] - in /shiro/site/publish: ./ 2010/03/18/ 2010/06/01/ 2010/09/14/ 2010/09/20/ 2010/09/24/ 2010/11/03/ 2011/01/06/ 2011/01/13/ 2011/02/10/ 2011/02/28/ 2011/03/14/ 2011/05/24/ 2011/06/30/ 2012/01/24/ 2012/03/13/ 2012/07/29/ 20...

Modified: shiro/site/publish/reference.html
URL: http://svn.apache.org/viewvc/shiro/site/publish/reference.html?rev=1766556&r1=1766555&r2=1766556&view=diff
==============================================================================
--- shiro/site/publish/reference.html (original)
+++ shiro/site/publish/reference.html Tue Oct 25 16:48:27 2016
@@ -35,6 +35,7 @@
 
 
 <head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <meta name="description" content="Apache Shiro is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management.">
     <meta name="google-site-verification" content="QIax6uT5UX3enoU0G8Pz2pXbQ45KaQuHZ3nCh9V27mw">
@@ -50,29 +51,44 @@
     <link rel="icon" type="image/vnd.microsoft.icon" href="./assets/images/favicon.ico">
     <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css">
 
-    <link rel="stylesheet" type="text/css" href="./assets/css/normalize.css">
-    <link rel="stylesheet" type="text/css" href="./assets/css/confluence.css" media="screen">
+    <!-- site styles and  -->
     <link rel="stylesheet" type="text/css" href="./assets/css/style.css">
+    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
 
+    <!-- github ribbon -->
     <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.css" />
     <!--[if lt IE 9]>
       <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.ie.css" />
     <![endif]-->
 
+    <script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
+
+    <!-- bootstrap -->
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap.min.css">
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap-theme.min.css">
+    <script src="./assets/bootstrap/js/bootstrap.min.js"></script>
+
+
+    <!-- Google Analytics -->
+    <script>
+    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+    ga('create', 'UA-XXXXX-Y', 'auto');
+    ga('send', 'pageview');
+    </script>
+    <!-- End Google Analytics -->
+
+
+
     <!-- syntax highlighting -->
     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/styles/default.min.css" integrity="sha256-Zd1icfZ72UBmsId/mUcagrmN7IN5Qkrvh75ICHIQVTk=" crossorigin="anonymous" />
     <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/highlight.min.js" integrity="sha256-s63qpgPYoQk+wv3U6WZqioVJrwFNBTgD4dkeegLuwvo=" crossorigin="anonymous"></script>
-
-    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
-    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
-    <script type="text/javascript" src="./assets/js/jquery_googleanalytics/jquery.google-analytics.js"></script>
     <script>hljs.initHighlightingOnLoad();</script>
+
     <script type="text/javascript">
-        // initialize plugins
-        jQuery(function() {
-            //Google Analytics
-            jQuery.trackPage('UA-11551827-1');
-        });
 
         $( document ).ready(function() {
             addPageEditLink();
@@ -81,27 +97,97 @@
 </head>
 
 <body>
-    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
 
     <div id="top-bar"></div>
 
-    <div class="wrapper">
+    <div class="container" style="max-width: 1200px;">
+
+    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
+
+
 
-        <div id="header">
-            <a href="./index.html"><div id="logo"></div></a>
-            <ul class="navigation">
+    <div class="masthead">
+        <p class="lead">
+            <a href="./index.html">
+                <img src="./assets/images/apache-shiro-logo.png" style="height:100px; width:auto; vertical-align: bottom; margin-top: 20px;">
+            </a>
+            <span class="tagline">Simple. Java. Security.</span>
+        </p>
+    </div>
+
+
+
+    <nav class="navbar navbar-default" role="navigation">
+        <!-- Brand and toggle get grouped for better mobile display -->
+        <div class="navbar-header">
+            <button type="button" class="navbar-toggle" data-toggle="collapse"
+                    data-target="#navbar-collapse-1">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+        </div>
+
+        <!-- Collect the nav links, forms, and other content for toggling -->
+        <div class="collapse navbar-collapse" id="navbar-collapse-1">
+            <ul class="nav navbar-nav">
                 <li><a href="./get-started.html">Get Started</a></li>
                 <li><a href="./documentation.html">Docs</a></li>
                 <li><a href="./web-features.html">Web Apps</a></li>
-                <li><a href="./integration.html">Integrations</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Integrations <b class="caret"></b>
+                    </a>
+
+                    <ul class="dropdown-menu">
+                        <li><a href="./spring.html">Spring</a></li>
+                        <li><a href="./guice.html">Guice</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./integration.html">Third-Party Integrations</a></li>
+                    </ul>
+                </li>
+
                 <li><a href="./features.html">Features</a></li>
-                <li><a href="./community.html">Community</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Community <b class="caret"></b>
+                    </a>
+                    <ul class="dropdown-menu">
+                        <li><a href="./forums.html">Community Forums</a></li>
+                        <li><a href="./mailing-lists.html">Mailing Lists</a></li>
+                        <li><a href="./articles.html">Articles</a></li>
+                        <li><a href="./news.html">News</a></li>
+                        <li><a href="./events.html">Events</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./community.html">More</a></li>
+                    </ul>
+                </li>
+
+            </ul>
+
+            <ul class="nav navbar-nav navbar-right">
+                <li class="dropdown">
+                    <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown">
+                        Apache Software Foundation <b class="caret"></b></a>
+                    <ul class="dropdown-menu">
+                        <li><a href="http://www.apache.org/">Apache Homepage</a></li>
+                        <li><a href="http://www.apache.org/licenses/">License</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
+                        <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Donate</a></li>
+                        <li><a href="http://www.apache.org/security/">Security</a></li>
+                    </ul>
+                </li>
             </ul>
         </div>
+        <!-- /.navbar-collapse -->
+    </nav>
 
-        <div id="content">
 
-                            <a name="Reference-ApacheShiroReferenceDocumentation"></a>
+            <a name="Reference-ApacheShiroReferenceDocumentation"></a>
 <h1><a href="#apache-shiro-reference-documentation" name="apache-shiro-reference-documentation">Apache Shiro Reference Documentation</a></h1>
 <ol>
   <li>
@@ -178,27 +264,23 @@
 <p>While we hope this documentation helps you with the work you&rsquo;re doing with Apache Shiro, the community is improving and expanding the documentation all the time. If you&rsquo;d like to help the Shiro project, please consider corrected, expanding, or adding documentation where you see a need. Every little bit of help you provide expands the community and in turn improves Shiro.</p>
 <p>The easiest way to contribute your documentation is to send it to the <a href="http://shiro-user.582556.n2.nabble.com/">User Forum</a> or the <a href="mailing-lists.html">User Mailing List</a>.</p>
 <input type="hidden" id="ghEditPage" value="reference.md"></input>
-            
-        </div>
+    
+</div>
 
-    </div><!--END WRAPPER-->
-
-    <div id="footer">
+    <div class="footer-padding"></div>
+    <footer class="custom-footer">
 
         <div class="wrapper">
 
             <a href="http://www.apache.org/foundation/contributing.html">Donate to the ASF</a> |
             <a href="http://www.apache.org/licenses/LICENSE-2.0.html">License</a>
             <p>Copyright &copy; 2008-2016 The Apache Software Foundation</p>
-
-            <div class="editThisPage">
-            </div>
-
+            <div class="editThisPage"></div>
             <div class="footer-shield"></div>
 
         </div> <!--END FOOTER WRAPPER-->
 
-    </div> <!--END FOOTER-->
+    </footer> <!--END FOOTER-->
 
 </body>
 </html>

Modified: shiro/site/publish/securitymanager.html
URL: http://svn.apache.org/viewvc/shiro/site/publish/securitymanager.html?rev=1766556&r1=1766555&r2=1766556&view=diff
==============================================================================
--- shiro/site/publish/securitymanager.html (original)
+++ shiro/site/publish/securitymanager.html Tue Oct 25 16:48:27 2016
@@ -35,6 +35,7 @@
 
 
 <head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <meta name="description" content="Apache Shiro is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management.">
     <meta name="google-site-verification" content="QIax6uT5UX3enoU0G8Pz2pXbQ45KaQuHZ3nCh9V27mw">
@@ -50,29 +51,44 @@
     <link rel="icon" type="image/vnd.microsoft.icon" href="./assets/images/favicon.ico">
     <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css">
 
-    <link rel="stylesheet" type="text/css" href="./assets/css/normalize.css">
-    <link rel="stylesheet" type="text/css" href="./assets/css/confluence.css" media="screen">
+    <!-- site styles and  -->
     <link rel="stylesheet" type="text/css" href="./assets/css/style.css">
+    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
 
+    <!-- github ribbon -->
     <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.css" />
     <!--[if lt IE 9]>
       <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.ie.css" />
     <![endif]-->
 
+    <script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
+
+    <!-- bootstrap -->
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap.min.css">
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap-theme.min.css">
+    <script src="./assets/bootstrap/js/bootstrap.min.js"></script>
+
+
+    <!-- Google Analytics -->
+    <script>
+    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+    ga('create', 'UA-XXXXX-Y', 'auto');
+    ga('send', 'pageview');
+    </script>
+    <!-- End Google Analytics -->
+
+
+
     <!-- syntax highlighting -->
     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/styles/default.min.css" integrity="sha256-Zd1icfZ72UBmsId/mUcagrmN7IN5Qkrvh75ICHIQVTk=" crossorigin="anonymous" />
     <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/highlight.min.js" integrity="sha256-s63qpgPYoQk+wv3U6WZqioVJrwFNBTgD4dkeegLuwvo=" crossorigin="anonymous"></script>
-
-    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
-    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
-    <script type="text/javascript" src="./assets/js/jquery_googleanalytics/jquery.google-analytics.js"></script>
     <script>hljs.initHighlightingOnLoad();</script>
+
     <script type="text/javascript">
-        // initialize plugins
-        jQuery(function() {
-            //Google Analytics
-            jQuery.trackPage('UA-11551827-1');
-        });
 
         $( document ).ready(function() {
             addPageEditLink();
@@ -81,27 +97,97 @@
 </head>
 
 <body>
-    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
 
     <div id="top-bar"></div>
 
-    <div class="wrapper">
+    <div class="container" style="max-width: 1200px;">
+
+    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
+
+
 
-        <div id="header">
-            <a href="./index.html"><div id="logo"></div></a>
-            <ul class="navigation">
+    <div class="masthead">
+        <p class="lead">
+            <a href="./index.html">
+                <img src="./assets/images/apache-shiro-logo.png" style="height:100px; width:auto; vertical-align: bottom; margin-top: 20px;">
+            </a>
+            <span class="tagline">Simple. Java. Security.</span>
+        </p>
+    </div>
+
+
+
+    <nav class="navbar navbar-default" role="navigation">
+        <!-- Brand and toggle get grouped for better mobile display -->
+        <div class="navbar-header">
+            <button type="button" class="navbar-toggle" data-toggle="collapse"
+                    data-target="#navbar-collapse-1">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+        </div>
+
+        <!-- Collect the nav links, forms, and other content for toggling -->
+        <div class="collapse navbar-collapse" id="navbar-collapse-1">
+            <ul class="nav navbar-nav">
                 <li><a href="./get-started.html">Get Started</a></li>
                 <li><a href="./documentation.html">Docs</a></li>
                 <li><a href="./web-features.html">Web Apps</a></li>
-                <li><a href="./integration.html">Integrations</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Integrations <b class="caret"></b>
+                    </a>
+
+                    <ul class="dropdown-menu">
+                        <li><a href="./spring.html">Spring</a></li>
+                        <li><a href="./guice.html">Guice</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./integration.html">Third-Party Integrations</a></li>
+                    </ul>
+                </li>
+
                 <li><a href="./features.html">Features</a></li>
-                <li><a href="./community.html">Community</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Community <b class="caret"></b>
+                    </a>
+                    <ul class="dropdown-menu">
+                        <li><a href="./forums.html">Community Forums</a></li>
+                        <li><a href="./mailing-lists.html">Mailing Lists</a></li>
+                        <li><a href="./articles.html">Articles</a></li>
+                        <li><a href="./news.html">News</a></li>
+                        <li><a href="./events.html">Events</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./community.html">More</a></li>
+                    </ul>
+                </li>
+
+            </ul>
+
+            <ul class="nav navbar-nav navbar-right">
+                <li class="dropdown">
+                    <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown">
+                        Apache Software Foundation <b class="caret"></b></a>
+                    <ul class="dropdown-menu">
+                        <li><a href="http://www.apache.org/">Apache Homepage</a></li>
+                        <li><a href="http://www.apache.org/licenses/">License</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
+                        <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Donate</a></li>
+                        <li><a href="http://www.apache.org/security/">Security</a></li>
+                    </ul>
+                </li>
             </ul>
         </div>
+        <!-- /.navbar-collapse -->
+    </nav>
 
-        <div id="content">
 
-                            <a name="SecurityManager-UnderstandingtheSecurityManagerinApacheShiro"></a>
+            <a name="SecurityManager-UnderstandingtheSecurityManagerinApacheShiro"></a>
 <h1><a href="#understanding-the-securitymanager-in-apache-shiro" name="understanding-the-securitymanager-in-apache-shiro">Understanding the SecurityManager in Apache Shiro</a></h1>
 <p>The <a href="static/current/apidocs/org/apache/shiro/mgt/SecurityManager.html">SecurityManager</a> lies at the heart of Shiro&rsquo;s architecture. While the <a href="subject.html" title="Subject">Subject</a> represents security functionality and state for a <em>single</em> application user, the <code>SecurityManager</code> performs security operations and manages state for <em>all</em> application users.</p>
 <p>Because Shiro&rsquo;s API encourages a <code>Subject</code>-centric programming approach, most application developers will rarely, if ever, interact with the <code>SecurityManager</code> directly (framework developers however might sometimes find it useful). Even so, it is still important to know how the <code>SecurityManager</code> functions, especially when configuring one for an application.</p>
@@ -134,24 +220,10 @@
   <li>SubjectFactory(<code>org.apache.shiro.mgt.SubjectFactory</code>)</li>
 </ul>
 <p>The <code>SecurityManager</code> implementations and are also JavaBeans compatible, which allows you (or a configuration mechanism) to easily customize the pluggable components via standard JavaBeans accessor/mutator methods (get*/set*). This means the Shiro&rsquo;s architectural modularity can translate into very easy configuration for custom behavior.</p>
-<div class="panelMacro">
-    <table class="tipMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-        <tbody><tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-check-square-o"></i>
-            </td>
-            <td colspan="1" rowspan="1">
-                <b>Easy Configuration</b>
-                <br clear="none">
-                Because of JavaBeans compatibility, it is very easy to configure the <code>SecurityManager</code> with custom components via any mechanism that supports JavaBeans-style configuration, such as <a href="spring.html" title="Spring">Spring</a>, Guice, JBoss, etc.
-            </td>
-        </tr>
-        </tbody>
-    </table>
+<div class="alert alert-success">
+    <span class="glyphicon glyphicon-ok"></span> <strong>Easy Configuration</strong>
+    <hr class="message-inner-separator">
+    <p>Because of JavaBeans compatibility, it is very easy to configure the <code>SecurityManager</code> with custom components via any mechanism that supports JavaBeans-style configuration, such as <a href="spring.html" title="Spring">Spring</a>, Guice, JBoss, etc.</p>
 </div>
 <a name="SecurityManager-ProgrammaticConfiguration"></a>
 <h3><a href="#programmatic-configuration" name="programmatic-configuration">Programmatic Configuration</a></h3>
@@ -177,27 +249,23 @@ SecurityUtils.setSecurityManager(securit
 <h2><a href="#lend-a-hand-with-documentation" name="lend-a-hand-with-documentation">Lend a hand with documentation</a></h2>
 <p>While we hope this documentation helps you with the work you&rsquo;re doing with Apache Shiro, the community is improving and expanding the documentation all the time. If you&rsquo;d like to help the Shiro project, please consider corrected, expanding, or adding documentation where you see a need. Every little bit of help you provide expands the community and in turn improves Shiro.</p>
 <p>The easiest way to contribute your documentation is to send it to the <a href="http://shiro-user.582556.n2.nabble.com/">User Forum</a> or the <a href="mailing-lists.html" title="Mailing Lists">User Mailing List</a>.<br/><input type="hidden" id="ghEditPage" value="securitymanager.md.vtl"></input></p>
-            
-        </div>
-
-    </div><!--END WRAPPER-->
+    
+</div>
 
-    <div id="footer">
+    <div class="footer-padding"></div>
+    <footer class="custom-footer">
 
         <div class="wrapper">
 
             <a href="http://www.apache.org/foundation/contributing.html">Donate to the ASF</a> |
             <a href="http://www.apache.org/licenses/LICENSE-2.0.html">License</a>
             <p>Copyright &copy; 2008-2016 The Apache Software Foundation</p>
-
-            <div class="editThisPage">
-            </div>
-
+            <div class="editThisPage"></div>
             <div class="footer-shield"></div>
 
         </div> <!--END FOOTER WRAPPER-->
 
-    </div> <!--END FOOTER-->
+    </footer> <!--END FOOTER-->
 
 </body>
 </html>

Modified: shiro/site/publish/session-management-features.html
URL: http://svn.apache.org/viewvc/shiro/site/publish/session-management-features.html?rev=1766556&r1=1766555&r2=1766556&view=diff
==============================================================================
--- shiro/site/publish/session-management-features.html (original)
+++ shiro/site/publish/session-management-features.html Tue Oct 25 16:48:27 2016
@@ -35,6 +35,7 @@
 
 
 <head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <meta name="description" content="Apache Shiro is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management.">
     <meta name="google-site-verification" content="QIax6uT5UX3enoU0G8Pz2pXbQ45KaQuHZ3nCh9V27mw">
@@ -50,29 +51,44 @@
     <link rel="icon" type="image/vnd.microsoft.icon" href="./assets/images/favicon.ico">
     <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css">
 
-    <link rel="stylesheet" type="text/css" href="./assets/css/normalize.css">
-    <link rel="stylesheet" type="text/css" href="./assets/css/confluence.css" media="screen">
+    <!-- site styles and  -->
     <link rel="stylesheet" type="text/css" href="./assets/css/style.css">
+    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
 
+    <!-- github ribbon -->
     <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.css" />
     <!--[if lt IE 9]>
       <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.ie.css" />
     <![endif]-->
 
+    <script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
+
+    <!-- bootstrap -->
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap.min.css">
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap-theme.min.css">
+    <script src="./assets/bootstrap/js/bootstrap.min.js"></script>
+
+
+    <!-- Google Analytics -->
+    <script>
+    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+    ga('create', 'UA-XXXXX-Y', 'auto');
+    ga('send', 'pageview');
+    </script>
+    <!-- End Google Analytics -->
+
+
+
     <!-- syntax highlighting -->
     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/styles/default.min.css" integrity="sha256-Zd1icfZ72UBmsId/mUcagrmN7IN5Qkrvh75ICHIQVTk=" crossorigin="anonymous" />
     <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/highlight.min.js" integrity="sha256-s63qpgPYoQk+wv3U6WZqioVJrwFNBTgD4dkeegLuwvo=" crossorigin="anonymous"></script>
-
-    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
-    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
-    <script type="text/javascript" src="./assets/js/jquery_googleanalytics/jquery.google-analytics.js"></script>
     <script>hljs.initHighlightingOnLoad();</script>
+
     <script type="text/javascript">
-        // initialize plugins
-        jQuery(function() {
-            //Google Analytics
-            jQuery.trackPage('UA-11551827-1');
-        });
 
         $( document ).ready(function() {
             addPageEditLink();
@@ -81,27 +97,97 @@
 </head>
 
 <body>
-    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
 
     <div id="top-bar"></div>
 
-    <div class="wrapper">
+    <div class="container" style="max-width: 1200px;">
+
+    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
+
+
 
-        <div id="header">
-            <a href="./index.html"><div id="logo"></div></a>
-            <ul class="navigation">
+    <div class="masthead">
+        <p class="lead">
+            <a href="./index.html">
+                <img src="./assets/images/apache-shiro-logo.png" style="height:100px; width:auto; vertical-align: bottom; margin-top: 20px;">
+            </a>
+            <span class="tagline">Simple. Java. Security.</span>
+        </p>
+    </div>
+
+
+
+    <nav class="navbar navbar-default" role="navigation">
+        <!-- Brand and toggle get grouped for better mobile display -->
+        <div class="navbar-header">
+            <button type="button" class="navbar-toggle" data-toggle="collapse"
+                    data-target="#navbar-collapse-1">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+        </div>
+
+        <!-- Collect the nav links, forms, and other content for toggling -->
+        <div class="collapse navbar-collapse" id="navbar-collapse-1">
+            <ul class="nav navbar-nav">
                 <li><a href="./get-started.html">Get Started</a></li>
                 <li><a href="./documentation.html">Docs</a></li>
                 <li><a href="./web-features.html">Web Apps</a></li>
-                <li><a href="./integration.html">Integrations</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Integrations <b class="caret"></b>
+                    </a>
+
+                    <ul class="dropdown-menu">
+                        <li><a href="./spring.html">Spring</a></li>
+                        <li><a href="./guice.html">Guice</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./integration.html">Third-Party Integrations</a></li>
+                    </ul>
+                </li>
+
                 <li><a href="./features.html">Features</a></li>
-                <li><a href="./community.html">Community</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Community <b class="caret"></b>
+                    </a>
+                    <ul class="dropdown-menu">
+                        <li><a href="./forums.html">Community Forums</a></li>
+                        <li><a href="./mailing-lists.html">Mailing Lists</a></li>
+                        <li><a href="./articles.html">Articles</a></li>
+                        <li><a href="./news.html">News</a></li>
+                        <li><a href="./events.html">Events</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./community.html">More</a></li>
+                    </ul>
+                </li>
+
+            </ul>
+
+            <ul class="nav navbar-nav navbar-right">
+                <li class="dropdown">
+                    <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown">
+                        Apache Software Foundation <b class="caret"></b></a>
+                    <ul class="dropdown-menu">
+                        <li><a href="http://www.apache.org/">Apache Homepage</a></li>
+                        <li><a href="http://www.apache.org/licenses/">License</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
+                        <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Donate</a></li>
+                        <li><a href="http://www.apache.org/security/">Security</a></li>
+                    </ul>
+                </li>
             </ul>
         </div>
+        <!-- /.navbar-collapse -->
+    </nav>
 
-        <div id="content">
 
-                            <a name="SessionManagementFeatures-ApacheShiroSessionManagementFeatures"></a>
+            <a name="SessionManagementFeatures-ApacheShiroSessionManagementFeatures"></a>
 <h1><a href="#apache-shiro-session-management-features" name="apache-shiro-session-management-features">Apache Shiro Session Management Features</a></h1>
 <div class="addthis_toolbox addthis_default_style">
 <a class="addthis_button_compact" href="http://www.addthis.com/bookmark.php?v=250&amp;pubid=ra-4d66ef016022c3bd">Share</a>
@@ -139,27 +225,23 @@
 <a name="SessionManagementFeatures-GetStartedin10MinuteswithShiro"></a>
 <h2><a href="#get-started-in-10-minutes-with-shiro" name="get-started-in-10-minutes-with-shiro">Get Started in 10 Minutes with Shiro</a></h2>
 <p>Try out Shiro for yourself with our <a href="10-minute-tutorial.html">10 Minute Tutorial</a>. And if you have any questions about Shiro, please check out our <a href="forums.html">community forum</a> or <a href="mailing-lists.html">user mailing list</a> for answers from the community.<br/><input type="hidden" id="ghEditPage" value="session-management-features.md"></input></p>
-            
-        </div>
-
-    </div><!--END WRAPPER-->
+    
+</div>
 
-    <div id="footer">
+    <div class="footer-padding"></div>
+    <footer class="custom-footer">
 
         <div class="wrapper">
 
             <a href="http://www.apache.org/foundation/contributing.html">Donate to the ASF</a> |
             <a href="http://www.apache.org/licenses/LICENSE-2.0.html">License</a>
             <p>Copyright &copy; 2008-2016 The Apache Software Foundation</p>
-
-            <div class="editThisPage">
-            </div>
-
+            <div class="editThisPage"></div>
             <div class="footer-shield"></div>
 
         </div> <!--END FOOTER WRAPPER-->
 
-    </div> <!--END FOOTER-->
+    </footer> <!--END FOOTER-->
 
 </body>
 </html>

Modified: shiro/site/publish/session-management.html
URL: http://svn.apache.org/viewvc/shiro/site/publish/session-management.html?rev=1766556&r1=1766555&r2=1766556&view=diff
==============================================================================
--- shiro/site/publish/session-management.html (original)
+++ shiro/site/publish/session-management.html Tue Oct 25 16:48:27 2016
@@ -35,6 +35,7 @@
 
 
 <head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <meta name="description" content="Apache Shiro is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management.">
     <meta name="google-site-verification" content="QIax6uT5UX3enoU0G8Pz2pXbQ45KaQuHZ3nCh9V27mw">
@@ -50,29 +51,44 @@
     <link rel="icon" type="image/vnd.microsoft.icon" href="./assets/images/favicon.ico">
     <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css">
 
-    <link rel="stylesheet" type="text/css" href="./assets/css/normalize.css">
-    <link rel="stylesheet" type="text/css" href="./assets/css/confluence.css" media="screen">
+    <!-- site styles and  -->
     <link rel="stylesheet" type="text/css" href="./assets/css/style.css">
+    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
 
+    <!-- github ribbon -->
     <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.css" />
     <!--[if lt IE 9]>
       <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.ie.css" />
     <![endif]-->
 
+    <script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
+
+    <!-- bootstrap -->
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap.min.css">
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap-theme.min.css">
+    <script src="./assets/bootstrap/js/bootstrap.min.js"></script>
+
+
+    <!-- Google Analytics -->
+    <script>
+    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+    ga('create', 'UA-XXXXX-Y', 'auto');
+    ga('send', 'pageview');
+    </script>
+    <!-- End Google Analytics -->
+
+
+
     <!-- syntax highlighting -->
     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/styles/default.min.css" integrity="sha256-Zd1icfZ72UBmsId/mUcagrmN7IN5Qkrvh75ICHIQVTk=" crossorigin="anonymous" />
     <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/highlight.min.js" integrity="sha256-s63qpgPYoQk+wv3U6WZqioVJrwFNBTgD4dkeegLuwvo=" crossorigin="anonymous"></script>
-
-    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
-    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
-    <script type="text/javascript" src="./assets/js/jquery_googleanalytics/jquery.google-analytics.js"></script>
     <script>hljs.initHighlightingOnLoad();</script>
+
     <script type="text/javascript">
-        // initialize plugins
-        jQuery(function() {
-            //Google Analytics
-            jQuery.trackPage('UA-11551827-1');
-        });
 
         $( document ).ready(function() {
             addPageEditLink();
@@ -81,27 +97,97 @@
 </head>
 
 <body>
-    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
 
     <div id="top-bar"></div>
 
-    <div class="wrapper">
+    <div class="container" style="max-width: 1200px;">
+
+    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
+
+
+
+    <div class="masthead">
+        <p class="lead">
+            <a href="./index.html">
+                <img src="./assets/images/apache-shiro-logo.png" style="height:100px; width:auto; vertical-align: bottom; margin-top: 20px;">
+            </a>
+            <span class="tagline">Simple. Java. Security.</span>
+        </p>
+    </div>
 
-        <div id="header">
-            <a href="./index.html"><div id="logo"></div></a>
-            <ul class="navigation">
+
+
+    <nav class="navbar navbar-default" role="navigation">
+        <!-- Brand and toggle get grouped for better mobile display -->
+        <div class="navbar-header">
+            <button type="button" class="navbar-toggle" data-toggle="collapse"
+                    data-target="#navbar-collapse-1">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+        </div>
+
+        <!-- Collect the nav links, forms, and other content for toggling -->
+        <div class="collapse navbar-collapse" id="navbar-collapse-1">
+            <ul class="nav navbar-nav">
                 <li><a href="./get-started.html">Get Started</a></li>
                 <li><a href="./documentation.html">Docs</a></li>
                 <li><a href="./web-features.html">Web Apps</a></li>
-                <li><a href="./integration.html">Integrations</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Integrations <b class="caret"></b>
+                    </a>
+
+                    <ul class="dropdown-menu">
+                        <li><a href="./spring.html">Spring</a></li>
+                        <li><a href="./guice.html">Guice</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./integration.html">Third-Party Integrations</a></li>
+                    </ul>
+                </li>
+
                 <li><a href="./features.html">Features</a></li>
-                <li><a href="./community.html">Community</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Community <b class="caret"></b>
+                    </a>
+                    <ul class="dropdown-menu">
+                        <li><a href="./forums.html">Community Forums</a></li>
+                        <li><a href="./mailing-lists.html">Mailing Lists</a></li>
+                        <li><a href="./articles.html">Articles</a></li>
+                        <li><a href="./news.html">News</a></li>
+                        <li><a href="./events.html">Events</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./community.html">More</a></li>
+                    </ul>
+                </li>
+
+            </ul>
+
+            <ul class="nav navbar-nav navbar-right">
+                <li class="dropdown">
+                    <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown">
+                        Apache Software Foundation <b class="caret"></b></a>
+                    <ul class="dropdown-menu">
+                        <li><a href="http://www.apache.org/">Apache Homepage</a></li>
+                        <li><a href="http://www.apache.org/licenses/">License</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
+                        <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Donate</a></li>
+                        <li><a href="http://www.apache.org/security/">Security</a></li>
+                    </ul>
+                </li>
             </ul>
         </div>
+        <!-- /.navbar-collapse -->
+    </nav>
 
-        <div id="content">
 
-                            
+            
 
 <!-- spacer allows enough room to display the header -->
 <div id="spacer" style="width: 0; height: 60px; float: left"></div>
@@ -235,24 +321,10 @@ session.setAttribute( &quot;someKey&quot
   <li>If the <code>Subject</code> does not yet have a <code>Session</code> and the <code>create</code> boolean argument is <code>true</code>, a new session will be created and returned.</li>
   <li>If the <code>Subject</code> does not yet have a <code>Session</code> and the <code>create</code> boolean argument is <code>false</code>, a new session will not be created and <code>null</code> is returned.</li>
 </ul>
-<div class="panelMacro">
-    <table class="tipMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-        <tbody><tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-check-square-o"></i>
-            </td>
-            <td colspan="1" rowspan="1">
-                <b>Any Application</b>
-                <br clear="none">
-                <code>getSession</code> calls work in any application, even non-web applications.
-            </td>
-        </tr>
-        </tbody>
-    </table>
+<div class="alert alert-success">
+    <span class="glyphicon glyphicon-ok"></span> <strong>Any Application</strong>
+    <hr class="message-inner-separator">
+    <p><code>getSession</code> calls work in any application, even non-web applications.</p>
 </div>
 <p><code>subject.getSession(false)</code> can be used to good effect when developing framework code to ensure a Session isn&rsquo;t created unnecessarily.</p>
 <p>Once you acquire a Subject&rsquo;s <code>Session</code> you can do many things with it, like set or retrieve attributes, set its timeout, and more. See the <a href="static/current/apidocs/org/apache/shiro/session/Session.html">Session JavaDoc</a> to see what is possible with an individual session.</p>
@@ -260,28 +332,10 @@ session.setAttribute( &quot;someKey&quot
 <h2><a href="#the-sessionmanager" name="the-sessionmanager">The SessionManager</a></h2>
 <p>The SessionManager, as its name might imply, manages Sessions for <em>all</em> subjects in an application - creation, deletion, inactivity and validation, etc. Like other core architectural components in Shiro, the <code>SessionManager</code> is a top-level component maintained by the <code>SecurityManager</code>.</p>
 <p>The default <code>SecurityManager</code> implementation defaults to using a <a href="static/current/apidocs/org/apache/shiro/mgt/DefaultSecurityManager.html"><code>DefaultSessionManager</code></a> out of the box. The <code>DefaultSessionManager</code> implementation provides all of the enterprise-grade session management features needed for an application, like Session validation, orphan cleanup, etc. This can be used in any application.</p>
-<div class="panelMacro">
-    <table class="infoMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-
-
-        <tbody>
-        <tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-info-circle"></i>
-            </td>
-
-            <td colspan="1" rowspan="1">
-                <b>Web Applications</b>
-                <br clear="none">
-                Web applications use different <code>SessionManager</code> implementations. Please see the <a href="web.html">Web</a> documentation for web-specific Session Management information.
-            </td>
-        </tr>
-        </tbody>
-    </table>
+<div class="alert alert-info">
+    <span class="glyphicon glyphicon-info-sign"></span> <strong>Web Applications</strong>
+    <hr class="message-inner-separator">
+    <p>Web applications use different <code>SessionManager</code> implementations. Please see the <a href="web.html">Web</a> documentation for web-specific Session Management information.</p>
 </div>
 <p>Like all other components managed by the <code>SecurityManager</code>, the <code>SessionManager</code> can be acquired or set via JavaBeans-style getter/setter methods on all of Shiro&rsquo;s default <code>SecurityManager</code> implementations (<code>getSessionManager()</code>/<code>setSessionManager()</code>). Or for example, if using <code>shiro.ini</code> <a href="configuration.html" title="Configuration">Configuration</a>:</p>
 <p><strong>Configuring a new SessionManager in shiro.ini</strong></p>
@@ -317,28 +371,10 @@ anotherSessionListener = com.foo.my.Othe
 
 securityManager.sessionManager.sessionListeners = $aSessionListener, $anotherSessionListener, etc.
 </code></pre>
-<div class="panelMacro">
-    <table class="infoMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-
-
-        <tbody>
-        <tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-info-circle"></i>
-            </td>
-
-            <td colspan="1" rowspan="1">
-                <b>All Session Events</b>
-                <br clear="none">
-                <code>SessionListeners</code> are notified when an event occurs for <i>any</i> session - not just for a particular session.
-            </td>
-        </tr>
-        </tbody>
-    </table>
+<div class="alert alert-info">
+    <span class="glyphicon glyphicon-info-sign"></span> <strong>All Session Events</strong>
+    <hr class="message-inner-separator">
+    <p><code>SessionListeners</code> are notified when an event occurs for <i>any</i> session - not just for a particular session.</p>
 </div>
 <a name="SessionManagement-sessionstorage"></a>
 <a name="SessionManagement-SessionStorage"></a>
@@ -353,103 +389,41 @@ sessionDAO = com.foo.my.SessionDAO
 securityManager.sessionManager.sessionDAO = $sessionDAO
 </code></pre>
 <p>However, as you might expect, Shiro already has some good <code>SessionDAO</code> implementations that you can use out of the box or subclass for your own needs.<br/><a name="SessionManagement-websessionmanagersessiondao"></a></p>
-<div class="panelMacro">
-    <table class="noteMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-        <tbody>
-        <tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-warning"></i>
-            </td>
-
-            <td colspan="1" rowspan="1">
-                <b>Web Applications</b>
-                <br clear="none">
-                The above <code>securityManager.sessionManager.sessionDAO = $sessionDAO</code> assignment only works when using a Shiro native session manager. Web applications by default do not use a native session manager and instead retain the Servlet Container's default session manager which does not support a SessionDAO. If you would like to enable a SessionDAO in a web-based application for custom session storage or session clustering, you will have to first configure a native web session manager. For example:
+<div class="alert alert-warning">
+    <span class="glyphicon glyphicon-warning-sign"></span> <strong>Web Applications</strong>
+    <hr class="message-inner-separator">
+    <p>The above <code>securityManager.sessionManager.sessionDAO = $sessionDAO</code> assignment only works when using a Shiro native session manager. Web applications by default do not use a native session manager and instead retain the Servlet Container's default session manager which does not support a SessionDAO. If you would like to enable a SessionDAO in a web-based application for custom session storage or session clustering, you will have to first configure a native web session manager. For example:
 
-<div><pre><code class="ini">
-[main]
+<div><pre><code class="ini">[main]
 ...
 sessionManager = org.apache.shiro.web.session.mgt.DefaultWebSessionManager
 securityManager.sessionManager = $sessionManager
 
-; Configure a SessionDAO and then set it:
+# Configure a SessionDAO and then set it:
 securityManager.sessionManager.sessionDAO = $sessionDAO
-
-
-            </td>
-        </tr>
-        </tbody>
-    </table>
-</div>
 </code></pre></div>
-<div class="panelMacro">
-    <table class="warningMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-        <tbody>
-        <tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-exclamation-circle"></i>
-            </td>
-
-            <td colspan="1" rowspan="1">
-                <b>Configure a SessionDAO!</b>
-                <br clear="none">
-                Shiro's default configuration native SessionManagers use <strong>in-memory-only</strong> Session storage. This is unsuitable for most production applications. Most production applications will want to either configure the provided EHCache support (see below) or provide their own <code>SessionDAO</code> implementation.
-
-Note that web applications use a servlet-container-based SessionManager by default and do not have this issue. This is only an issue when using a Shiro native SessionManager.
-            </td>
-        </tr>
-        </tbody>
-    </table>
+</p>
+</div>
+<div class="alert alert-danger">
+    <span class="glyphicon glyphicon-exclamation-sign"></span> <strong>Configure a SessionDAO!</strong>
+    <hr class="message-inner-separator">
+    <p>Shiro's default configuration native SessionManagers use <strong>in-memory-only</strong> Session storage. This is unsuitable for most production applications. Most production applications will want to either configure the provided EHCache support (see below) or provide their own <code>SessionDAO</code> implementation.
+
+Note that web applications use a servlet-container-based SessionManager by default and do not have this issue. This is only an issue when using a Shiro native SessionManager.</p>
 </div>
 <a name="SessionManagement-ehcachesessiondao"></a>
 <a name="SessionManagement-EHCacheSessionDAO"></a>
 <h4><a href="#ehcache-sessiondao" name="ehcache-sessiondao">EHCache SessionDAO</a></h4>
 <p>EHCache is not enabled by default, but if you do not plan on implementing your own <code>SessionDAO</code>, it is <strong>highly</strong> recommended that you enable the EHCache support for Shiro&rsquo;s SessionManagement. The EHCache SessionDAO will store sessions in memory and support overflow to disk if memory becomes constrained. This is highly desirable for production applications to ensure that you don&rsquo;t randomly &lsquo;lose&rsquo; sessions at runtime.</p>
-<div class="panelMacro">
-    <table class="tipMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-        <tbody><tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-check-square-o"></i>
-            </td>
-            <td colspan="1" rowspan="1">
-                <b>Use EHCache as your default</b>
-                <br clear="none">
-                If you're not writing a custom <code>SessionDAO</code>, definitely enable EHCache in your Shiro configuration. EHCache can also be beneficial beyond Sessions, caching authentication and authorization data as well. See the <a href="caching.html">Caching</a> documentation for more information.
-            </td>
-        </tr>
-        </tbody>
-    </table>
-</div>
-<div class="panelMacro">
-    <table class="tipMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-        <tbody><tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-check-square-o"></i>
-            </td>
-            <td colspan="1" rowspan="1">
-                <b>Container-Independent Session Clustering</b>
-                <br clear="none">
-                EHCache is also a nice choice if you quickly need container-independent session clustering. You can transparently plug in <a href="http://www.terracotta.org/">TerraCotta</a> behind EHCache and have a container-independent clustered session cache. No more worrying about Tomcat, JBoss, Jetty, WebSphere or WebLogic specific session clustering ever again!
-            </td>
-        </tr>
-        </tbody>
-    </table>
+<div class="alert alert-success">
+    <span class="glyphicon glyphicon-ok"></span> <strong>Use EHCache as your default</strong>
+    <hr class="message-inner-separator">
+    <p>If you're not writing a custom <code>SessionDAO</code>, definitely enable EHCache in your Shiro configuration. EHCache can also be beneficial beyond Sessions, caching authentication and authorization data as well. See the <a href="caching.html">Caching</a> documentation for more information.</p>
+</div>
+<div class="alert alert-success">
+    <span class="glyphicon glyphicon-ok"></span> <strong>Container-Independent Session Clustering</strong>
+    <hr class="message-inner-separator">
+    <p>EHCache is also a nice choice if you quickly need container-independent session clustering. You can transparently plug in <a href="http://www.terracotta.org/">TerraCotta</a> behind EHCache and have a container-independent clustered session cache. No more worrying about Tomcat, JBoss, Jetty, WebSphere or WebLogic specific session clustering ever again!</p>
 </div>
 <p>Enabling EHCache for sessions is very easy. First, ensure that you have the <code>shiro-ehcache-&lt;version&gt;.jar</code> file in your classpath (see the <a href="download.html" title="Download">Download</a> page or use Maven or Ant+Ivy).</p>
 <p>Once in the classpath, this first <code>shiro.ini</code> example shows you how to use EHCache for all of Shiro&rsquo;s caching needs (not just Session support):</p>
@@ -464,28 +438,10 @@ securityManager.cacheManager = $cacheMan
 </code></pre>
 <p>The final line, <code>securityManager.cacheManager = $cacheManager</code>, configures a <code>CacheManager</code> for all of Shiro&rsquo;s needs. This <code>CacheManager</code> instance will propagate down to the <code>SessionDAO</code> automatically (by nature of <code>EnterpriseCacheSessionDAO</code> implementing the <a href="static/current/apidocs/org/apache/shiro/cache/CacheManagerAware.html"><code>CacheManagerAware</code></a> interface).</p>
 <p>Then, when the <code>SessionManager</code> asks the <code>EnterpriseCacheSessionDAO</code> to persist a <code>Session</code>, it will use an EHCache-backed <a href="static/current/apidocs/org/apache/shiro/cache/Cache.html"><code>Cache</code></a> implementation to store the Session data.</p>
-<div class="panelMacro">
-    <table class="infoMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-
-
-        <tbody>
-        <tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-info-circle"></i>
-            </td>
-
-            <td colspan="1" rowspan="1">
-                <b>Web Applications</b>
-                <br clear="none">
-                Don't forget that assigning a <code>SessionDAO</code> is a feature when using Shiro native SessionManager implementations. Web applications by default use a Servlet container-based SessionManager which does not support a <code>SessionDAO</code>. Configure a native web SessionManager as <a href="#SessionManagement-websessionmanagersessiondao">explained above</a> if you want to use Ehcache-based session storage in a web application.
-            </td>
-        </tr>
-        </tbody>
-    </table>
+<div class="alert alert-info">
+    <span class="glyphicon glyphicon-info-sign"></span> <strong>Web Applications</strong>
+    <hr class="message-inner-separator">
+    <p>Don't forget that assigning a <code>SessionDAO</code> is a feature when using Shiro native SessionManager implementations. Web applications by default use a Servlet container-based SessionManager which does not support a <code>SessionDAO</code>. Configure a native web SessionManager as <a href="#SessionManagement-websessionmanagersessiondao">explained above</a> if you want to use Ehcache-based session storage in a web application.</p>
 </div>
 <a name="SessionManagement-ehcachesessioncacheconfiguration"></a>
 <a name="SessionManagement-EHCacheSessionCacheConfiguration"></a>
@@ -566,26 +522,10 @@ securityManager.sessionManager.sessionVa
 securityManager.sessionManager.sessionValidationSchedulerEnabled = false
 </code></pre>
 <p>Sessions will still be validated when they are retrieved from the session data store, but this will disable Shiro&rsquo;s periodic validation.</p>
-<div class="panelMacro">
-    <table class="warningMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-        <tbody>
-        <tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-exclamation-circle"></i>
-            </td>
-
-            <td colspan="1" rowspan="1">
-                <b>Enable Session Validation <i>somewhere</i></b>
-                <br clear="none">
-                If you turn off Shiro's session validation scheduler, you <i>MUST</i> perform periodic session validation via some other mechanism (cron job, etc.). This is the only way to guarantee Session orphans do not fill up the data store.
-            </td>
-        </tr>
-        </tbody>
-    </table>
+<div class="alert alert-danger">
+    <span class="glyphicon glyphicon-exclamation-sign"></span> <strong>Enable Session Validation <i>somewhere</i></strong>
+    <hr class="message-inner-separator">
+    <p>If you turn off Shiro's session validation scheduler, you <i>MUST</i> perform periodic session validation via some other mechanism (cron job, etc.). This is the only way to guarantee Session orphans do not fill up the data store.</p>
 </div>
 <a name="SessionManagement-InvalidSessionDeletion"></a>
 <h4><a href="#invalid-session-deletion" name="invalid-session-deletion">Invalid Session Deletion</a></h4>
@@ -601,27 +541,11 @@ securityManager.sessionManager.deleteInv
 <p>But be careful! If you turn this off, you are responsible for ensuring that your session data store doesn&rsquo;t exhaust its space. You must delete invalid sessions from you data store yourself!</p>
 <p>Note also that even if you prevent Shiro from deleting invalid sessions, you still should enable session validation somehow - either via Shiro&rsquo;s existing validation mechanisms or via a custom mechanism you provide yourself (see the above &ldquo;Disabling Session Validation&rdquo; section above for more). The validation mechanism will update your session records to reflect the invalid state (e.g. when it was invalidated, when it was last accessed, etc), even if you will delete them manually yourself at some other time.</p>
 <div class="panelMacro">
-<div class="panelMacro">
-    <table class="warningMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-        <tbody>
-        <tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-exclamation-circle"></i>
-            </td>
-
-            <td colspan="1" rowspan="1">
-                <b>Warning</b>
-                <br clear="none">
-                If you configure Shiro so it does not delete invalid sessions, you are responsible for ensuring that your session data store doesn't exhaust its space. You must delete invalid sessions from you data store yourself!
-<p>Also note that disabling session deletion is <strong>not</strong> the same as disabling session validation scheduling. You should almost always use a session validation scheduling mechanism - either one supported by Shiro directly or your own.</p>
-            </td>
-        </tr>
-        </tbody>
-    </table>
+<div class="alert alert-danger">
+    <span class="glyphicon glyphicon-exclamation-sign"></span> <strong>Warning</strong>
+    <hr class="message-inner-separator">
+    <p>If you configure Shiro so it does not delete invalid sessions, you are responsible for ensuring that your session data store doesn't exhaust its space. You must delete invalid sessions from you data store yourself!
+<p>Also note that disabling session deletion is <strong>not</strong> the same as disabling session validation scheduling. You should almost always use a session validation scheduling mechanism - either one supported by Shiro directly or your own.</p></p>
 </div>
 <a name="SessionManagement-SessionClustering"></a>
 <h2><a href="#session-clustering" name="session-clustering">Session Clustering</a></h2>
@@ -631,30 +555,14 @@ securityManager.sessionManager.deleteInv
 <p><strong>Distributed Caches</strong></p>
 <p>Distributed Caches such as <a href="http://www.ehcache.org/documentation/2.7/configuration/distributed-cache-configuration.html">Ehcache+TerraCotta</a>, <a href="http://www.gigaspaces.com/">GigaSpaces</a> <a href="http://www.oracle.com/technetwork/middleware/coherence/overview/index.html">Oracle Coherence</a>, and <a href="http://memcached.org/">Memcached</a> (and many others) already solve the distributed-data-at-the-persistence-level problem. Therefore enabling Session clustering in Shiro is as simple as configuring Shiro to use a distributed cache.</p>
 <p>This gives you the flexibility of choosing the exact clustering mechanism that is suitable for <em>your</em> environment.</p>
-<div class="panelMacro">
-    <table class="noteMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-        <tbody>
-        <tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-warning"></i>
-            </td>
-
-            <td colspan="1" rowspan="1">
-                <b>Cache Memory</b>
-                <br clear="none">
-                Note that when enabling a distributed/enterprise cache to be your session clustering data store, one of the following two cases must be true:
+<div class="alert alert-warning">
+    <span class="glyphicon glyphicon-warning-sign"></span> <strong>Cache Memory</strong>
+    <hr class="message-inner-separator">
+    <p>Note that when enabling a distributed/enterprise cache to be your session clustering data store, one of the following two cases must be true:
 <ul><li>The distributed cache has enough cluster-wide memory to retain _all_ active/current sessions</li>
 <li>If the distributed cache does not have enough cluster-wide memory to retain all active sessions, it must support disk overflow so sessions are not lost.</li></ul>
 Failure for the cache to support either of the two cases will result in sessions being randomly lost, which would likely be frustrating to end-users.
-
-            </td>
-        </tr>
-        </tbody>
-    </table>
+</p>
 </div>
 <a name="SessionManagement-%7B%7BEnterpriseCacheSessionDAO%7D%7D"></a>
 <h3><a href="#enterprisecachesessiondao" name="enterprisecachesessiondao">EnterpriseCacheSessionDAO</a></h3>
@@ -774,26 +682,10 @@ securityManager.subjectDAO.sessionStorag
 ...
 </code></pre>
 <p>This will prevent Shiro from using a Subject&rsquo;s session to store that Subject&rsquo;s state across requests/invocations/messages <em>for all Subjects</em>. Just be sure that you authenticate on every request so Shiro will know who the Subject is for any given request/invocation/message.</p>
-<div class="panelMacro">
-    <table class="noteMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-        <tbody>
-        <tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-warning"></i>
-            </td>
-
-            <td colspan="1" rowspan="1">
-                <b>Shiro's Needs vs. Your Needs</b>
-                <br clear="none">
-                This will disable Shiro's own implementations from using Sessions as a storage strategy. It <strong>DOES NOT</strong> disable Sessions entirely. A session will still be created if any of your own code explicitly calls <code>subject.getSession()</code> or <code>subject.getSession(true)</code>.
-            </td>
-        </tr>
-        </tbody>
-    </table>
+<div class="alert alert-warning">
+    <span class="glyphicon glyphicon-warning-sign"></span> <strong>Shiro's Needs vs. Your Needs</strong>
+    <hr class="message-inner-separator">
+    <p>This will disable Shiro's own implementations from using Sessions as a storage strategy. It <strong>DOES NOT</strong> disable Sessions entirely. A session will still be created if any of your own code explicitly calls <code>subject.getSession()</code> or <code>subject.getSession(true)</code>.</p>
 </div>
 <a name="SessionManagement-AHybridApproach"></a>
 <h3><a href="#a-hybrid-approach" name="a-hybrid-approach">A Hybrid Approach</a></h3>
@@ -870,27 +762,23 @@ securityManager.subjectDAO.sessionStorag
 <ul>
   <li><code>httpServletRequest.getSession(false)</code></li>
   <li><code>subject.getSession(false)</code><br/><input type="hidden" id="ghEditPage" value="session-management.md.vtl"></input></li>
-</ul>            
-        </div>
-
-    </div><!--END WRAPPER-->
+</ul>    
+</div>
 
-    <div id="footer">
+    <div class="footer-padding"></div>
+    <footer class="custom-footer">
 
         <div class="wrapper">
 
             <a href="http://www.apache.org/foundation/contributing.html">Donate to the ASF</a> |
             <a href="http://www.apache.org/licenses/LICENSE-2.0.html">License</a>
             <p>Copyright &copy; 2008-2016 The Apache Software Foundation</p>
-
-            <div class="editThisPage">
-            </div>
-
+            <div class="editThisPage"></div>
             <div class="footer-shield"></div>
 
         </div> <!--END FOOTER WRAPPER-->
 
-    </div> <!--END FOOTER-->
+    </footer> <!--END FOOTER-->
 
 </body>
 </html>

Modified: shiro/site/publish/sessionmanager.html
URL: http://svn.apache.org/viewvc/shiro/site/publish/sessionmanager.html?rev=1766556&r1=1766555&r2=1766556&view=diff
==============================================================================
--- shiro/site/publish/sessionmanager.html (original)
+++ shiro/site/publish/sessionmanager.html Tue Oct 25 16:48:27 2016
@@ -35,6 +35,7 @@
 
 
 <head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <meta name="description" content="Apache Shiro is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management.">
     <meta name="google-site-verification" content="QIax6uT5UX3enoU0G8Pz2pXbQ45KaQuHZ3nCh9V27mw">
@@ -50,29 +51,44 @@
     <link rel="icon" type="image/vnd.microsoft.icon" href="./assets/images/favicon.ico">
     <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css">
 
-    <link rel="stylesheet" type="text/css" href="./assets/css/normalize.css">
-    <link rel="stylesheet" type="text/css" href="./assets/css/confluence.css" media="screen">
+    <!-- site styles and  -->
     <link rel="stylesheet" type="text/css" href="./assets/css/style.css">
+    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
 
+    <!-- github ribbon -->
     <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.css" />
     <!--[if lt IE 9]>
       <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.ie.css" />
     <![endif]-->
 
+    <script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
+
+    <!-- bootstrap -->
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap.min.css">
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap-theme.min.css">
+    <script src="./assets/bootstrap/js/bootstrap.min.js"></script>
+
+
+    <!-- Google Analytics -->
+    <script>
+    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+    ga('create', 'UA-XXXXX-Y', 'auto');
+    ga('send', 'pageview');
+    </script>
+    <!-- End Google Analytics -->
+
+
+
     <!-- syntax highlighting -->
     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/styles/default.min.css" integrity="sha256-Zd1icfZ72UBmsId/mUcagrmN7IN5Qkrvh75ICHIQVTk=" crossorigin="anonymous" />
     <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/highlight.min.js" integrity="sha256-s63qpgPYoQk+wv3U6WZqioVJrwFNBTgD4dkeegLuwvo=" crossorigin="anonymous"></script>
-
-    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
-    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
-    <script type="text/javascript" src="./assets/js/jquery_googleanalytics/jquery.google-analytics.js"></script>
     <script>hljs.initHighlightingOnLoad();</script>
+
     <script type="text/javascript">
-        // initialize plugins
-        jQuery(function() {
-            //Google Analytics
-            jQuery.trackPage('UA-11551827-1');
-        });
 
         $( document ).ready(function() {
             addPageEditLink();
@@ -81,48 +97,102 @@
 </head>
 
 <body>
-    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
 
     <div id="top-bar"></div>
 
-    <div class="wrapper">
+    <div class="container" style="max-width: 1200px;">
+
+    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
+
+
 
-        <div id="header">
-            <a href="./index.html"><div id="logo"></div></a>
-            <ul class="navigation">
+    <div class="masthead">
+        <p class="lead">
+            <a href="./index.html">
+                <img src="./assets/images/apache-shiro-logo.png" style="height:100px; width:auto; vertical-align: bottom; margin-top: 20px;">
+            </a>
+            <span class="tagline">Simple. Java. Security.</span>
+        </p>
+    </div>
+
+
+
+    <nav class="navbar navbar-default" role="navigation">
+        <!-- Brand and toggle get grouped for better mobile display -->
+        <div class="navbar-header">
+            <button type="button" class="navbar-toggle" data-toggle="collapse"
+                    data-target="#navbar-collapse-1">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+        </div>
+
+        <!-- Collect the nav links, forms, and other content for toggling -->
+        <div class="collapse navbar-collapse" id="navbar-collapse-1">
+            <ul class="nav navbar-nav">
                 <li><a href="./get-started.html">Get Started</a></li>
                 <li><a href="./documentation.html">Docs</a></li>
                 <li><a href="./web-features.html">Web Apps</a></li>
-                <li><a href="./integration.html">Integrations</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Integrations <b class="caret"></b>
+                    </a>
+
+                    <ul class="dropdown-menu">
+                        <li><a href="./spring.html">Spring</a></li>
+                        <li><a href="./guice.html">Guice</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./integration.html">Third-Party Integrations</a></li>
+                    </ul>
+                </li>
+
                 <li><a href="./features.html">Features</a></li>
-                <li><a href="./community.html">Community</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Community <b class="caret"></b>
+                    </a>
+                    <ul class="dropdown-menu">
+                        <li><a href="./forums.html">Community Forums</a></li>
+                        <li><a href="./mailing-lists.html">Mailing Lists</a></li>
+                        <li><a href="./articles.html">Articles</a></li>
+                        <li><a href="./news.html">News</a></li>
+                        <li><a href="./events.html">Events</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./community.html">More</a></li>
+                    </ul>
+                </li>
+
+            </ul>
+
+            <ul class="nav navbar-nav navbar-right">
+                <li class="dropdown">
+                    <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown">
+                        Apache Software Foundation <b class="caret"></b></a>
+                    <ul class="dropdown-menu">
+                        <li><a href="http://www.apache.org/">Apache Homepage</a></li>
+                        <li><a href="http://www.apache.org/licenses/">License</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
+                        <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Donate</a></li>
+                        <li><a href="http://www.apache.org/security/">Security</a></li>
+                    </ul>
+                </li>
             </ul>
         </div>
+        <!-- /.navbar-collapse -->
+    </nav>
 
-        <div id="content">
 
-                            <p>This page has been moved.  You are being redirected.</p>
+            <p>This page has been moved.  You are being redirected.</p>
 
-<div class="panelMacro">
-    <table class="noteMacro">
-        <colgroup span="1">
-            <col span="1" width="24">
-            <col span="1">
-        </colgroup>
-        <tbody>
-        <tr>
-            <td colspan="1" rowspan="1" valign="top">
-                <i class="fa fa-warning"></i>
-            </td>
-
-            <td colspan="1" rowspan="1">
-                <b>Redirection Notice</b>
-                <br clear="none">
-                This page should redirect to <a href="session-management.html" title="Session Management">Session Management</a>.
-            </td>
-        </tr>
-        </tbody>
-    </table>
+<div class="alert alert-warning">
+    <span class="glyphicon glyphicon-warning-sign"></span> <strong>Redirection Notice</strong>
+    <hr class="message-inner-separator">
+    <p>This page should redirect to <a href="session-management.html" title="Session Management">Session Management</a>.</p>
 </div>
 
 <script type="text/javascript">
@@ -132,27 +202,23 @@
 </script>
 <input type="hidden" id="ghEditPage" value="sessionmanager.html.vtl"></input>
 
-            
-        </div>
-
-    </div><!--END WRAPPER-->
+    
+</div>
 
-    <div id="footer">
+    <div class="footer-padding"></div>
+    <footer class="custom-footer">
 
         <div class="wrapper">
 
             <a href="http://www.apache.org/foundation/contributing.html">Donate to the ASF</a> |
             <a href="http://www.apache.org/licenses/LICENSE-2.0.html">License</a>
             <p>Copyright &copy; 2008-2016 The Apache Software Foundation</p>
-
-            <div class="editThisPage">
-            </div>
-
+            <div class="editThisPage"></div>
             <div class="footer-shield"></div>
 
         </div> <!--END FOOTER WRAPPER-->
 
-    </div> <!--END FOOTER-->
+    </footer> <!--END FOOTER-->
 
 </body>
 </html>

Modified: shiro/site/publish/spring.html
URL: http://svn.apache.org/viewvc/shiro/site/publish/spring.html?rev=1766556&r1=1766555&r2=1766556&view=diff
==============================================================================
--- shiro/site/publish/spring.html (original)
+++ shiro/site/publish/spring.html Tue Oct 25 16:48:27 2016
@@ -35,6 +35,7 @@
 
 
 <head>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <meta name="description" content="Apache Shiro is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management.">
     <meta name="google-site-verification" content="QIax6uT5UX3enoU0G8Pz2pXbQ45KaQuHZ3nCh9V27mw">
@@ -50,29 +51,44 @@
     <link rel="icon" type="image/vnd.microsoft.icon" href="./assets/images/favicon.ico">
     <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css">
 
-    <link rel="stylesheet" type="text/css" href="./assets/css/normalize.css">
-    <link rel="stylesheet" type="text/css" href="./assets/css/confluence.css" media="screen">
+    <!-- site styles and  -->
     <link rel="stylesheet" type="text/css" href="./assets/css/style.css">
+    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
 
+    <!-- github ribbon -->
     <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.css" />
     <!--[if lt IE 9]>
       <link rel="stylesheet" href="./assets/css/gh-pages/gh-fork-ribbon.ie.css" />
     <![endif]-->
 
+    <script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
+
+    <!-- bootstrap -->
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap.min.css">
+    <link rel="stylesheet" href="./assets/bootstrap/css/bootstrap-theme.min.css">
+    <script src="./assets/bootstrap/js/bootstrap.min.js"></script>
+
+
+    <!-- Google Analytics -->
+    <script>
+    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+    ga('create', 'UA-XXXXX-Y', 'auto');
+    ga('send', 'pageview');
+    </script>
+    <!-- End Google Analytics -->
+
+
+
     <!-- syntax highlighting -->
     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/styles/default.min.css" integrity="sha256-Zd1icfZ72UBmsId/mUcagrmN7IN5Qkrvh75ICHIQVTk=" crossorigin="anonymous" />
     <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/highlight.min.js" integrity="sha256-s63qpgPYoQk+wv3U6WZqioVJrwFNBTgD4dkeegLuwvo=" crossorigin="anonymous"></script>
-
-    <script type="text/javascript" src="./assets/js/shiro-site.js"></script>
-    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
-    <script type="text/javascript" src="./assets/js/jquery_googleanalytics/jquery.google-analytics.js"></script>
     <script>hljs.initHighlightingOnLoad();</script>
+
     <script type="text/javascript">
-        // initialize plugins
-        jQuery(function() {
-            //Google Analytics
-            jQuery.trackPage('UA-11551827-1');
-        });
 
         $( document ).ready(function() {
             addPageEditLink();
@@ -81,27 +97,97 @@
 </head>
 
 <body>
-    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
 
     <div id="top-bar"></div>
 
-    <div class="wrapper">
+    <div class="container" style="max-width: 1200px;">
+
+    <a class="github-fork-ribbon right-top" href="https://github.com/apache/shiro" title="Fork me on GitHub">Fork me on GitHub</a>
+
+
 
-        <div id="header">
-            <a href="./index.html"><div id="logo"></div></a>
-            <ul class="navigation">
+    <div class="masthead">
+        <p class="lead">
+            <a href="./index.html">
+                <img src="./assets/images/apache-shiro-logo.png" style="height:100px; width:auto; vertical-align: bottom; margin-top: 20px;">
+            </a>
+            <span class="tagline">Simple. Java. Security.</span>
+        </p>
+    </div>
+
+
+
+    <nav class="navbar navbar-default" role="navigation">
+        <!-- Brand and toggle get grouped for better mobile display -->
+        <div class="navbar-header">
+            <button type="button" class="navbar-toggle" data-toggle="collapse"
+                    data-target="#navbar-collapse-1">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+        </div>
+
+        <!-- Collect the nav links, forms, and other content for toggling -->
+        <div class="collapse navbar-collapse" id="navbar-collapse-1">
+            <ul class="nav navbar-nav">
                 <li><a href="./get-started.html">Get Started</a></li>
                 <li><a href="./documentation.html">Docs</a></li>
                 <li><a href="./web-features.html">Web Apps</a></li>
-                <li><a href="./integration.html">Integrations</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Integrations <b class="caret"></b>
+                    </a>
+
+                    <ul class="dropdown-menu">
+                        <li><a href="./spring.html">Spring</a></li>
+                        <li><a href="./guice.html">Guice</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./integration.html">Third-Party Integrations</a></li>
+                    </ul>
+                </li>
+
                 <li><a href="./features.html">Features</a></li>
-                <li><a href="./community.html">Community</a></li>
+
+                <li class="dropdown">
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                        Community <b class="caret"></b>
+                    </a>
+                    <ul class="dropdown-menu">
+                        <li><a href="./forums.html">Community Forums</a></li>
+                        <li><a href="./mailing-lists.html">Mailing Lists</a></li>
+                        <li><a href="./articles.html">Articles</a></li>
+                        <li><a href="./news.html">News</a></li>
+                        <li><a href="./events.html">Events</a></li>
+                        <li class="divider"></li>
+                        <li><a href="./community.html">More</a></li>
+                    </ul>
+                </li>
+
+            </ul>
+
+            <ul class="nav navbar-nav navbar-right">
+                <li class="dropdown">
+                    <a href="http://www.apache.org/" class="dropdown-toggle" data-toggle="dropdown">
+                        Apache Software Foundation <b class="caret"></b></a>
+                    <ul class="dropdown-menu">
+                        <li><a href="http://www.apache.org/">Apache Homepage</a></li>
+                        <li><a href="http://www.apache.org/licenses/">License</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
+                        <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+                        <li><a href="http://www.apache.org/foundation/sponsorship.html">Donate</a></li>
+                        <li><a href="http://www.apache.org/security/">Security</a></li>
+                    </ul>
+                </li>
             </ul>
         </div>
+        <!-- /.navbar-collapse -->
+    </nav>
 
-        <div id="content">
 
-                            
+            
 
 <!-- spacer allows enough room to display the header -->
 <div id="spacer" style="width: 0; height: 200px; float: left"></div>
@@ -267,27 +353,23 @@
 <a name="Spring-Lendahandwithdocumentation"></a>
 <h2><a href="#lend-a-hand-with-documentation" name="lend-a-hand-with-documentation">Lend a hand with documentation</a></h2>
 <p>While we hope this documentation helps you with the work you&rsquo;re doing with Apache Shiro, the community is improving and expanding the documentation all the time. If you&rsquo;d like to help the Shiro project, please consider corrected, expanding, or adding documentation where you see a need. Every little bit of help you provide expands the community and in turn improves Shiro.</p>
-<p>The easiest way to contribute your documentation is to send it to the <a href="http://shiro-user.582556.n2.nabble.com/">User Forum</a> or the <a href="mailing-lists.html" title="Mailing Lists">User Mailing List</a>.<br/><input type="hidden" id="ghEditPage" value="spring.md"></input></p>            
-        </div>
+<p>The easiest way to contribute your documentation is to send it to the <a href="http://shiro-user.582556.n2.nabble.com/">User Forum</a> or the <a href="mailing-lists.html" title="Mailing Lists">User Mailing List</a>.<br/><input type="hidden" id="ghEditPage" value="spring.md"></input></p>    
+</div>
 
-    </div><!--END WRAPPER-->
-
-    <div id="footer">
+    <div class="footer-padding"></div>
+    <footer class="custom-footer">
 
         <div class="wrapper">
 
             <a href="http://www.apache.org/foundation/contributing.html">Donate to the ASF</a> |
             <a href="http://www.apache.org/licenses/LICENSE-2.0.html">License</a>
             <p>Copyright &copy; 2008-2016 The Apache Software Foundation</p>
-
-            <div class="editThisPage">
-            </div>
-
+            <div class="editThisPage"></div>
             <div class="footer-shield"></div>
 
         </div> <!--END FOOTER WRAPPER-->
 
-    </div> <!--END FOOTER-->
+    </footer> <!--END FOOTER-->
 
 </body>
 </html>