0

タイルアプリケーションを試しています。以下は私のコードです

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こんにちは

上記のコードで、(domainname)/example/aboutus.doを使用してアプリにアクセスしようとすると、500エラーが発生します。誰かがこれを理解するのを手伝ってくれますか?

4

1 に答える 1

1

エラーメッセージは次のとおりです。

パス/aboutusのアクションインスタンスを作成できませんでした。エラーが表示されます

これは、Strutsがstruts-config.xmlで構成されているアクションクラスを。としてインスタンス化できないことを意味しますjava.com.mbest.core.action.AboutUsAction。クラスの名前はjava.com.mindbest.core.action.AboutUsActionです。したがって、明らかに、このエラーが発生します。

また、javaパッケージはJREのコアクラス用に予約されていることに注意してください。私はあなたのコンパイラがそのようなクラスをコンパイルすることを受け入れるか、少なくとも警告を出さないことにさえ驚いています。java.**クラスをパッケージに入れないでください。

于 2012-06-02T12:06:47.950 に答える