Как очистить сгенерированный AJAX контент с JSF-сайта? - PullRequest
0 голосов
/ 31 января 2012

В настоящее время я играю с различными методами очистки и обнаружил, что это может довольно быстро усложниться, если задействован большой JavaScript.У меня был некоторый успех с HTMLUnit, который, кажется, довольно хорошо интерпретирует javascript, но я ищу более легкое решение.

Итак, проблема, с которой я сейчас сталкиваюсь, такова: я хочу получить результаты конкретной страницы,который генерируется при вызове ajax нажатием определенной кнопки.Сам вызов довольно прост, просто HTTP-пост на определенный URL с несколькими параметрами, представленными в теле поста.Проблема, с которой я столкнулся, заключается в том, что сервер жалуется, когда я отправляю сообщение HTTP Post в функцию ajax, фактически не открывая содержащий сайт.

Что я в основном делаю для тестирования:

  curl -v -d "AJAXREQUEST=..." https://myhost/ajaxurl

Вот что я получаю:

  <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
      <meta name="Ajax-Response" content="true" />
      <meta name="Ajax-Expired" content="View state could't be restored - reload page ?" />
    </head>
  </html>

На сервере работает JSF 1.2.Что мне нужно сделать, чтобы получить результаты от вызова AJAX?Я на самом деле не эксперт JSF ...

1 Ответ

0 голосов
/ 31 января 2012

Если бы мне пришлось угадывать, у JSF нет сеанса, связанного с запросом, отправляемым с помощью curl, и, следовательно, объекты, связанные со страницей, не существуют.Для завитка посмотрите http://curl.haxx.se/docs/httpscripting.html раздел 10, куки.Вам нужно будет перетащить страницу, получить cookie-файлы, а затем сделать http-запись с cookie-файлами (начинает много работать с curl).

Однако я бы вместо этого предложил взглянуть на Selenium, в котором есть IDE, котораягенерирует Java для взаимодействия с JavaScript.

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