У меня есть следующий код в моем тесте:Две формы представления в одном пакете
WebResponse response = webConversation.getResponse(loginUrl);
System.err.println("Session ID:" + webConversation.getCookieValue("JSESSIONID"));
WebForm form = response.getFormWithID(loginFormId);
for(String parmName: form.getParameterNames()){
if(loginDayName.equals(parmName)){
form.setParameter(parmName, day);
}
else if(loginMonthName.equals(parmName)){
form.setParameter(parmName, month);
}
else if(loginYearName.equals(parmName)){
form.setParameter(parmName, year);
}
else if(loginPersonIdName.equals(parmName)){
form.setParameter(parmName, person.getPersonId());
}
}
response = form.submit();
System.err.println(response.getText());
Таким образом, первый вызов для входа URL должен вернуть форму. Затем я изменяю параметры и отправляю форму обратно на тот же сервлет, откуда он пришел.
Отладки в контроллере указывают, что я получаю данные формы дважды с двумя идентификаторами сеанса. Второй - это идентификатор сеанса, который соответствует моему веб-календарю и всегда терпит неудачу, потому что первый из них фактически регистрирует этого пользователя.
Это единственная form.submit() в моем тесте на данный момент.
Я удивлен. Я использую инструмент неправильно? Или это ошибка?