Bonjour,

Voici le décor :
J'ai un BeanA qui a pour attributs une String et une List<BeanB>.
Le BeanB a pour attributs deux String.
Dans ma JSP, je récupère une liste de plusieurs beanA.

Je ne dois utiliser que les tag suivants :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
<%@ taglib uri = "/WEB-INF/taglib/struts-bean.tld" prefix = "bean"%>
<%@ taglib uri = "/WEB-INF/taglib/struts-html.tld" prefix = "html"%>
<%@ taglib uri = "/WEB-INF/taglib/struts-logic.tld" prefix = "logic"%>
Voici le beanA :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class BeanA {
 
	//ATTRIBUTS
	private final String code;
	private final List<BeanB> beanBList;
 
	//CONSTRUCTOR
        public BeanA(){this(null, null);}
	public BeanA(String code, List<BeanB> beanBList) {
		this.code = code;
		this.beanBList = beanBList;
	}
 
	//ACCESSORS
	public String getCode() {return code;}
	public List<BeanB> getBeanBList() {return beanBList;}
}
Voici le BeanB :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class BeanB {
	//ATTRIBUTES
	private String att1;
	private String att2;
 
	//CONSTRUCTORS
	public BeanB(){this(null, null);}
	public BeanB(String att1, String att2) {
		super();
		this.att1 = att1;
		this.att2 = att2;
	}
 
	//ACCESSORS
	public String getAtt1() {return att1;}
	public String getAtt2() {return att2;}
}
Voici le code de ma JSP, il n'est pas fini car je n'arrive pas à récupérer les attributs du BeanB :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<script language="javascript">
	var conf = {
		<logic:iterate id="option" name="beanAList">
			'<bean:write name="option" property="code"/>' : { conf : <bean:write name="option" property="beanBList"/>},
		</logic:iterate> 
	};
</script>
Ce que je souhaite faire :
Dans ma JSP, je souhaite construire une config qui devra avoir cette forme pour ensuite l'exploiter dans un javascript :
Ci-dessous, les méthodes get donneront bien sûr directement l'attribut souhaité ... de même, BeanA.getCode() donnera lui aussi l'attribut code souhaité. Disons que c'est struts qui s'occupe de cela ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
{
	{'BeanA.getCode' : 
		{ conf : BeanB.getAtt1(), BeanB.getAtt2(), 
		BeanB.getAtt1(), BeanB.getAtt2(),
		BeanB.getAtt1(), BeanB.getAtt2()},
	'BeanA.getCode' : 
		{ conf : BeanB.getAtt1(), BeanB.getAtt2(), 
		BeanB.getAtt1(), BeanB.getAtt2(),
		BeanB.getAtt1(), BeanB.getAtt2()},
	... etc
};
Pour l'instant, j'arrive à récupérer les BeanB mais pas leurs attributs ... du coup j'obtiens ce résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
{
 
	'BeanA.getCode' : { conf : [package.BeanB@e8e70f0, package.BeanB@2998a407, package.BeanB@6438dce6, package.BeanB@512eb371, package.BeanB@5106e95a, package.BeanB@1cc23d45, package.BeanB@14448bc3]},		
	'BeanA.getCode' : { conf : [package.BeanB@2033b99a, package.BeanB@23de3dfa, package.BeanB@53b6fa7b, package.BeanB@11f6cc2d, package.BeanB@61d6a791, package.BeanB@539352c5, package.BeanB@6d1f2e60]},
 
...etc
	};
Si quelqu'un veux bien m'aider !?!

Merci,