передать переменную java в jsp: param - PullRequest
19 голосов
/ 26 марта 2011
 <%!  
    String str = "prerna";  
  %>  

 <jsp:include page="index.html">
      <jsp:param name="type1" value=<%=str%> >
      </jsp:param>  
 </jsp:include>

Я хочу передать переменную java в тег param, но я не уверен, как это сделать.

Я также хочу получить к нему доступ в index.html.
Может кто-нибудь предложить мне способ сделать это?

Ответы [ 5 ]

23 голосов
/ 27 марта 2011

Просто поместите его в value напрямую.

<jsp:include page="index.html">
    <jsp:param name="type1" value="prerna" />
</jsp:include>

Или используйте JSTL <c:set>, чтобы установить его, и EL ${}, чтобы получить его.

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
...
<c:set var="type1" value="prerna" />
...
<jsp:include page="index.html">
    <jsp:param name="type1" value="${type1}" />
</jsp:include>

И есливаша включенная страница является jsp, тогда вы можете использовать ее как ${param.type1}

4 голосов
/ 26 марта 2011

Параметры запроса могут быть переданы с помощью <jsp: param>
Можно передать имена параметров и значения в перенаправленный файл, используя тег <jsp: param>

Пример, например:

HTML:

<html>
<head>
<title></title>
</head>
<body>
<jsp:forward page="ssParameters.jsp">
  <jsp:param name="myParam" value="Amar Patel"/>
  <jsp:param name="Age" value="15"/>
</jsp:forward>
</body>
</html>   
Тег

<jsp:param> используется для передачи имени и значений в целевой файл. Эти параметры будут получены целевым файлом с использованием метода request.getParameter(). Таким образом, можно передать и получить параметры.

This page had a parameter forwarded to it:<br>
  <b>Name:</b> <%= request.getParameter("myParam") %><br>
  <b>Age:</b> <%= request.getParameter("Age") %>
2 голосов
/ 12 мая 2014

Для передачи параметров в jsp jstl:

/* JSP PARENT */

<jsp:include page="../../templates/options.jsp">                    
    <jsp:param name="action" value="${myValue}"/>       
</jsp:include>


/* JSP CHILD (options.jsp)*/

<div id="optionButtons left">       
    <span>${param.action}</span>
</div>
1 голос
/ 08 июня 2018

просто, но <% = str%> в двойных кавычках это должно работать, я надеюсь, что это ответ на ваш вопрос.

<%!  
    String str = "prerna";  
%>  

<jsp:include page="index.html">
      <jsp:param name="type1" value="<%=str%>" />  
</jsp:include>
0 голосов
/ 01 сентября 2018

Используя request.setAttribute(), вы можете передать переменную Java в JSP.

 <%  
    String str = "prerna";

    request.setAttribute("myVar",str);
  %>  

 <jsp:include page="index.html">
      <jsp:param name="type1" value="${myVar}" >
      </jsp:param>  
 </jsp:include>
...