package pnews;
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
import java.util.List;
+import java.util.logging.Level;
+import java.util.logging.Logger;
public class HTML {
+ private static final String CLASS_NAME= HTML.class.getName();
+ private static final Logger LOG = Logger.getLogger(CLASS_NAME);
+
private static void appendA(StringBuffer buf, String child, String href, String cl) {
buf.append("<a href='");
buf.append(href);
buf.append("</p>\n");
}
- private static void append(StringBuffer buf, Article a) {
+ private static void append(StringBuffer buf, Article a) throws UnsupportedEncodingException {
buf.append("<div class='article'>\n");
buf.append("<div class='article-image'>\n");
buf.append("<div class='article-content'>\n");
buf.append("<div class='article-title'>\n");
- appendA(buf, a.title, "redirect?url="+a.link, null);
+ appendA(buf, a.title, "redirect?url=" + URLEncoder.encode(a.link, "UTF-8"), null);
buf.append("</div>\n");
buf.append("<div class='article-info'>" + a.website + " - " + a.publicationDate + "</div>");
i = 0;
for (Article e: articles) {
- append(buf, e);
+ try {
+ append(buf, e);
+ } catch (UnsupportedEncodingException e1) {
+ LOG.log(Level.SEVERE, "fail to convert article to HTML", e1);
+ }
if (i == 100)
break;
else