title: Could not create navigation based on Zend_Acl
body: <p>I am trying to learn to create navigation with Zend_Acl.
  But the navigation only displays for admin and no one else.</p>
  
  <p>I have read through my code and I tried to trace the code that comes with ZendFramework. But I am stuck and I can't figure out what I am doing wrong.</p>
  
  <p>Here is my acl class:</p>
  
  <pre><code>class Application_Model_LibraryACL extends Zend_Acl
  {
      public function __construct()
      { 
              $this-&gt;add(new Zend_Acl_Resource( 'guestbook' ) );
              $this-&gt;add( new Zend_Acl_Resource( 'index' ) );
  
              $this-&gt;add(new Zend_Acl_Resource( 'error' ) );
              $this-&gt;add(new Zend_Acl_Resource( 'authentication' ) );
              $this-&gt;add(new Zend_Acl_Resource( 'login' ), 'authentication' );
              $this-&gt;add(new Zend_Acl_Resource( 'logout' ), 'authentication' );
  
              $this-&gt;addRole( new Zend_Acl_Role( 'guest' ) );
              $this-&gt;addRole( new Zend_Acl_Role( 'member' ), 'guest' );
              $this-&gt;addRole( new Zend_Acl_Role( 'admin' ), 'member' );
  
              $this-&gt;allow( 'guest', 'error', 'error' );
              $this-&gt;allow( 'guest', 'index', 'index' );
              $this-&gt;allow( 'guest', 'authentication', array( 'login', 'logout' ) );
              $this-&gt;allow( 'member', 'guestbook', 'sign' );
              $this-&gt;allow( 'admin' );
      } 
  }
  </code></pre>
  
  <p>Here is the xml file that defines the navigation:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;config&gt;
      &lt;nav&gt;
              &lt;home&gt;
                      &lt;label&gt;Home&lt;/label&gt;
                      &lt;controller&gt;index&lt;/controller&gt;
                      &lt;action&gt;index&lt;/action&gt;
                      &lt;resource&gt;index&lt;/resource&gt;
              &lt;/home&gt;
  
              &lt;logout&gt;
                      &lt;label&gt;Logout&lt;/label&gt;
                      &lt;controller&gt;authentication&lt;/controller&gt;
                      &lt;action&gt;logout&lt;/action&gt;
                      &lt;resource&gt;logout&lt;/resource&gt;
              &lt;/logout&gt;
  
              &lt;login&gt;
                      &lt;label&gt;Login&lt;/label&gt;
                      &lt;controller&gt;authentication&lt;/controller&gt;
                      &lt;action&gt;login&lt;/action&gt;
                      &lt;resource&gt;login&lt;/resource&gt;
              &lt;/login&gt;
  
              &lt;guestbook&gt;
                      &lt;label&gt;Guestbook&lt;/label&gt;
                      &lt;resource&gt;guestbook&lt;/resource&gt;
                      &lt;uri&gt;&lt;/uri&gt;
                      &lt;pages&gt;
                              &lt;list&gt;
                                      &lt;label&gt;List&lt;/label&gt;
                                      &lt;controller&gt;guestbook&lt;/controller&gt;
                                      &lt;action&gt;index&lt;/action&gt;
                                      &lt;resource&gt;guestbook&lt;/resource&gt;
                              &lt;/list&gt;
                              &lt;sign&gt;
                                      &lt;label&gt;Sign&lt;/label&gt;
                                      &lt;controller&gt;guestbook&lt;/controller&gt;
                                      &lt;action&gt;sign&lt;/action&gt;
                                      &lt;resource&gt;guestbook&lt;/resource&gt;
                              &lt;/sign&gt;
                      &lt;/pages&gt;
              &lt;/guestbook&gt;
  
  
      &lt;/nav&gt;
  </code></pre>
  
  <p></p>
  
  <p>And here is the code in the bootstrap file that sets up the navigation:                             </p>
  
  <pre><code>$navContainerConfig = new Zend_Config_Xml( APPLICATION_PATH . '/configs/navigation.xml', 'nav' );
  $navContainer = new Zend_Navigation( $navContainerConfig );
  $view-&gt;navigation( $navContainer )-&gt;setAcl( $this-&gt;acl )-&gt;setRole( Zend_Registry::get( 'role' ) );
  </code></pre>
  
  <p>$this->acl holds the acl object and zend registry holds the role of the logged in user.</p>
  
  <p>please ask any question you might have. I have been completely stuck for over 3 days. </p>