Hi Ralph, I've been fiddling around with your layout class for the last days and always asked myself why I had to set the response segment name myself when using the addRequest method. A little digging into the sources today gave the answer :-)
In LayoutProcessor.php line 161 the code reads $this->_layoutManager->setResponseSegmentName($current_request_name); this should be $this->_layoutManager->setResponseSegmentName($current_request->getName()); and everything works just fine. Thanks a lot for your great work on this! Oh, and for everyone asking what I'm talking about or wanting a small example, here's what I do to use layout with subparts (say additional rendered actions): bootstrap.php ================ // Do this directly before calling dispatch() Xend_Layout::setup(array('path' => PATH_APPLICATION . 'common' . DIRECTORY_SEPARATOR . 'views' . DIRECTORY_SEPARATOR)); Xend_Layout::setDefaultLayoutName('base'); ControllerClass where the subpart is needed (best would be to do this via an extended action controller) ================================= $this->getHelper('LayoutManager')->getLayout('base')->addRequest(new Xend_Layout_Request('LoginBox', 'loginbox', 'auth')); base.phtml (layout) ======================= <div id="sidebar-left"> <p class="skip-link"><a href="#content"><?php echo $this->_('Skip to main content'); ?></a></p> <?php echo $this->LoginBox; ?> </div> <div id="content"> <a name="content"></a> <?php echo $this->content; ?> </div> That's it :-) Thanks again and read you later, Sascha