web-dev-qa-db-fra.com

passer la variable Java dans jsp: param

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

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

Je veux passer une variable Java dans la balise param, mais je ne suis pas sûr de savoir comment le faire. 

Je veux aussi y accéder dans index.html.
Quelqu'un peut-il me suggérer le moyen de le faire?

19
Deep

Il suffit de le mettre dans value directement.

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

Ou utilisez JSTL <c:set> pour le définir et EL ${} pour l'obtenir.

<%@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>

Et si votre page incluse est un jsp, vous pouvez l’utiliser comme ${param.type1}

23
BalusC

Les paramètres de demande peuvent être passés en utilisant <jsp: param>
On peut passer les noms de paramètres et les valeurs au fichier transféré en utilisant une balise <jsp: param> 

Exemple:

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>   

La balise <jsp:param> permet de transmettre le nom et les valeurs au fichier ciblé. Ces paramètres seront récupérés par le fichier ciblé en utilisant la méthode request.getParameter(). De cette façon, on peut passer et récupérer les paramètres. 

This page had a parameter forwarded to it:<br>
  <b>Name:</b> <%= request.getParameter("myParam") %><br>
  <b>Age:</b> <%= request.getParameter("Age") %>
4
sgokhales

Pour passer des paramètres à un 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>
2
borchvm

<% = str%> entre guillemets, cela devrait fonctionner. J'espère que cela répond à votre question.

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

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

À l'aide de request.setAttribute(), vous pouvez transmettre la variable Java à JSP.

 <%  
    String str = "prerna";

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

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