2011-07-06 6 views
0

Je me demande s'il est possible d'utiliser jsp variable dans les balises struts 2.comment utiliser jsp variable dans struts 2 tag

J'ai essayé comme indiqué ci-dessous mais je n'ai pas travaillé.

Suggérez-moi s'il y a un moyen de le faire.

<%@ taglib prefix="s" uri="/struts-tags" %> 

<% for(int i=0;i<10;i++) 
    { 
%> 

    <s:textarea name=%{i} value=%{i}></s:textarea> 
<%}%> 

aidez-moi s'il vous plaît.

+0

Quelqu'un peut-il me fournir un code pour cela en utilisant des balises 2 balises – Jagan

+0

Vous ne pouvez pas. Les balises struts lisent les valeurs de ValueStack. Utilisez la balise s: itérateur comme d'autres l'ont suggéré ou utilisez la balise c: forEach si vous voulez utiliser JSP EL. –

Répondre

2

Pour toute question concernant les balises Struts2 s'il vous plaît voir: http://struts.apache.org/2.2.1.1/docs/tag-reference.html

Notez le début et propriétés finales comme suit

<s:iterator var="counter" begin="0" end="9" > 
    <s:textfield name="%{#counter}" value="%{#counter}" /><br/> 
</s:iterator> 

produira le résultat souhaité.

Modifier: en lisant votre commentaire à leonbloy, vous n'utiliserez pas ce qui précède, mais plutôt itérez la collection. Fournissez un getter qui renvoie votre collection. à savoir:

public List<String> getCollection(){return this.collection}; 

Ensuite, dans le jsp vous écririez:

<s:iterator value="collection"> 
    <s:property/><br/> 
</s:iterator> 

La imprimera ci-dessus toutes les chaînes de la collection.

+0

Merci beaucoup ça marche ...... – Jagan

1

Avez-vous essayé?

<s:property value="%{#i}" /> 

Lire la docs. BTW, ce code sent mauvais, vous devriez essayer de ne pas mélanger les balises struts2 avec JSP Scriptlets (en général -struts2 ou quoi que ce soit- vous devriez essayer d'éviter JSP Scriptlets <% ... %> autant que possible.). Lisez à propos de l'étiquette iterator.

+0

Essayé .... ça ne marche pas. – Jagan

+0

Je lis des valeurs de base de données. Ces valeurs devraient être montrées dans le textarea. Nombre de textarea ne sont pas fixes. Juste pour la simplicité j'ai écrit pour la boucle. – Jagan