0

jspに引数として渡された文字列を何とか印刷できますか? アクションがあるとしましょう: package com.test;

 public class TestAction extends Action {

     String foo="bar";
   @Override
   public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
     //request.setParameter("foo", doo); // this does not work, I would like to achieve it. 
     return mapping.findForward("sql");
   }

 }

およびjspファイル:

 <!DOCTYPE html>
 <%@page contentType="text/html"%>
 <%@page pageEncoding="UTF-8" %>
 <%@page import="com.test.TestAction" %>
 <%= request.getParameter("foo") %>

struts-config.xml に次のように定義しました。

 <action     
      name="loginForm"
      path="/login"
      scope="request"
      type="com.test.com.test.TestAction"
      validate="false">
          <forward name="sql" path="/index.jsp" />
 </action>

私はそれを行うことができますか?

4

2 に答える 2

4

次の 2 点を変更する必要があります。

  request.setParameter("foo", doo);

する必要があります

  request.setAttribute("foo", doo);

<%= request.getParameter("foo") %>

する必要があります

<c:out value="${request.foo}"/>

一部は保守性のため、一部はインジェクション攻撃に対する保護として...doo有効な(そして安全な)HTMLタグを実際に含めることを期待している場合を除きます。( の使用<c:out>は、あなたが持っていることを前提としています

<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>

JSP の開始時)。

于 2012-09-17T12:43:26.957 に答える
1

set/getAttributeの代わりに使用してみましたset/getParameterか?

于 2012-09-17T12:32:03.797 に答える