Как использовать функцию alert в JavaScript из Java servlet?

419
09 ноября 2017, 07:31

Есть сервлет из которого делаю redirect на другой html.

case COMPANY:
        CompanyFacade companyFacade = (CompanyFacade) CouponSystem.getInstance().login(username, password, type);
        if(companyFacade != null){
            HttpSession session = request.getSession(); 
            session.setAttribute(COMPANY, companyFacade);
            response.sendRedirect("./html/companySPA_page.html");
        }else{
            //1  response.getWriter().println("<script type='text/javascript'>alert('Password is incorrect');</script>");
            //2  response.sendRedirect("./index.html");
        }
        break;

В случаи не верного логина пытаюсь вызвать функцию alert с сообщением о не правельном пароле и после чего перенаправить на туже страницу (либо если есть вариант остаться на этой же). Так вот строка под номером //1 работает если после нее нет редайректа. Вместе эти две строки не работают, не могу понять почему.

Answer 1

И так благодаря помощи Grundy я нашел ответ на свой же вопрос. Объясню почему это происходит и как можно это решить:

Первая строка генерит код JavaScript и посылает его на сторону клиента на выполнение, Вторая стока посылает redirect на некий HTML. Браузер же в свою очередь получив статус redirect не смотрит на тело ответа в котором как раз и записан код JavaScript.

Теперь, одно из решений этой проблемы это сделать redirect на стороне клиента, т.е. с помощью JavaScript, добавив атрибут location

response.getWriter().println("<script type='text/javascript'>alert('Password is incorrect');location='path/to/page'</script>"); 

Таким образом мы вызываем alert в браузере и остаемся на той же странице.

READ ALSO
Проблема с jQuery .parent()

Проблема с jQuery .parent()

Добрый День! На данный момент jQuery работает только с таблицей где находится "GroupName 1", которая находится за пределами div

340
Как сделать самому scroll hijacking?

Как сделать самому scroll hijacking?

Добрый день, подскажите пожалуйста, как правильно реализовать scroll hijacking, как на этом сайте https://neematiccom ? Нашел кучу плагинов, но хотелось бы понять...

292
ng-click Angular

ng-click Angular

Всем приветЕсть одна проблема Вообщем есть такой клик

334
js arrays help pls

js arrays help pls

Помогите пожалуйста задать с клавиатуры 2х-мерный массив 4х4 на JavascriptКидаю свой код, который делает это 4мя отдельными массивами длинной по 4 каждый

291