Struts Tiles application

Posted by rav83 on Stack Overflow See other posts from Stack Overflow or by rav83
Published on 2012-06-02T10:37:10Z Indexed on 2012/06/02 10:41 UTC
Read the original article Hit count: 224

Am trying a tiles application.Below is my code

tiles-defs.xml

</tiles-definitions>
        <definition name="${YOUR_DEFINITION_HERE}">
        </definition>

        <definition name="commonPage" path="/jsps/template.jsp">
            <put name="header" value="/jsps/header.jsp" />
            <put name="menu"   value="/jsps/menu.jsp" />
            <put name="body"   value="/jsps/homebody.jsp" />
            <put name="footer"  value="/jsps/footer.jsp" />
        </definition>

           <definition name="aboutUsPage" extends="commonPage">
            <put name="body" value="/jsps/aboutUsBody.jsp" />
        </definition>

    </tiles-definitions>


struts-config.xml           

  <action path="/aboutus"
        type="java.com.mbest.core.action.AboutUsAction"
        parameter="method">
        <forward name="success" path="aboutUsPage"/>        
        <forward name="failure" path="aboutUsPage"/>            
        </action>


</action-mappings>


template.jsp
    <%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
    <html>
    <head><title></title></head>
    <body>
    <table border="1"  cellspacing="0" cellpadding="0" style="width: 98%; height: 100%">
    <tr>
        <td colspan="2">
            <tiles:insert attribute="header"/>
        </td>
    </tr>
    <tr style="height: 500px">
        <td valign="top" style="width: 200px">
            <tiles:insert attribute="menu"/>
        </td>
        <td valign="baseline" align="left">
            <tiles:insert attribute="body"/> 
    </tr>
    <tr>
        <td colspan="2">
            <tiles:insert attribute="footer"/> 
        </td>
    </tr>
    </table>
    </body>
    </html>

homebody.jsp

   <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
    <%@taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
    <%@taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
    <html>
    <head>
    <title></title>
    <style type="text/css">
    <%@include file="../css/helper.css"%>
    <%@include file="../css/dropdown.css" %>
    <%@include file="../css/default.ultimate.css" %>
    </style>
    </head>
    <body>
    <div id="header">
    <ul id="nav" class="dropdown dropdown-horizontal">
        <li><span class="dir"><html:link page="/aboutus.do?method=aboutUsPage" >About Us</html:link></span></li>
        <li><span class="dir"><a href="./">Products</a></span></li>
        <li><span class="dir"><a href="./">Infrastructure</a></span></li>
        <li><span class="dir"><a href="./">Pharmaceutical Formulations</a></span></li>
        <li><span class="dir"><a href="./">Contact Us</a></span></li>
    </ul>
    </div>
    </body>
    </html>

AboutUsAction.java
package java.com.mindbest.core.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;

public class AboutUsAction extends DispatchAction
{
    public ActionForward aboutUsPage(ActionMapping mapping,ActionForm form,
                                HttpServletRequest request,HttpServletResponse response)throws Exception
    {
        return mapping.findForward("success");

    }

}

aboutUsBody.jsp hello

In my above code if i try to access the app using (domainname)/example/aboutus.do its giving 500 error.Can anyone help me figure this out?

© Stack Overflow or respective owner

Related posts about struts

Related posts about tiles