Newsgroup: it.comp.java
Titolo: [STRUTS] Prepopolamento e combo

Ciao a tutti.
Sarò scemo io, ma ho il seguente problema.
Il seguente codice, all'interno di una jsp, utilizzando le Tag Library di
Struts genera (correttamente) una combo.
<html:select property="deliverymethod">
<html:option value="-1">Tutti</html:option>
<html:option value="D">Download and Play</html:option>
<html:option value="S">Streaming</html:option>
</html:select>
Tale select è all'interno di un form :
<html:form action="/actions/adminSearchCSAction.do"
name="searchForm"
type="com.vs.fe.forms.CSForm" >
<codice form>
</html:form>
la jsp quindi richiama la adminSearchCSAction, che effettua una ricerca e
ripropone i risultati alla stessa jsp chiamante.
Il problema è che vorrei che la combo si valorizzasse secondo l'ultima
scelta fatta.
Ovviamente ho un oggetto form:
package com.vs.fe.forms;
import javax.servlet.http.*;
import org.apache.struts.action.*;
import com.vs.utils.log.LogWrapper;
public class CSForm extends ActionForm {
  private String deliverymethod = "-1";
  public void reset(ActionMapping mapping, HttpServletRequest request) {
    deliverymethod = "-1";
  }
  public ActionErrors validate(ActionMapping mapping, HttpServletRequest
request) {
    ActionErrors errors = new ActionErrors();
    LogWrapper.logInMethod("CSForm: validate(ActionMapping mapping,
HttpServletRequest request)");
    LogWrapper.logMinorException("CSForm - Return errors:" + errors.size());
    return errors;
  }
  public String getDeliverymethod() {
    return deliverymethod;
  }
  public void setDeliverymethod(String _deliverymethod) {
    deliverymethod = _deliverymethod;
  }
}
che contiene il valore che vorrei propagare da una jsp all'altra.
A questo punto mi chiedo: cosa devo fare nella action?
posto che ho messo anche un
request.setAttribute("searchForm", csform );
nella action comunque il valore non mi si propaga, la select rimane come se
fosse alla prima invocazione.
Grazie a tutti.

Ho risolto.
Ero scemo io.
Nello struts-config.xml va indicato il nome corretto del bean di tipo form,
LO STESSO NOME che viene utilizzato nel form.
Beata ignoranza.
Domanda: ma nessuno di voi usa struts? che ne pensate?

 Domanda: ma nessuno di voi usa struts? che ne pensate?
Io l'ho usato per realizzare una webapp durante il tirocinio.
Beh non mi ritengo un grande esperto però credo che per sviluppare una
applicazione web secondo il modello consigliato dalla Sun del MVC sia un
valido strumento anche se è ancora nella sua infanzia.
Ci sono molte cose che ho trovato interessanti:
- Le varie tag library riducono il codice java nelle jsp a vantaggio di una
maggior leggibilità e semplicità nella gestione della pagine
- Permette di separare molto bene le parti di Model, View e Controller
- Il Validator è un ottimo strumento per effettuare la validazione dei campi
di un form in quanto tanti controlli sono già preconfezionati ma offre
comunque la possibilità di aggiungerne altri personalizzati
- Mi sembra gestisca abbastanza bene l'internazionalizzazione e gli errori
di validazione di un campo
Poi non saprei paragonarlo ad altri strumenti perchè le mie conoscenze sono
limitate in materia!
Certo è che ho trovato molto stimolante imparare ad usare questo prodotto
della jakarta.
Ti rigiro la domana: e tu invece cosa ne pensi? ^_^
Byez

Domanda: ma nessuno di voi usa struts? che ne pensate?
Lo sto usando ora: non so se sia il miglior framework, ma penso che
realizzare una qualsiasi web-application minimamente complessa senza
appoggiarsi ad un framework non sia una buona idea. Come avranno fatto
prima? :-)
Personalmente struts mi piace, sto cominicando a vedere qualche
limite, ma crescera` ancora, suppongo.
Non e` necessariamente legato a Struts, ma trovo un'ottima idea
abolire qualsiasi scriplet all'interno delle jsp ed usare
esclusivamente tag libraries.

...
