1

JSP にオブジェクトのリストがあり、クリックされたハイパーリンクに基づいて値をサーブレットに送り返したいと考えています。私のコードは以下のとおりです。

<body>
    <h1>Choose a Festival</h1>
    <jsp:useBean id="allFestivals" type="java.util.ArrayList" scope="session" />
    <table border ="1">
        <tr>
            <td>Festival Name:</td>
            <td>Location:</td>
            <td>Start Date:</td>
            <td>End Date:</td>
            <td>URL:</td>
            <td>List of Trips to </td>
        </tr>
        <c:forEach items="${allFestivals}" var="allFestivals">
        <tr>      
            <td>${allFestivals.festivalName}</td>
            <td>${allFestivals.location}</td>
            <td>${allFestivals.startDate}</td>
            <td>${allFestivals.endDate}</td>
            <td>${allFestivals.URL}</td>
            <td>
                //THE ISSUE IS IN THIS FORM, I SUPPOSE SYNTAX ISSUE
                <form name="linkChecker" method="get" action="ControllerServlet">
                    <input type = "hidden" value="${allFestivals.ID}" name="festivalProfileLink" /> 
                    <a HREF ="javascript:document.linkChecker.submit()">View Related Trips</a>
                </form>
            </td>
        </tr>
        </c:forEach>
    </table> 

<a href="logout.jsp">Logout</a>

</body>

およびサーブレット GET メソッド:

 @Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException  {

    String aa = request.getParameter("festivalProfileLink");
    JOptionPane.showMessageDialog(null, aa);
    if("hello".equals(aa)) {
            JOptionPane.showMessageDialog(null, "dfgdfgdf");
    }
 }

現時点では、サーブレットに情報は送信されていません (または少なくとも値はありません)。

4

2 に答える 2

1

POST リクエストを行っていますが、doGet()試してみても結果が得られませんdoPost()

投稿の編集に基づいて回答を編集

このタイプの操作には GET が適しています。リンクを生成するだけです。

以前の投稿でここに提案されているように、URL でパラメーターを渡すリンクを生成する必要があります

このアプローチでは、firebugを使用して調査できる間違ったパスに投稿していると思われます

于 2013-04-06T23:12:35.330 に答える
0

サーブレット内で JOptionPane を使用するのは非常に奇妙です。代わりに、何かをログに記録するだけです。

于 2013-04-06T23:53:45.110 に答える