Bonsoir,

Désolé de poluer la section Strut. J'ai encore un petit souci. J'aimerais récuperer les valeurs d'un combobox


mais j'obtiens à chaque fois l'erreur suivant :
org.apache.jasper.JasperException: An exception occurred processing JSP page /pages/AdmClientList.jsp at line 67

64: </tr>
65: </table>
66:
67: <html:form action="/Adm_Client?action=list">
68: <html:select property="commercialId">
69: <c:forEach var="p" items="${commercial}">
70: <option value="${p.firstName}">${p.firstName}</option>

Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398)
.....
Cause mère
javax.servlet.ServletException: javax.servlet.jsp.JspException: Exception creating bean of class ac.crm.struts.form.AdmClientForm: {1}
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:850)
.....

AdmClientList.jsp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
<html:form action="/Adm_Client?action=list">
	<html:select property="commercialId">
		<c:forEach var="p" items="${commercial}">
			<option value="${p.firstName}">${p.firstName}</option>
		</c:forEach>
	</html:select>
	<html:submit></html:submit>
</html:form>
strut-config.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
<form-bean name="AdmClientForm" type="ac.crm.struts.form.AdmClientForm" />
<action path="/Adm_Client"
	type="ac.crm.struts.action.AdmClientAction"
	name="AdmClientForm"
	parameter="action"
	scope="request">
        <forward name="list" path="/pages/AdmClientList.jsp"></forward>
</action>

L'action form
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
18
19
20
21
22
package ac.crm.struts.form;
import org.apache.struts.action.ActionForm;
 
public class AdmClientForm extends ActionForm
{
	private String commercialId;
 
 
	public AdmClientForm(String commercialId) {
		super();
		this.commercialId = commercialId;		
	}
 
	public String getCommercialId() {
		return commercialId;
	}
 
	public void setCommercialId(String commercialId) {
		this.commercialId = commercialId;
	}
 
}
Et l'action :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
public class AdmClientAction extends DispatchAction{
 
	public ActionForward list(ActionMapping mapping, ActionForm form,
		HttpServletRequest request, HttpServletResponse response)
		throws Exception {
	    Gestion_BdD dataBase = new Gestion_BdD("root");
	    List<Commercial> com = dataBase.List_Commercial();
	    request.setAttribute("commercial", com);
 
	    return mapping.findForward("list");
	}
}
L'exception indique que j'ai un problème de bean. Or l'action form est bien présent dans le bon package (ainsi que le .class) avec le bon attribut.

La page se rapelle sur elle meme. C'est voulu. Je compléterais par la suite l'action pour récupérer les valeurs du formulaire grace au form-bean AdmClientForm ....