TellaspallaBob
30-09-2009, 16:55
Salve a tutti, ho alcuni problemi con una piccola form che in alcuni casi non comunica in modo corretto con la mia Action.
Allora questa è la mia jsp
<html:form action="/miaActionPath.do">
<table>
<tr>
<td>
<label><bean:message key="label.filter"/></label>
<html:text property="fieldFilter" maxlength="14"/>
</td>
<td>
<html:submit property="method">
<bean:message key="label.button.filter"/>
</html:submit>
</td>
<td>
<label><bean:message key="label.filtered.data"/></label>
<html:select property="dataFilteredID">
<html:option value="-1">.........</html:option>
<html:optionsCollection name="<%=MiaListaInSessione%>" value="id" label="desc"/>
</html:select>
</td>
<td>
<html:submit property="method">
<bean:message key="label.button.detail"/>
</html:submit>
</td>
<td>
<html:submit property="method">
<bean:message key="label.button.reset"/>
</html:submit>
</td>
</tr>
</table>
</html:form>
Ecco i problemi:
Se nel campo di test "fieldFilter" scrivo qualcosa e poi premo invio, ottengo un'eccezione che mi dice che il parametro "method" non esiste. Questo mi sembra anche logico visto che il tag "parameter" lo uso per passare il valore inserito alla mia ActionForm, ma non vedo come ovviare a questo. La cosa strana, e potete provare, se duplicate il blocco del campo "fieldFilter" e riprovate a fare la stessa cosa, questo problema non avviene.
vorrei evitare di usare un bottone per andare nel dettagli dell'item selezionato, sfruttare quindi il tag "onchange" della select, ma non so come fare a far scaturire il metodo post.... Se uso uno javascript tipo:"location.href='<%=request.getContextPath()%>/miaActionPath.do?method=doChangeitem" funziona ma ovviamente non essendo stato fatto il submit il selezionato non viene passato alla ActionForm
La versione di Struts che sto utilizzando e' la 1.2.x
Avete dei suggerimenti per ovviare al primo problema e come risolvere il secondo quesito?
Ringrazio in anticipo tutti
Allora questa è la mia jsp
<html:form action="/miaActionPath.do">
<table>
<tr>
<td>
<label><bean:message key="label.filter"/></label>
<html:text property="fieldFilter" maxlength="14"/>
</td>
<td>
<html:submit property="method">
<bean:message key="label.button.filter"/>
</html:submit>
</td>
<td>
<label><bean:message key="label.filtered.data"/></label>
<html:select property="dataFilteredID">
<html:option value="-1">.........</html:option>
<html:optionsCollection name="<%=MiaListaInSessione%>" value="id" label="desc"/>
</html:select>
</td>
<td>
<html:submit property="method">
<bean:message key="label.button.detail"/>
</html:submit>
</td>
<td>
<html:submit property="method">
<bean:message key="label.button.reset"/>
</html:submit>
</td>
</tr>
</table>
</html:form>
Ecco i problemi:
Se nel campo di test "fieldFilter" scrivo qualcosa e poi premo invio, ottengo un'eccezione che mi dice che il parametro "method" non esiste. Questo mi sembra anche logico visto che il tag "parameter" lo uso per passare il valore inserito alla mia ActionForm, ma non vedo come ovviare a questo. La cosa strana, e potete provare, se duplicate il blocco del campo "fieldFilter" e riprovate a fare la stessa cosa, questo problema non avviene.
vorrei evitare di usare un bottone per andare nel dettagli dell'item selezionato, sfruttare quindi il tag "onchange" della select, ma non so come fare a far scaturire il metodo post.... Se uso uno javascript tipo:"location.href='<%=request.getContextPath()%>/miaActionPath.do?method=doChangeitem" funziona ma ovviamente non essendo stato fatto il submit il selezionato non viene passato alla ActionForm
La versione di Struts che sto utilizzando e' la 1.2.x
Avete dei suggerimenti per ovviare al primo problema e come risolvere il secondo quesito?
Ringrazio in anticipo tutti