0
<body>
  <form action="testServlet.java">
  <TABLE border="0" align="center">
    <TR height="40">
      <TD width="40"><a href="Hoda/testServlet?direction=b"><img
        src=<%=request.getAttribute("imgSrc")%> width="40" height="40" /></a>
      </TD>
  </form>
</body>

サーブレット:

@WebServlet("/testServlet")
public class testServlet extends HttpServlet {
   String imgSrc = "red.png";

   protected void service(HttpServletRequest reques,HttpServletResponse response) throws ServletException, IOException {

      String str = request.getParameter("direction");

      if (str.startsWith("b")) {
        imgSrc = "black.png";
      }

      request.setAttribute("imgSrc", imgSrc);
   }
}

JSP ページで、サーブレットから画像ソースを取得するセルを作成しました。サーブレットに imgSrc を要求するリンクタグを入れたのですが、うまくいきません。サーブレットを使用して JSP ページの imgSrc を変更する方法を教えてください。JSP が別のページへのディスパッチではなく、単に結果を表示するようにしたい。ここに私のコードがあります:

4

2 に答える 2

0

この投稿を参照してください。

http://ajax911.com/dynamically-display-images-java-servlet-tomcat/

于 2012-07-25T13:59:54.410 に答える
0

同じリクエストで処理が行われるように、サーブレット API の RequestDispatcher を使用してサーブレットから JSP に転送する必要があります。そうしないと、属性が設定されません。カスタム インクルード ロジックを使用することもできますが、通常はサーブレットを「フロント」として使用し、JSP を使用してコンテンツをレンダリングします。うまくいけば、これが理にかなっており、サーブレット JavaDoc で API を追跡できるはずです。

于 2012-07-25T13:37:53.943 に答える