Bonjour à tous,
je vous expose mon petit problème :
Je dois générer une page web avec des champs de formulaire classiques ainsi qu'une liste d'objets (nombre inconnu).
J'ai donc généré ma classe ActionForm comme suit :
ma classe d'objet est quant à elle definie de la manière suivante :public class AdminTerminalForm extends ActionForm {
public static final long serialVersionUID = 2087450798028622785L;
private String mode;
private String id;
private String internalNumber;
.....
private CallerGroupRoutingParameters routingParameters[];
...
/**
* @return the routingParameters
*/
public CallerGroupRoutingParameters[] getRoutingParameters() {
return routingParameters;
}
/**
* @param routingParameters the routingParameters to set
*/
public void setRoutingParameters(
CallerGroupRoutingParameters[] routingParameters) {
this.routingParameters = routingParameters;
}
...
}
ma classe Action construit ses données, et met a jour l'actionForm de la manière suivante :public class CallerGroupRoutingParameters {
private String goupId;
private String groupName;
private String onDisengagedEnable;
private String onDisengagedDestination;
private String onBusyEnable;
private String onBusyDestination;
private String onNoAnswerEnable;
private String onNoAnswerDestination;
public String getGoupId() {
return goupId;
}
...
}
et la JSP utilise le tout pour afficher mes champs de formulaire :actionForm.setRoutingParameters(curTerminalData.getRoutingParameters());
jusque la, tout se passe bien, mon JSP affiche correctement les données récupérées de la base de données sous forme de champs de formulaires<nested:iterate id="routing" property="routingParameters" indexId="idx">
....
<nested:checkbox name="routing" property="onDisengagedEnable" />
<nested:select styleClass="size150" name="routing" property="onDisengagedDestination" size="1" style="background-color:#fffac2;">
<option> </option>
<html:options collection="listDestcall" property="value" labelProperty="label" />
</nested:select>
....:
Cela se corse lorsque je veux récupérer les données modifiées dans mon ma classe Action pour mettre à jour la base de données.<input type="checkbox" name="onDisengagedEnable" value="on" checked="checked">
<select name="onDisengagedDestination" size="1" style="background-color:#fffac2;" class="size150"><option> </option>
<option value="300030003#NetworkEntity" selected="selected">PSC-1</option>
<option value="300030001#NetworkEntity">CRCm-1</option>
<option value="300030002#NetworkEntity">CRCm-2</option>
<option value="64480602#Terminal">FOUGERE (64480602)</option></select>
....
En effet mon actionForm.getRoutingParameters(); est systématiquement à null.. ce que je comprend bien car je n'ai pas de champ de formulaire de ce nom dans ma page générée..![]()
Je voudrais récupérer mon tableau d'objets CallerGroupRoutingParameters dans mon ma classe Action...; or la page générée par mon JSP ne contient que de listes de champs onDisengagedDestination, etc....
J'ai pense utiliser un request.getParameter(...) mais cela m'oblige à recréer manuellement mon objet CallerGroupRoutingParameters[], et je trouve ca lourd, pas propre du tout, et surtout potentiellement source d'erreurs
Je voudrais savoir comment récupérer dans ma classe Action mon objet composé sachant qu'au niveau stictement HTML, les carractéristiques de mon objet sont générées sous forme de champs simples....
Merci a tous pour votre aide.![]()
Partager