From 8cc5fbf39ca59d28430d6be5918df5eee51e03a6 Mon Sep 17 00:00:00 2001 From: Serg Bash Date: Mon, 30 Nov 2015 18:43:40 +0200 Subject: [PATCH 1/7] Add jaxb.property and Demo.java for demonstration moxy --- .idea/artifacts/SlowNews_war_exploded.xml | 1 + ..._eclipse_persistence_eclipselink_2_3_2.xml | 13 ++ SlowNews.iml | 1 + pom.xml | 6 + .../net/bash/serg/slownews/model/Demo.java | 28 +++ .../net/bash/serg/slownews/model/News.java | 48 +++++ .../net/bash/serg/slownews/servlet/News.java | 34 ---- src/main/resources/input.xml | 192 ++++++++++++++++++ .../bash/serg/slownews/model/jaxb.properties | 1 + .../serg/slownews/servlet/jaxb.properties | 1 + src/main/webapp/WEB-INF/input.xml | 192 ++++++++++++++++++ 11 files changed, 483 insertions(+), 34 deletions(-) create mode 100644 .idea/libraries/Maven__org_eclipse_persistence_eclipselink_2_3_2.xml create mode 100644 src/main/java/net/bash/serg/slownews/model/Demo.java create mode 100644 src/main/java/net/bash/serg/slownews/model/News.java delete mode 100644 src/main/java/net/bash/serg/slownews/servlet/News.java create mode 100644 src/main/resources/input.xml create mode 100644 src/main/resources/net/bash/serg/slownews/model/jaxb.properties create mode 100644 src/main/resources/net/bash/serg/slownews/servlet/jaxb.properties create mode 100644 src/main/webapp/WEB-INF/input.xml diff --git a/.idea/artifacts/SlowNews_war_exploded.xml b/.idea/artifacts/SlowNews_war_exploded.xml index f67fa19..7e30502 100644 --- a/.idea/artifacts/SlowNews_war_exploded.xml +++ b/.idea/artifacts/SlowNews_war_exploded.xml @@ -14,6 +14,7 @@ + diff --git a/.idea/libraries/Maven__org_eclipse_persistence_eclipselink_2_3_2.xml b/.idea/libraries/Maven__org_eclipse_persistence_eclipselink_2_3_2.xml new file mode 100644 index 0000000..10d202c --- /dev/null +++ b/.idea/libraries/Maven__org_eclipse_persistence_eclipselink_2_3_2.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/SlowNews.iml b/SlowNews.iml index f90dffc..80a4f21 100644 --- a/SlowNews.iml +++ b/SlowNews.iml @@ -29,5 +29,6 @@ + \ No newline at end of file diff --git a/pom.xml b/pom.xml index 4029d17..7fd7a8b 100644 --- a/pom.xml +++ b/pom.xml @@ -46,5 +46,11 @@ 2.5.3 + + org.eclipse.persistence + eclipselink + 2.3.2 + + diff --git a/src/main/java/net/bash/serg/slownews/model/Demo.java b/src/main/java/net/bash/serg/slownews/model/Demo.java new file mode 100644 index 0000000..e9569c6 --- /dev/null +++ b/src/main/java/net/bash/serg/slownews/model/Demo.java @@ -0,0 +1,28 @@ +package net.bash.serg.slownews.model; + +import javax.xml.bind.JAXBContext; +import javax.xml.bind.Unmarshaller; +import java.io.File; +import java.io.InputStream; +import java.net.URL; + +public class Demo { + + public static void main(String[] args) throws Exception { + JAXBContext jc = JAXBContext.newInstance(News.class); + + Unmarshaller unmarshaller = jc.createUnmarshaller(); + + URL xmlURL = new URL("https://news.mail.ru/rss/ukraine/"); + InputStream xml = xmlURL.openStream(); + News news = (News) unmarshaller.unmarshal(xml); + System.out.println(news.getCategory()); + xml.close(); + + /* File xml = new File("src/main/resources/input.xml"); + net.bash.serg.slownews.model.News news = (net.bash.serg.slownews.model.News) unmarshaller.unmarshal(xml); + System.out.println(news.getCategory()); + */ + } + +} \ No newline at end of file diff --git a/src/main/java/net/bash/serg/slownews/model/News.java b/src/main/java/net/bash/serg/slownews/model/News.java new file mode 100644 index 0000000..8208bdc --- /dev/null +++ b/src/main/java/net/bash/serg/slownews/model/News.java @@ -0,0 +1,48 @@ +package net.bash.serg.slownews.model; + +import org.eclipse.persistence.oxm.annotations.XmlPath; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlType; +import java.util.ArrayList; + +@XmlRootElement(name="rss") +@XmlType(propOrder={"title", "link", "category"}) +@XmlAccessorType(XmlAccessType.FIELD) +public class News { + + @XmlPath("channel/item/category/text()") + private ArrayList category; + + @XmlPath("channel/title/text()") + private String title; + + @XmlPath("channel/link/text()") + private String link; + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getLink() { + return link; + } + + public void setLink(String link) { + this.link = link; + } + + public ArrayList getCategory() { + return category; + } + + public void setCategory(ArrayList category) { + this.category = category; + } +} \ No newline at end of file diff --git a/src/main/java/net/bash/serg/slownews/servlet/News.java b/src/main/java/net/bash/serg/slownews/servlet/News.java deleted file mode 100644 index 6e8f89a..0000000 --- a/src/main/java/net/bash/serg/slownews/servlet/News.java +++ /dev/null @@ -1,34 +0,0 @@ -package net.bash.serg.slownews.servlet; - - - -import net.bash.serg.slownews.model.WeatherClientParser; - -import javax.servlet.RequestDispatcher; -import javax.servlet.ServletContext; -import javax.servlet.ServletException; -import javax.servlet.annotation.WebServlet; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; -import java.io.IOException; - -/** - * Created by bso05702 on 18.11.2015. - */ -@WebServlet("/news") -public class News extends HttpServlet{ - private static final String BEGIN = "/WEB-INF/view/news.jsp"; - - @Override - public void doGet(HttpServletRequest req, HttpServletResponse res) - throws ServletException, IOException { - ServletContext application = getServletContext(); - RequestDispatcher dispatcher = application.getRequestDispatcher(BEGIN); - HttpSession session = req.getSession(); - WeatherClientParser client = new WeatherClientParser(); - session.setAttribute("news", client.getResult()); - dispatcher.forward(req, res); - } -} diff --git a/src/main/resources/input.xml b/src/main/resources/input.xml new file mode 100644 index 0000000..fb55880 --- /dev/null +++ b/src/main/resources/input.xml @@ -0,0 +1,192 @@ + + + + Новости Mail.Ru + https://news.mail.ru/ + + + https://news.mail.ru/img/rss/logo.gif + Новости Mail.Ru + news.mail.ru + + ru + Mon, 30 Nov 2015 16:17:05 +0300 + Mon, 30 Nov 2015 16:11:23 +0300 + news.mail.ru RSS engine + info@news.mail.ru + info@news.mail.ru + + https://news.mail.ru/economics/24129450/ + Экономика: Отрасли + <![CDATA[Цены на хлеб в Киеве с 1 декабря вырастут на 5−15%]]> + Буханка «украинского» будет стоить почти 8 грн, батон подорожает до 5,64 грн.

]]>
+ + Mon, 30 Nov 2015 16:11:23 +0300 + https://news.mail.ru/economics/24129450/ +
+ + https://sport.mail.ru/news/gymnastics/24129207/ + Спорт: Гимнастика + <![CDATA[Украинки завоевали "бронзу" на чемпионате мира по прыжкам на батуте]]> + На мировом первенстве по прыжкам на батуте, которое завершилось в Оденсе (Дания), украинские спортсменки Марина Кийко и Наталья Москвина заняли третье место в синхронных прыжках.

]]>
+ + Mon, 30 Nov 2015 16:09:08 +0300 + https://sport.mail.ru/news/gymnastics/24129207/ +
+ + https://sport.mail.ru/news/biathlon/24127157/ + Спорт: Биатлон + <![CDATA[Сборная Украины стала седьмой в стартовой гонке Кубка мира по биатлону]]> + Сборная Украины в составе Юлии Джимы и Сергея Семенова завершила первую гонку нового сезона Кубка мира по биатлону (одиночную смешанную эстафету) на седьмой позиции.

]]>
+ Mon, 30 Nov 2015 15:48:28 +0300 + https://sport.mail.ru/news/biathlon/24127157/ +
+ + https://sport.mail.ru/news/boxing/24127387/ + Спорт: Бокс + <![CDATA[Промоутер Фьюри предлагает провести реванш с Кличко на "Уэмбли"]]> + Промоутер британца Тайсона Фьюри Мик Хеннесси отметил, что реванш его подопечного с Владимиром Кличко возможен и в качестве места проведения предложил стадион «Уэмбли».

]]>
+ Mon, 30 Nov 2015 15:31:44 +0300 + https://sport.mail.ru/news/boxing/24127387/ +
+ + https://news.mail.ru/incident/24128764/ + События: ЧП + <![CDATA[В ДТП вблизи Воронежа погибли 2 украинцев, 12 - ранены - МИД Украины]]> + В ДТП возле Воронежа в России погибли 2 украинцев, еще 12 украинцев ранены. Информация относительно гражданства еще двух погибших сейчас проверяется.

]]>
+ + Mon, 30 Nov 2015 15:21:52 +0300 + https://news.mail.ru/incident/24128764/ +
+ + https://sport.mail.ru/news/boxing/24127624/ + Спорт: Бокс + <![CDATA[Фьюри поставил 200 тысяч фунтов на свою победу над Кличко]]> + Новоиспеченный чемпион мира по версиям IBF, IBO, WBO и WBA в супертяжелом весе британец Тайсон Фьюри заработал дополнительные 200 тысяч фунтов стерлингов (около 300 тысяч долларов) после боя с украинцем Владимиром Кличко. Об этом сообщает Bleacher Report.

]]>
+ + Mon, 30 Nov 2015 15:10:44 +0300 + https://sport.mail.ru/news/boxing/24127624/ +
+ + https://news.mail.ru/society/24128532/ + Общество: Жизнь + <![CDATA[Зима в Украине начнется с мокрого снега и дождя]]> + В Украину переместится очередная порция влажного и умеренно-теплого воздуха, ожидаются значительные колебания атмосферного давления и почти везде усиление ветра.

]]>
+ + Mon, 30 Nov 2015 15:07:57 +0300 + https://news.mail.ru/society/24128532/ +
+ + https://sport.mail.ru/news/football-foreign/24127833/ + Спорт: Зарубежный + <![CDATA[Ребров: Я прививаю своей команде некоторые принципы Лобановского]]> + Главный тренер киевского «Динамо» Сергей Ребров в интервью «Журналу Лиги чемпионов» рассказал о главных успехах столичного клуба в современной истории.

]]>
+ Mon, 30 Nov 2015 15:03:28 +0300 + https://sport.mail.ru/news/football-foreign/24127833/ +
+ + https://news.mail.ru/society/24127193/ + Общество: Жизнь + <![CDATA[Пункт пропуска "Чонгар" открыли для проезда авто в Крым]]> + Согласно данным Херсонской областной государственной администрации, КПП «Чонгар» возобновил пропуск автомобильного транспорта в понедельник в 10.00.

]]>
+ + Mon, 30 Nov 2015 14:46:53 +0300 + https://news.mail.ru/society/24127193/ +
+ + https://news.mail.ru/incident/24127171/ + События: Криминал + <![CDATA[В Киеве неизвестный прострелил ногу финансисту]]> + Причины нападения пока неизвестны.

]]>
+ + Mon, 30 Nov 2015 14:22:48 +0300 + https://news.mail.ru/incident/24127171/ +
+ + https://sport.mail.ru/news/boxing/24126705/ + Спорт: Бокс + <![CDATA[Владимир Кличко заявил, что все еще не верит, что проиграл Тайсону Фьюри]]> + МОСКВА, 30 ноя — Р-Спорт. Украинский боксер Владимир Кличко заявил, что до сих пор не может поверить в поражение от британца Тайсона Фьюри в титульном бою.

]]>
+ + Mon, 30 Nov 2015 13:53:46 +0300 + https://sport.mail.ru/news/boxing/24126705/ +
+ + https://news.mail.ru/economics/24126082/ + Экономика: Отрасли + <![CDATA[Суд запретил взаимозачет дивидендов "Укрнафты" и долга "Нафтогаза"]]> + Суд удовлетворил иск «Нафтогаза» к «Укрнафе» о выплате дивидендов за 2011−2013 годы.

]]>
+ + Mon, 30 Nov 2015 13:15:09 +0300 + https://news.mail.ru/economics/24126082/ +
+ + https://sport.mail.ru/news/handball/24125367/ + Спорт: Гандбол + <![CDATA[Гандболисты "Мотора" вышли в плей-офф Лиги чемпионов]]> + Победив дома швейцарский «Кадеттен», запорожский «Мотор» за тур до финиша группового турнира Лиги чемпионов обеспечил себе выход из группы.

]]>
+ Mon, 30 Nov 2015 12:52:55 +0300 + https://sport.mail.ru/news/handball/24125367/ +
+ + https://news.mail.ru/society/24125181/ + Общество: Персона + <![CDATA[Камбербэтч изобразил выдру в ответ на шутки в интернете]]> + Британский актер Бенедикт Камбербэтч изобразил выдру на шоу комика Грэма Нортона, когда ведущий сказал ему, что пользователи соцсетей нередко сравнивают Камбербэтча с этим животным.

]]>
+ + Mon, 30 Nov 2015 12:49:13 +0300 + https://news.mail.ru/society/24125181/ +
+ + https://sport.mail.ru/news/boxing/24124216/ + Спорт: Бокс + <![CDATA[Хэй: Кличко не воспользуется правом на реванш с Фьюри]]> + Бывший чемпион мира в первом тяжёлом и супертяжёлом весах Дэвид Хэй считает, что Владимир Кличко не станет проводить матч-реванш с Тайсоном Фьюри, которому проиграл титулы IBF/IBO/WBA/WBO, уступив по очкам 28 ноября в Дюссельдорфе (Германия).

]]>
+ + Mon, 30 Nov 2015 11:51:18 +0300 + https://sport.mail.ru/news/boxing/24124216/ +
+ + https://news.mail.ru/incident/24125159/ + События: ЧП + <![CDATA[Обнародованы результаты расследования пожара на нефтебазе под Киевом]]> + В резонансном деле об июньском пожаре на нефтебазе «БРСМ» под Киевом поставлена предварительная точка — Кабмин сообщил итоги расследования. Об этом пишет «Сегодня».

]]>
+ + Mon, 30 Nov 2015 11:51:11 +0300 + https://news.mail.ru/incident/24125159/ +
+ + https://news.mail.ru/society/24125161/ + Общество: Жизнь + <![CDATA[Активисты разрешили завершить ремонт на ЛЭП "Каховская-Титан"]]> + Линейная бригада «Укрэнерго» выдвинулась на место.

]]>
+ + Mon, 30 Nov 2015 11:30:22 +0300 + https://news.mail.ru/society/24125161/ +
+ + https://sport.mail.ru/news/biathlon/24124435/ + Спорт: Биатлон + <![CDATA[Украинский биатлонист выиграл "серебро" на Кубке IBU]]> + Допустив один промах на протяжении всей дистанции, наш спортсмен уступил победителю россиянину Матвею Елисееву 35,3 секунды, сообщает «УНН».

]]>
+ Mon, 30 Nov 2015 11:25:16 +0300 + https://sport.mail.ru/news/biathlon/24124435/ +
+ + https://sport.mail.ru/news/football-foreign/24124873/ + Спорт: Зарубежный + <![CDATA[Украинец Борис Тащи дебютировал за "Штутгарт"]]> + В матче 14-го тура немецкой Бундеслиги дебютировал за первую команду «Штутгарта» украинский нападающий Борис Тащи.

]]>
+ Mon, 30 Nov 2015 11:18:15 +0300 + https://sport.mail.ru/news/football-foreign/24124873/ +
+ + https://sport.mail.ru/news/football-national/24122002/ + Спорт: Сборные + <![CDATA[Фоменко: Почему бы Шевченко не дать шанс поработать главным тренером сборной Украины?]]> + Главный тренер сборной Украины Михаил Фоменко оценил шансы легендарного нападающего Андрея Шевченко заменить его на посту наставника национальной команды.

]]>
+ Mon, 30 Nov 2015 10:33:52 +0300 + https://sport.mail.ru/news/football-national/24122002/ +
+
+
diff --git a/src/main/resources/net/bash/serg/slownews/model/jaxb.properties b/src/main/resources/net/bash/serg/slownews/model/jaxb.properties new file mode 100644 index 0000000..5837a4c --- /dev/null +++ b/src/main/resources/net/bash/serg/slownews/model/jaxb.properties @@ -0,0 +1 @@ +javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory \ No newline at end of file diff --git a/src/main/resources/net/bash/serg/slownews/servlet/jaxb.properties b/src/main/resources/net/bash/serg/slownews/servlet/jaxb.properties new file mode 100644 index 0000000..5837a4c --- /dev/null +++ b/src/main/resources/net/bash/serg/slownews/servlet/jaxb.properties @@ -0,0 +1 @@ +javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/input.xml b/src/main/webapp/WEB-INF/input.xml new file mode 100644 index 0000000..fb55880 --- /dev/null +++ b/src/main/webapp/WEB-INF/input.xml @@ -0,0 +1,192 @@ + + + + Новости Mail.Ru + https://news.mail.ru/ + + + https://news.mail.ru/img/rss/logo.gif + Новости Mail.Ru + news.mail.ru + + ru + Mon, 30 Nov 2015 16:17:05 +0300 + Mon, 30 Nov 2015 16:11:23 +0300 + news.mail.ru RSS engine + info@news.mail.ru + info@news.mail.ru + + https://news.mail.ru/economics/24129450/ + Экономика: Отрасли + <![CDATA[Цены на хлеб в Киеве с 1 декабря вырастут на 5−15%]]> + Буханка «украинского» будет стоить почти 8 грн, батон подорожает до 5,64 грн.

]]>
+ + Mon, 30 Nov 2015 16:11:23 +0300 + https://news.mail.ru/economics/24129450/ +
+ + https://sport.mail.ru/news/gymnastics/24129207/ + Спорт: Гимнастика + <![CDATA[Украинки завоевали "бронзу" на чемпионате мира по прыжкам на батуте]]> + На мировом первенстве по прыжкам на батуте, которое завершилось в Оденсе (Дания), украинские спортсменки Марина Кийко и Наталья Москвина заняли третье место в синхронных прыжках.

]]>
+ + Mon, 30 Nov 2015 16:09:08 +0300 + https://sport.mail.ru/news/gymnastics/24129207/ +
+ + https://sport.mail.ru/news/biathlon/24127157/ + Спорт: Биатлон + <![CDATA[Сборная Украины стала седьмой в стартовой гонке Кубка мира по биатлону]]> + Сборная Украины в составе Юлии Джимы и Сергея Семенова завершила первую гонку нового сезона Кубка мира по биатлону (одиночную смешанную эстафету) на седьмой позиции.

]]>
+ Mon, 30 Nov 2015 15:48:28 +0300 + https://sport.mail.ru/news/biathlon/24127157/ +
+ + https://sport.mail.ru/news/boxing/24127387/ + Спорт: Бокс + <![CDATA[Промоутер Фьюри предлагает провести реванш с Кличко на "Уэмбли"]]> + Промоутер британца Тайсона Фьюри Мик Хеннесси отметил, что реванш его подопечного с Владимиром Кличко возможен и в качестве места проведения предложил стадион «Уэмбли».

]]>
+ Mon, 30 Nov 2015 15:31:44 +0300 + https://sport.mail.ru/news/boxing/24127387/ +
+ + https://news.mail.ru/incident/24128764/ + События: ЧП + <![CDATA[В ДТП вблизи Воронежа погибли 2 украинцев, 12 - ранены - МИД Украины]]> + В ДТП возле Воронежа в России погибли 2 украинцев, еще 12 украинцев ранены. Информация относительно гражданства еще двух погибших сейчас проверяется.

]]>
+ + Mon, 30 Nov 2015 15:21:52 +0300 + https://news.mail.ru/incident/24128764/ +
+ + https://sport.mail.ru/news/boxing/24127624/ + Спорт: Бокс + <![CDATA[Фьюри поставил 200 тысяч фунтов на свою победу над Кличко]]> + Новоиспеченный чемпион мира по версиям IBF, IBO, WBO и WBA в супертяжелом весе британец Тайсон Фьюри заработал дополнительные 200 тысяч фунтов стерлингов (около 300 тысяч долларов) после боя с украинцем Владимиром Кличко. Об этом сообщает Bleacher Report.

]]>
+ + Mon, 30 Nov 2015 15:10:44 +0300 + https://sport.mail.ru/news/boxing/24127624/ +
+ + https://news.mail.ru/society/24128532/ + Общество: Жизнь + <![CDATA[Зима в Украине начнется с мокрого снега и дождя]]> + В Украину переместится очередная порция влажного и умеренно-теплого воздуха, ожидаются значительные колебания атмосферного давления и почти везде усиление ветра.

]]>
+ + Mon, 30 Nov 2015 15:07:57 +0300 + https://news.mail.ru/society/24128532/ +
+ + https://sport.mail.ru/news/football-foreign/24127833/ + Спорт: Зарубежный + <![CDATA[Ребров: Я прививаю своей команде некоторые принципы Лобановского]]> + Главный тренер киевского «Динамо» Сергей Ребров в интервью «Журналу Лиги чемпионов» рассказал о главных успехах столичного клуба в современной истории.

]]>
+ Mon, 30 Nov 2015 15:03:28 +0300 + https://sport.mail.ru/news/football-foreign/24127833/ +
+ + https://news.mail.ru/society/24127193/ + Общество: Жизнь + <![CDATA[Пункт пропуска "Чонгар" открыли для проезда авто в Крым]]> + Согласно данным Херсонской областной государственной администрации, КПП «Чонгар» возобновил пропуск автомобильного транспорта в понедельник в 10.00.

]]>
+ + Mon, 30 Nov 2015 14:46:53 +0300 + https://news.mail.ru/society/24127193/ +
+ + https://news.mail.ru/incident/24127171/ + События: Криминал + <![CDATA[В Киеве неизвестный прострелил ногу финансисту]]> + Причины нападения пока неизвестны.

]]>
+ + Mon, 30 Nov 2015 14:22:48 +0300 + https://news.mail.ru/incident/24127171/ +
+ + https://sport.mail.ru/news/boxing/24126705/ + Спорт: Бокс + <![CDATA[Владимир Кличко заявил, что все еще не верит, что проиграл Тайсону Фьюри]]> + МОСКВА, 30 ноя — Р-Спорт. Украинский боксер Владимир Кличко заявил, что до сих пор не может поверить в поражение от британца Тайсона Фьюри в титульном бою.

]]>
+ + Mon, 30 Nov 2015 13:53:46 +0300 + https://sport.mail.ru/news/boxing/24126705/ +
+ + https://news.mail.ru/economics/24126082/ + Экономика: Отрасли + <![CDATA[Суд запретил взаимозачет дивидендов "Укрнафты" и долга "Нафтогаза"]]> + Суд удовлетворил иск «Нафтогаза» к «Укрнафе» о выплате дивидендов за 2011−2013 годы.

]]>
+ + Mon, 30 Nov 2015 13:15:09 +0300 + https://news.mail.ru/economics/24126082/ +
+ + https://sport.mail.ru/news/handball/24125367/ + Спорт: Гандбол + <![CDATA[Гандболисты "Мотора" вышли в плей-офф Лиги чемпионов]]> + Победив дома швейцарский «Кадеттен», запорожский «Мотор» за тур до финиша группового турнира Лиги чемпионов обеспечил себе выход из группы.

]]>
+ Mon, 30 Nov 2015 12:52:55 +0300 + https://sport.mail.ru/news/handball/24125367/ +
+ + https://news.mail.ru/society/24125181/ + Общество: Персона + <![CDATA[Камбербэтч изобразил выдру в ответ на шутки в интернете]]> + Британский актер Бенедикт Камбербэтч изобразил выдру на шоу комика Грэма Нортона, когда ведущий сказал ему, что пользователи соцсетей нередко сравнивают Камбербэтча с этим животным.

]]>
+ + Mon, 30 Nov 2015 12:49:13 +0300 + https://news.mail.ru/society/24125181/ +
+ + https://sport.mail.ru/news/boxing/24124216/ + Спорт: Бокс + <![CDATA[Хэй: Кличко не воспользуется правом на реванш с Фьюри]]> + Бывший чемпион мира в первом тяжёлом и супертяжёлом весах Дэвид Хэй считает, что Владимир Кличко не станет проводить матч-реванш с Тайсоном Фьюри, которому проиграл титулы IBF/IBO/WBA/WBO, уступив по очкам 28 ноября в Дюссельдорфе (Германия).

]]>
+ + Mon, 30 Nov 2015 11:51:18 +0300 + https://sport.mail.ru/news/boxing/24124216/ +
+ + https://news.mail.ru/incident/24125159/ + События: ЧП + <![CDATA[Обнародованы результаты расследования пожара на нефтебазе под Киевом]]> + В резонансном деле об июньском пожаре на нефтебазе «БРСМ» под Киевом поставлена предварительная точка — Кабмин сообщил итоги расследования. Об этом пишет «Сегодня».

]]>
+ + Mon, 30 Nov 2015 11:51:11 +0300 + https://news.mail.ru/incident/24125159/ +
+ + https://news.mail.ru/society/24125161/ + Общество: Жизнь + <![CDATA[Активисты разрешили завершить ремонт на ЛЭП "Каховская-Титан"]]> + Линейная бригада «Укрэнерго» выдвинулась на место.

]]>
+ + Mon, 30 Nov 2015 11:30:22 +0300 + https://news.mail.ru/society/24125161/ +
+ + https://sport.mail.ru/news/biathlon/24124435/ + Спорт: Биатлон + <![CDATA[Украинский биатлонист выиграл "серебро" на Кубке IBU]]> + Допустив один промах на протяжении всей дистанции, наш спортсмен уступил победителю россиянину Матвею Елисееву 35,3 секунды, сообщает «УНН».

]]>
+ Mon, 30 Nov 2015 11:25:16 +0300 + https://sport.mail.ru/news/biathlon/24124435/ +
+ + https://sport.mail.ru/news/football-foreign/24124873/ + Спорт: Зарубежный + <![CDATA[Украинец Борис Тащи дебютировал за "Штутгарт"]]> + В матче 14-го тура немецкой Бундеслиги дебютировал за первую команду «Штутгарта» украинский нападающий Борис Тащи.

]]>
+ Mon, 30 Nov 2015 11:18:15 +0300 + https://sport.mail.ru/news/football-foreign/24124873/ +
+ + https://sport.mail.ru/news/football-national/24122002/ + Спорт: Сборные + <![CDATA[Фоменко: Почему бы Шевченко не дать шанс поработать главным тренером сборной Украины?]]> + Главный тренер сборной Украины Михаил Фоменко оценил шансы легендарного нападающего Андрея Шевченко заменить его на посту наставника национальной команды.

]]>
+ Mon, 30 Nov 2015 10:33:52 +0300 + https://sport.mail.ru/news/football-national/24122002/ +
+
+
From 71323a2612e2864ea374d9d7959b87fa01517349 Mon Sep 17 00:00:00 2001 From: Serg Bash Date: Mon, 30 Nov 2015 18:48:04 +0200 Subject: [PATCH 2/7] Add jaxb.property and Demo.java for demonstration moxy --- src/main/java/net/bash/serg/slownews/model/Demo.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/net/bash/serg/slownews/model/Demo.java b/src/main/java/net/bash/serg/slownews/model/Demo.java index e9569c6..4c509af 100644 --- a/src/main/java/net/bash/serg/slownews/model/Demo.java +++ b/src/main/java/net/bash/serg/slownews/model/Demo.java @@ -12,11 +12,12 @@ public static void main(String[] args) throws Exception { JAXBContext jc = JAXBContext.newInstance(News.class); Unmarshaller unmarshaller = jc.createUnmarshaller(); - URL xmlURL = new URL("https://news.mail.ru/rss/ukraine/"); InputStream xml = xmlURL.openStream(); News news = (News) unmarshaller.unmarshal(xml); System.out.println(news.getCategory()); + System.out.println(news.getTitle()); + System.out.println(news.getLink()); xml.close(); /* File xml = new File("src/main/resources/input.xml"); From 59750861612ae605988c7a5d0e4ea77812e70c65 Mon Sep 17 00:00:00 2001 From: Serg Bash Date: Mon, 30 Nov 2015 19:04:32 +0200 Subject: [PATCH 3/7] Update work News servlet and update news.jsp --- .../net/bash/serg/slownews/model/Demo.java | 29 ----------- .../net/bash/serg/slownews/servlet/News.java | 51 +++++++++++++++++++ .../bash/serg/slownews/model/jaxb.properties | 1 - .../serg/slownews/servlet/jaxb.properties | 1 - src/main/webapp/WEB-INF/view/news.jsp | 6 +-- 5 files changed, 54 insertions(+), 34 deletions(-) delete mode 100644 src/main/java/net/bash/serg/slownews/model/Demo.java create mode 100644 src/main/java/net/bash/serg/slownews/servlet/News.java delete mode 100644 src/main/resources/net/bash/serg/slownews/model/jaxb.properties delete mode 100644 src/main/resources/net/bash/serg/slownews/servlet/jaxb.properties diff --git a/src/main/java/net/bash/serg/slownews/model/Demo.java b/src/main/java/net/bash/serg/slownews/model/Demo.java deleted file mode 100644 index 4c509af..0000000 --- a/src/main/java/net/bash/serg/slownews/model/Demo.java +++ /dev/null @@ -1,29 +0,0 @@ -package net.bash.serg.slownews.model; - -import javax.xml.bind.JAXBContext; -import javax.xml.bind.Unmarshaller; -import java.io.File; -import java.io.InputStream; -import java.net.URL; - -public class Demo { - - public static void main(String[] args) throws Exception { - JAXBContext jc = JAXBContext.newInstance(News.class); - - Unmarshaller unmarshaller = jc.createUnmarshaller(); - URL xmlURL = new URL("https://news.mail.ru/rss/ukraine/"); - InputStream xml = xmlURL.openStream(); - News news = (News) unmarshaller.unmarshal(xml); - System.out.println(news.getCategory()); - System.out.println(news.getTitle()); - System.out.println(news.getLink()); - xml.close(); - - /* File xml = new File("src/main/resources/input.xml"); - net.bash.serg.slownews.model.News news = (net.bash.serg.slownews.model.News) unmarshaller.unmarshal(xml); - System.out.println(news.getCategory()); - */ - } - -} \ No newline at end of file diff --git a/src/main/java/net/bash/serg/slownews/servlet/News.java b/src/main/java/net/bash/serg/slownews/servlet/News.java new file mode 100644 index 0000000..b1c5976 --- /dev/null +++ b/src/main/java/net/bash/serg/slownews/servlet/News.java @@ -0,0 +1,51 @@ +package net.bash.serg.slownews.servlet; +import net.bash.serg.slownews.model.WeatherClientParser; +import org.eclipse.persistence.jaxb.JAXBContextFactory; + +import javax.servlet.RequestDispatcher; +import javax.servlet.ServletContext; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; +import javax.xml.bind.JAXBContext; +import javax.xml.bind.Unmarshaller; +import java.io.IOException; +import java.io.InputStream; +import java.net.URL; + +/** + * Created by bso05702 on 18.11.2015. + */ +@WebServlet("/news") +public class News extends HttpServlet{ + private static final String BEGIN = "/WEB-INF/view/news.jsp"; + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) + throws ServletException, IOException { + ServletContext application = getServletContext(); + RequestDispatcher dispatcher = application.getRequestDispatcher(BEGIN); + HttpSession session = req.getSession(); + + try { + JAXBContext context = JAXBContextFactory.createContext(new Class[]{net.bash.serg.slownews.model.News.class}, null); + + Unmarshaller unmarshaller = context.createUnmarshaller(); + URL xmlURL = new URL("https://news.mail.ru/rss/ukraine/"); + InputStream xml = xmlURL.openStream(); + net.bash.serg.slownews.model.News news = (net.bash.serg.slownews.model.News) unmarshaller.unmarshal(xml); + session.setAttribute("category", news.getCategory()); + session.setAttribute("title", news.getTitle()); + session.setAttribute("link", news.getLink()); + xml.close(); + } + catch(Exception e){ + + } + // WeatherClientParser client = new WeatherClientParser(); + // session.setAttribute("news", client.getResult()); + dispatcher.forward(req, res); + } +} \ No newline at end of file diff --git a/src/main/resources/net/bash/serg/slownews/model/jaxb.properties b/src/main/resources/net/bash/serg/slownews/model/jaxb.properties deleted file mode 100644 index 5837a4c..0000000 --- a/src/main/resources/net/bash/serg/slownews/model/jaxb.properties +++ /dev/null @@ -1 +0,0 @@ -javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory \ No newline at end of file diff --git a/src/main/resources/net/bash/serg/slownews/servlet/jaxb.properties b/src/main/resources/net/bash/serg/slownews/servlet/jaxb.properties deleted file mode 100644 index 5837a4c..0000000 --- a/src/main/resources/net/bash/serg/slownews/servlet/jaxb.properties +++ /dev/null @@ -1 +0,0 @@ -javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/view/news.jsp b/src/main/webapp/WEB-INF/view/news.jsp index b1a4bc8..5579e1e 100644 --- a/src/main/webapp/WEB-INF/view/news.jsp +++ b/src/main/webapp/WEB-INF/view/news.jsp @@ -19,7 +19,7 @@
Image 12
-

${news}

+

${title}

More
@@ -37,7 +37,7 @@
-

Maecenas ut sem dui. Ut aliquet, lorem vel consequat varius, ante est malesuada felis, et accumsan lorem eros id lorem. Aenean commodo mi et est aliquet non congue elit aliquam. Nulla ligula augue, pharetra id bibendum id, congue vel urna. Curabitur pulvinar diam ac libero hendrerit.

+

${category}

More
@@ -56,7 +56,7 @@
-

Aenean sit amet lacus id enim euismod pretium eu sit amet justo. Integer volutpat laoreet eros, a pharetra urna aliquet sit amet. Nullam sollicitudin condimentum semper. Nam pulvinar aliquam est, vel feugiat ante tincidunt eget. Praesent feugiat erat nec ornare suscipit. Validate XHTML & CSS.

+

${link}

More
From 81672c0b2cd4844f03edd3b47eb2176597d960b0 Mon Sep 17 00:00:00 2001 From: Serg Bash Date: Mon, 30 Nov 2015 19:18:19 +0200 Subject: [PATCH 4/7] Update topic News --- .../java/net/bash/serg/slownews/servlet/News.java | 12 +++++++++--- src/main/webapp/WEB-INF/view/news.jsp | 6 +++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/main/java/net/bash/serg/slownews/servlet/News.java b/src/main/java/net/bash/serg/slownews/servlet/News.java index b1c5976..bcb2d74 100644 --- a/src/main/java/net/bash/serg/slownews/servlet/News.java +++ b/src/main/java/net/bash/serg/slownews/servlet/News.java @@ -11,10 +11,12 @@ import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import javax.xml.bind.JAXBContext; +import javax.xml.bind.JAXBException; import javax.xml.bind.Unmarshaller; import java.io.IOException; import java.io.InputStream; import java.net.URL; +import java.util.ArrayList; /** * Created by bso05702 on 18.11.2015. @@ -36,13 +38,17 @@ public void doGet(HttpServletRequest req, HttpServletResponse res) URL xmlURL = new URL("https://news.mail.ru/rss/ukraine/"); InputStream xml = xmlURL.openStream(); net.bash.serg.slownews.model.News news = (net.bash.serg.slownews.model.News) unmarshaller.unmarshal(xml); - session.setAttribute("category", news.getCategory()); + ArrayList al = news.getCategory(); + + session.setAttribute("category0", al.get(0)); + session.setAttribute("category1", al.get(1)); + session.setAttribute("category2", al.get(2)); session.setAttribute("title", news.getTitle()); session.setAttribute("link", news.getLink()); xml.close(); } - catch(Exception e){ - + catch(JAXBException e){ + System.out.println(e.getMessage()); } // WeatherClientParser client = new WeatherClientParser(); // session.setAttribute("news", client.getResult()); diff --git a/src/main/webapp/WEB-INF/view/news.jsp b/src/main/webapp/WEB-INF/view/news.jsp index 5579e1e..650df60 100644 --- a/src/main/webapp/WEB-INF/view/news.jsp +++ b/src/main/webapp/WEB-INF/view/news.jsp @@ -19,7 +19,7 @@
Image 12
-

${title}

+

${category0}
${title}
${link}

More
@@ -37,7 +37,7 @@
-

${category}

+

${category1}
${title}
${link}

More
@@ -56,7 +56,7 @@
-

${link}

+

${category2}
${title}
${link}

More
From 61e69ff73531ba60fc9b5c5577959a8b668919c0 Mon Sep 17 00:00:00 2001 From: Serg Bash Date: Mon, 30 Nov 2015 20:36:11 +0200 Subject: [PATCH 5/7] Add .idea --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index e69de29..723ef36 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +.idea \ No newline at end of file From 0fe8941c7a149516836682ceb00f225d556ac7e0 Mon Sep 17 00:00:00 2001 From: Serg Bash Date: Tue, 1 Dec 2015 23:54:04 +0200 Subject: [PATCH 6/7] Set auto-updating news in project --- .../net/bash/serg/slownews/model/News.java | 62 +++++++++++----- .../net/bash/serg/slownews/servlet/News.java | 22 ++++-- src/main/webapp/WEB-INF/view/news.jsp | 74 +++++-------------- 3 files changed, 77 insertions(+), 81 deletions(-) diff --git a/src/main/java/net/bash/serg/slownews/model/News.java b/src/main/java/net/bash/serg/slownews/model/News.java index 8208bdc..dfcdb46 100644 --- a/src/main/java/net/bash/serg/slownews/model/News.java +++ b/src/main/java/net/bash/serg/slownews/model/News.java @@ -9,40 +9,62 @@ import java.util.ArrayList; @XmlRootElement(name="rss") -@XmlType(propOrder={"title", "link", "category"}) +@XmlType(propOrder={"category", "title", "image", "link", "description"}) @XmlAccessorType(XmlAccessType.FIELD) public class News { @XmlPath("channel/item/category/text()") - private ArrayList category; + private ArrayList category; - @XmlPath("channel/title/text()") - private String title; + @XmlPath("channel/item/title/text()") + private ArrayList title; - @XmlPath("channel/link/text()") - private String link; + @XmlPath("channel/item/enclosure/@url") + private ArrayList image; - public String getTitle() { - return title; - } + @XmlPath("channel/item/link/text()") + private ArrayList link; - public void setTitle(String title) { - this.title = title; - } + @XmlPath("channel/item/description/text()") + private ArrayList description; - public String getLink() { - return link; + public ArrayList getCategory() { + return category; } - public void setLink(String link) { - this.link = link; + public void setCategory(ArrayList category) { + this.category = category; } - public ArrayList getCategory() { - return category; + public ArrayList getImage() { + return image; } - public void setCategory(ArrayList category) { - this.category = category; + public void setImage(ArrayList image) { + this.image = image; } + + public ArrayList getTitle() { + return title; + } + + public void setTitle(ArrayList title) { + this.title = title; + } + + public ArrayList getLink() { + return link; + } + + public void setLink(ArrayList link) { + this.link = link; + } + + public ArrayList getDescription() { + return description; + } + + public void setDescription(ArrayList description) { + this.description = description; + } } \ No newline at end of file diff --git a/src/main/java/net/bash/serg/slownews/servlet/News.java b/src/main/java/net/bash/serg/slownews/servlet/News.java index bcb2d74..b408ac2 100644 --- a/src/main/java/net/bash/serg/slownews/servlet/News.java +++ b/src/main/java/net/bash/serg/slownews/servlet/News.java @@ -17,6 +17,8 @@ import java.io.InputStream; import java.net.URL; import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; /** * Created by bso05702 on 18.11.2015. @@ -38,14 +40,20 @@ public void doGet(HttpServletRequest req, HttpServletResponse res) URL xmlURL = new URL("https://news.mail.ru/rss/ukraine/"); InputStream xml = xmlURL.openStream(); net.bash.serg.slownews.model.News news = (net.bash.serg.slownews.model.News) unmarshaller.unmarshal(xml); - ArrayList al = news.getCategory(); - session.setAttribute("category0", al.get(0)); - session.setAttribute("category1", al.get(1)); - session.setAttribute("category2", al.get(2)); - session.setAttribute("title", news.getTitle()); - session.setAttribute("link", news.getLink()); - xml.close(); + ArrayList list = new ArrayList(); + for(int i = 0; i < news.getImage().size(); i++) { + Map items = new HashMap(); + items.put("category", news.getCategory().get(i)); + items.put("title", news.getTitle().get(i)); + items.put("description", news.getDescription().get(i)); + items.put("image", news.getImage().get(i)); + items.put("link", news.getLink().get(i)); + list.add(items); + } + xml.close(); + ServletContext servletContext = getServletContext(); + servletContext.setAttribute("list", list); } catch(JAXBException e){ System.out.println(e.getMessage()); diff --git a/src/main/webapp/WEB-INF/view/news.jsp b/src/main/webapp/WEB-INF/view/news.jsp index 650df60..8274b2c 100644 --- a/src/main/webapp/WEB-INF/view/news.jsp +++ b/src/main/webapp/WEB-INF/view/news.jsp @@ -7,61 +7,27 @@ <%@include file="headerMenu.jsp"%>
-
-

Rammstein: New faces

- -
- Image 12 -
-

${category0}
${title}
${link}

- More -
-
-
-
-
-

Rammstein is burning

- -
- -
-

${category1}
${title}
${link}

- More -
-
-
-
- -
-

Rammstein: The german touch

- +
    From d6ae684cb20cd9397677b15005591430c82361a9 Mon Sep 17 00:00:00 2001 From: Serg Bash Date: Wed, 2 Dec 2015 20:16:33 +0200 Subject: [PATCH 7/7] Set auto-updating news in project --- .../bash/serg/slownews/servlet/Weather.java | 31 +++++++ src/main/webapp/WEB-INF/view/headerMenu.jsp | 1 + src/main/webapp/WEB-INF/view/weather.jsp | 84 +++++++++++++++++++ 3 files changed, 116 insertions(+) create mode 100644 src/main/java/net/bash/serg/slownews/servlet/Weather.java create mode 100644 src/main/webapp/WEB-INF/view/weather.jsp diff --git a/src/main/java/net/bash/serg/slownews/servlet/Weather.java b/src/main/java/net/bash/serg/slownews/servlet/Weather.java new file mode 100644 index 0000000..bdf2901 --- /dev/null +++ b/src/main/java/net/bash/serg/slownews/servlet/Weather.java @@ -0,0 +1,31 @@ +package net.bash.serg.slownews.servlet; + +import net.bash.serg.slownews.model.WeatherClientParser; + +import javax.servlet.RequestDispatcher; +import javax.servlet.ServletContext; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; +import java.io.IOException; + +/** + * Created by Serg Bash on 12/2/2015. + */ +@WebServlet("/news") +public class Weather extends HttpServlet{ + private static final String BEGIN = "/WEB-INF/view/weather.jsp"; + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) + throws ServletException, IOException { + ServletContext application = getServletContext(); + HttpSession session = req.getSession(); + WeatherClientParser client = new WeatherClientParser(); + session.setAttribute("news", client.getResult()); + RequestDispatcher dispatcher = application.getRequestDispatcher(BEGIN); + dispatcher.forward(req, res); + } +} diff --git a/src/main/webapp/WEB-INF/view/headerMenu.jsp b/src/main/webapp/WEB-INF/view/headerMenu.jsp index 0c5d3d5..c64c243 100644 --- a/src/main/webapp/WEB-INF/view/headerMenu.jsp +++ b/src/main/webapp/WEB-INF/view/headerMenu.jsp @@ -55,6 +55,7 @@
  • News
  • Registration
  • Archive
  • +
  • Weather
  • About
    • Me
    • diff --git a/src/main/webapp/WEB-INF/view/weather.jsp b/src/main/webapp/WEB-INF/view/weather.jsp new file mode 100644 index 0000000..6d762a0 --- /dev/null +++ b/src/main/webapp/WEB-INF/view/weather.jsp @@ -0,0 +1,84 @@ + + +<%@include file="head.jsp" %> + + +
      + <%@include file="headerMenu.jsp"%> + +
      +
      +

      Rammstein: New faces

      + +
      + Image 12 +
      +

      ${news}

      + More +
      +
      +
      +
      +
      +

      Rammstein is burning

      + +
      + +
      +

      Maecenas ut sem dui. Ut aliquet, lorem vel consequat varius, ante est malesuada felis, et accumsan lorem eros id lorem. Aenean commodo mi et est aliquet non congue elit aliquam. Nulla ligula augue, pharetra id bibendum id, congue vel urna. Curabitur pulvinar diam ac libero hendrerit.

      + More +
      +
      +
      +
      + +
      +

      Rammstein: The german touch

      + +
      + +
      +

      Aenean sit amet lacus id enim euismod pretium eu sit amet justo. Integer volutpat laoreet eros, a pharetra urna aliquet sit amet. Nullam sollicitudin condimentum semper. Nam pulvinar aliquam est, vel feugiat ante tincidunt eget. Praesent feugiat erat nec ornare suscipit. Validate XHTML & CSS.

      + More +
      +
      +
      +
      + +
      + +
      +
      +
      + + <%@include file="footer.jsp"%> + + + \ No newline at end of file