Я бы хотел запросить портлет из метеослужбы. Но так как мой навигатор выдает мне правильную страницу, ява-приложение этого не делает.
Вот мой код без try / catch:
public static void main(String[] args) {
// The portlet URL
String cookieUrl = "http://france.meteofrance.com/france/meteo?PREVISIONS_PORTLET.path=previsionspluie/290190";
HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
// Some proxy configuration
// Basic properties set to perform my task, but they might be useless as it does not work as I would
connection.setRequestProperty("Accept-Charset", "UTF-8");
connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12");
System.out.println(handler.getHtml(reader));
}
private String getHtml(BufferedReader reader)
{
String html = "";
for (String line; (line = reader.readLine()) != null;)
html += line + "\n";
return html;
}
Вы можете проверить это с помощью URL-адреса порта, приведенного в качестве примера.
В навигаторе ответ содержит правильное «prevision de pluie pour Brest».
В приложении Java ответ содержит эту страницу: http://france.meteofrance.com/NoCookie.htm
Кажется, это вопрос печенья. Но как я мог справиться с этим, поскольку мои первые попытки получить cookie-файлы и отправить их обратно оказались безуспешными.
Любая помощь, пожалуйста?