Формы Struts по-прежнему пусты

#java #jsp #struts

#java #jsp #struts

Вопрос:

Я начинающий разработчик, и я работаю над веб-приложением на Java с struts. У меня проблема с моей формой struts, которая остается пустой после ввода пользователем информации. Я пробовал много способов решить эту проблему, но ничего не получалось. Может быть, строки кода помогут вам помочь мне ;). Моя страница Jsp :

 <tr>
<td colspan="5">
    <div class="content" align="center">
        <form action="statistiques.do" method="POST">
            <input type="hidden" name="operation" value="module1">
            <tr>
                <td><font size="3">amp;Eacute;tatamp;nbsp;:amp;nbsp;</td>
                <td>
                    <select name="choixEtat">
                        <option value='1' selected>Tous</option>
                        <option value='2' >Actif</option>
                        <option value='3' >Inactif</option>
                    </select>
                </td>   
            </tr>   
            <tr>
                <td>Date de damp;eacute;butamp;nbsp;:<span style="font-weight: bolder; color: red;">amp;nbsp;amp;#42;</span></td>
                <td>
                    <input type="text" name="dateDebut" size="10" maxlength="10" id="date" value="" 
                           required="required">
                </td>
            </tr>
            <tr>
                <td>Date de finamp;nbsp;:<span style="font-weight: bolder; color: red;">amp;nbsp;amp;#42;</span></td>
                <td>
                    <input type="text" name="dateFin" size="10" maxlength="10" id="date2" value="" 
                           required="required">
                </td>
            </tr>

            <tr>
                <td><font size="3">Chargamp;eacute;(e)(s)</td>
                <td>
                    <select name="chargeMatricule">
                        <option value="0" selected></option>
                        <% for (Utilisateur u : utilisateurs) {%>
                        <option value="<%=u.getUtilisateurMatricule()%>"><%=u.getUtilisateurNom()   ", "   u.getUtilisateurPrenom()%></option>
                        <%}%>
                    </select>
                </td>
            </tr>
            <tr>
                <td><font size="3">Activitamp;eacute;amp;nbsp;:amp;nbsp;</td>
                <td>
                    <select name="activiteNom">
                        <option value="0" selected></option>
                        <% for (String s : activites) {%>
                        <option value="<%=s%>"><%=s%></option>
                        <%}%>
                    </select>
                </td>
            </tr>
            <td colspan='5' align="center">
                <input type="submit">
            </td>
            </tr>
        </form>
    </div>
</td>
  

и мое действие :

 public class ActionStatistiques extends DispatchAction {

public ActionForward module1(ActionMapping mapping, ActionForm form,
        HttpServletRequest request, HttpServletResponse response)
        throws Exception {
    FormStatMod1 forms = (FormStatMod1) form;
    ServiceStatistiques service = new ServiceStatistiques();
    String dd = forms.getDateDebut();
    String dateDebut = dd.substring(6, 10)   '-'   dd.substring(3, 5)   '-'   dd.substring(0, 2);
    String df = forms.getDateFin();
    String dateFin = df.substring(6, 10)   '-'   df.substring(3, 5)   '-'   df.substring(0, 2);
    Collection[] collections = service.module1(forms.getChoixEtat(), dateDebut, dateFin);
    Collection<Flux> listef = collections[1];
    String activiteNom = forms.getActiviteNom();
    String chargeMatricule = forms.getChargeMatricule();
  

Надеюсь, кто-нибудь увидит, что не так.
Хорошего дня!!

Комментарии:

1. ???? Ваш JSP не содержит тегов Struts, просто обычный HTML / JSP. Вы пробовали следовать руководству?

2. Мне не нужно добавлять тег struts, моя форма содержит: form action=»statistiques.do «. И я использую форму действия, которая объявлена в файле struts-config!!!

Ответ №1:

Использовать <html:form>

Вот пример — http://struts.apache.org/release/1.3.x/faqs/actionForm.html

Комментарии:

1. Я уже пробовал это решение, но оно не работает … но спасибо за идею. Надеюсь быстро найти хороший вариант!!!!

Ответ №2:

Обычно форма отображается с использованием тегов Struts, но вы можете использовать выражения JSP EL для заполнения полей ввода. Например

 <input type="text" name="dateFin" size="10" maxlength="10" id="date2" value="${formStatMod1.dateFin}" required="required"> 
  

Комментарии:

1. Но я никогда не использовал его, и у меня никогда не было проблем с struts actionforms!! Я пробовал, но, к сожалению, это не работает… Мне очень любопытно найти решение этой проблемы, потому что это одно из последних, чего мне не хватает для завершения моего приложения… Большое спасибо за ваш ответ!!

2. Вы можете опубликовать struts-config.xml хотя бы для того, чтобы узнать, какие компоненты формы заполняются запросом.

Ответ №3:

Хорошо, я нашел свой путь!!! Как и много раз, это было глупое упущение… сеттер пропустил в моей форме!!! Никогда не забуду это проверить.