Передача ServletResponse и ServletRequest методам вне Servlet - PullRequest
0 голосов
/ 23 сентября 2018

Я хотел бы иметь 1 общий Servlet, который обрабатывает запросы Ajax.

Я хотел бы реализовать это аналогично тому, что описано в этом ответе: Использовать сервлет для обработки запросов AJAX?

Т.е.: использовать шаблон фабрики в общем сервлете для создания экземпляра правильного объекта, который реализует (например) AjaxHandler интерфейс.Затем вызовите метод интерфейса (например: performTask).

Можно ли performTask принять HttpServletRequest и HttpServletResponse объекты в качестве аргументов?

Я быхотел бы использовать запрос для получения параметров, и я хотел бы использовать ответ (например) sendError из performTask, если необходимо (например, если при обработке возникает какое-то исключение) (действительно ли это нормально до sendError() изметод, которого нет в HttpServlet?).

Есть ответы (такие как: Передача ответа сервлета http на моем уровне обслуживания - плохая практика? ), в котором говоритсячто плохая практика - передавать эти объекты в качестве аргументов, потому что это приводит к смешиванию слоев (веб-и служебных слоев).Тем не менее, мой AjaxHandler интерфейс в этом случае является частью веб-слоя.

Поэтому мне было интересно, если это нормально / хорошая практика делать то, что я здесь изложил.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...