From 7ae48b2b9d749520ee28b7370f9c7c46a337529b Mon Sep 17 00:00:00 2001 From: yvesf Date: Tue, 12 Apr 2011 14:04:56 +0200 Subject: Windows-Screenshots; Neue maven reports --- pom.xml | 25 ++++++++++ .../horb/calendar/dualis/DualisConnection.java | 6 ++- .../de/dhbw/horb/calendar/ics/VEventComponent.java | 17 ++++--- .../de/dhbw/horb/calendar/servlet/ICSServlet.java | 2 +- src/site/apt/devel-install.apt | 10 ++-- src/site/apt/user-windows.apt | 46 +++++++++++++++++++ src/site/resources/images/windows-live-web.jpg | Bin 68296 -> 0 bytes src/site/resources/images/windows-live-web.png | Bin 0 -> 100425 bytes .../resources/slides/images/windows-live-web.png | Bin 0 -> 100425 bytes src/site/resources/slides/slides.pdf | Bin 1069722 -> 1069723 bytes src/site/resources/slides/slides.tex | 16 ++++--- src/site/site.xml | 2 +- src/site/xdoc/user-outlook.xml | 51 --------------------- 13 files changed, 101 insertions(+), 74 deletions(-) create mode 100644 src/site/apt/user-windows.apt delete mode 100644 src/site/resources/images/windows-live-web.jpg create mode 100644 src/site/resources/images/windows-live-web.png create mode 100644 src/site/resources/slides/images/windows-live-web.png delete mode 100644 src/site/xdoc/user-outlook.xml diff --git a/pom.xml b/pom.xml index f43fa6a..b591a10 100644 --- a/pom.xml +++ b/pom.xml @@ -69,6 +69,31 @@ + + org.apache.maven.plugins + maven-pmd-plugin + 2.5 + + true + utf-8 + 100 + 1.5 + + **/*Bean.java + **/generated/*.java + + + + + + org.apache.maven.plugins + maven-checkstyle-plugin + 2.6 + diff --git a/src/main/java/de/dhbw/horb/calendar/dualis/DualisConnection.java b/src/main/java/de/dhbw/horb/calendar/dualis/DualisConnection.java index 89e566c..efb7943 100644 --- a/src/main/java/de/dhbw/horb/calendar/dualis/DualisConnection.java +++ b/src/main/java/de/dhbw/horb/calendar/dualis/DualisConnection.java @@ -181,8 +181,9 @@ public class DualisConnection { private void getEventsFromPage(HtmlPage page, final List events) { for (HtmlElement elem : page.getElementsByTagName("div")) { - if (!elem.getAttribute("class").equals("tbMonthDay")) + if (!elem.getAttribute("class").equals("tbMonthDay")) { continue; + } final Calendar cday = Calendar.getInstance(); Object dayTitle = elem .getFirstByXPath("div[@class='tbsubhead']/a/@title"); @@ -199,8 +200,9 @@ public class DualisConnection { continue; } for (HtmlElement appLink : elem.getElementsByTagName("a")) { - if (!appLink.getAttribute("class").equals("apmntLink")) + if (!appLink.getAttribute("class").equals("apmntLink")) { continue; + } // title="08:15 - 10:45 / HOR-121 / Open Source Systeme" String desc = StringUtils.strip(appLink.getAttribute("title")); java.util.regex.Matcher matcher = appLinkPattern.matcher(desc); diff --git a/src/main/java/de/dhbw/horb/calendar/ics/VEventComponent.java b/src/main/java/de/dhbw/horb/calendar/ics/VEventComponent.java index bfc2162..0472dea 100644 --- a/src/main/java/de/dhbw/horb/calendar/ics/VEventComponent.java +++ b/src/main/java/de/dhbw/horb/calendar/ics/VEventComponent.java @@ -3,6 +3,9 @@ package de.dhbw.horb.calendar.ics; import java.util.Calendar; import java.util.TimeZone; +/** + * VEvent Component of iCalendar + */ public class VEventComponent extends AbstractICSType { public Calendar dtstamp = Calendar.getInstance(); public Calendar dtstart = Calendar.getInstance(); @@ -43,32 +46,32 @@ public class VEventComponent extends AbstractICSType { public static class Builder { VEventComponent event = new VEventComponent(); - public Builder dtstamp(Calendar cstart) { + public Builder dtstamp(final Calendar cstart) { event.dtstamp = cstart; return this; } - public Builder dtstart(Calendar cstart) { + public Builder dtstart(final Calendar cstart) { event.dtstart = cstart; return this; } - public Builder dtend(Calendar cend) { + public Builder dtend(final Calendar cend) { event.dtend = cend; return this; } - public Builder summary(String summary) { + public Builder summary(final String summary) { event.summary = summary; return this; } - public Builder description(String description) { + public Builder description(final String description) { event.description = description; return this; } - public Builder location(String location) { + public Builder location(final String location) { event.location = location; return this; } @@ -77,7 +80,7 @@ public class VEventComponent extends AbstractICSType { return event; } - public Builder status(String status) { + public Builder status(final String status) { event.status = status; return this; } diff --git a/src/main/java/de/dhbw/horb/calendar/servlet/ICSServlet.java b/src/main/java/de/dhbw/horb/calendar/servlet/ICSServlet.java index a76f781..de9f83f 100644 --- a/src/main/java/de/dhbw/horb/calendar/servlet/ICSServlet.java +++ b/src/main/java/de/dhbw/horb/calendar/servlet/ICSServlet.java @@ -39,4 +39,4 @@ public class ICSServlet extends AuthenticatedServlet { } response.getOutputStream().write(calendar.serialize().getBytes()); } -} \ No newline at end of file +} diff --git a/src/site/apt/devel-install.apt b/src/site/apt/devel-install.apt index 01c4ae1..a0eec08 100644 --- a/src/site/apt/devel-install.apt +++ b/src/site/apt/devel-install.apt @@ -8,7 +8,7 @@ Installation * Mit Embedded Servlet Container - + <<>> Standardmäßig lauscht jetty nun auf Port 8080 @@ -132,7 +132,7 @@ Geben Sie das Passwort für "jetty" ein. jetty-ssl 7.0.0.pre5 - + ----------------------------------------------- ** Zertifikationsinfos @@ -153,7 +153,7 @@ B6:CA:AF:1C:8C:B7:38:38:36:2A:30:3C:A5:C2:54:20 -----BEGIN CERTIFICATE----- .... /Zertifikat im PEM Format/ - -----END CERTIFICATE----- + -----END CERTIFICATE----- -------------------------------- Die Verbindung kann jetzt mit wget überprüft werden @@ -162,13 +162,13 @@ B6:CA:AF:1C:8C:B7:38:38:36:2A:30:3C:A5:C2:54:20 # wget --ca-certificate=certificate.pem \ https://dualical.ba-horb.de:8443/dhbwcalendar/ -------------------------------- - + Weitere Informationen zum Zertifikat zeigt OpenSSL in Klartext an: -------------------------------- # openssl x509 -noout -text -in certificate.pem -------------------------------- - + * Zugriff von 'aussen' Mit php und curl lässt sich eine reverse-Proxy nachahmen. Ein Beispiel findet sich unter: {{{./ics.php.txt}ics.php.txt}}. \ No newline at end of file diff --git a/src/site/apt/user-windows.apt b/src/site/apt/user-windows.apt new file mode 100644 index 0000000..06f6ec5 --- /dev/null +++ b/src/site/apt/user-windows.apt @@ -0,0 +1,46 @@ + ------ + Anbindung Windows Tools + ------ + Yves Fischer + ------ + 12.04.2011 + +Anbindung Microsoft Windows Live + + Melden Sie sich bei Windows Live an. Rufen Sie die +Kalendarfunktion auf. + + Klicken sie in der Toolbar auf Subscribe/Abonnieren. Geben Sie als +Kalendar URL die URL ihrer DHBW Calendar Installation an. Der Server +muss für Microsoft erreichbar sein. + + Achtung, dieses Vorgehen ist nur theoretisch möglich, praktisch +unterstützt Windows Live keine Authentifizierung bei externen +iCalendar Resourcen. Es ist daher nötig, die iCalendar Daten über +Drittprogramme zu beziehen und Windows Live ohne Authentifizierung zur +Verfügung zu stellen. Eine Möglichkeit ist es, durch ein Wrapper-Script +die Authentifizierung über HTTP-GET Parameter zu steuern. + +* Windows Live im Web + +[images/windows-live-web.png] Windows Live im Web. + +* Windows Live mit Windows Mail + +[images/windows-live-desktop.jpg] Windows Live mit Windows Mail. + +* Windows Live mit Windows Mobile + + todo + + +Anbindung Microsoft Outlook 2007 + + Bei der Nutzung von Microsoft Outlook 2007 muss beachtet werden, +dass der in Outlook integrierte Dialog nicht richtig funktioniert. + + Der Kalender kann hinzugefügt werden, in dem im Internet Explorer +eine URL 'webcal://host/path' geöffnet wird. Folgend sollte nach +einigen Bestätigungsdialogen die Anmeldedaten abgefragt werden. + +[images/outlook-2007.jpg] Outlook 2007. diff --git a/src/site/resources/images/windows-live-web.jpg b/src/site/resources/images/windows-live-web.jpg deleted file mode 100644 index 5a39572..0000000 Binary files a/src/site/resources/images/windows-live-web.jpg and /dev/null differ diff --git a/src/site/resources/images/windows-live-web.png b/src/site/resources/images/windows-live-web.png new file mode 100644 index 0000000..7438d56 Binary files /dev/null and b/src/site/resources/images/windows-live-web.png differ diff --git a/src/site/resources/slides/images/windows-live-web.png b/src/site/resources/slides/images/windows-live-web.png new file mode 100644 index 0000000..7438d56 Binary files /dev/null and b/src/site/resources/slides/images/windows-live-web.png differ diff --git a/src/site/resources/slides/slides.pdf b/src/site/resources/slides/slides.pdf index 2d4a901..09e0850 100644 Binary files a/src/site/resources/slides/slides.pdf and b/src/site/resources/slides/slides.pdf differ diff --git a/src/site/resources/slides/slides.tex b/src/site/resources/slides/slides.tex index 1a169a1..bebee40 100644 --- a/src/site/resources/slides/slides.tex +++ b/src/site/resources/slides/slides.tex @@ -27,7 +27,7 @@ \subtitle{\small\textit{Open-Source Projekt}} \author{Yves Fischer\\\vspace{.2cm}\tiny{TIT2008/NS}} \institute{DHBW Stuttgart Campus Horb} -\date{Mittwoch 9. März} +\date{\today} \begin{document} @@ -97,25 +97,25 @@ \begin{itemize} \item Apple iPhone \begin{itemize} - \item Direkte iCalendar Unterstützung. + \item Direkte iCalendar/HTTPS Unterstützung. \end{itemize} \item Google Kalender \begin{itemize} \item schliesst Android Smartphone ein. - \item Unterstützt Abfragen externe iCalendar Ressourcen. + \item Unterstützt Abfragen externer iCalendar/HTTPS Ressourcen. \end{itemize} \item Mozilla Thunderbird/Lightning \begin{itemize} - \item Direkte iCalendar Unterstützung. + \item Direkte iCalendar/HTTPS Unterstützung. \end{itemize} \item Microsoft Outlook \begin{itemize} - \item Direkte iCalendar Unterstützung. + \item Direkte iCalendar/HTTPS Unterstützung. \end{itemize} \item Microsoft Windows Live \begin{itemize} \item schliesst Windows Mail, Windows Mobile ein. - \item Unterstützt Abfragen externer iCalendar Ressourcen aber nur beschränkt. + \item beschränkt Abfragen von iCalendar/HTTP Resourcen. \end{itemize} \pause \item \textsc{DUALIS} @@ -176,7 +176,9 @@ \includegraphics[height=0.6\paperheight]{images/dhbwcalendar-live-web.jpg} \end{figure} \begin{itemize} - \item Unterstützt Abfragen externer iCalendar Ressourcen nur beschränkt. + \item Unterstützt kein SSL + \item Unterstützt keine HTTP-Authentifizierung + \item Workaround: Credentials in Query-String der URL \end{itemize} \end{frame} diff --git a/src/site/site.xml b/src/site/site.xml index 5f3c4d8..af87ba7 100644 --- a/src/site/site.xml +++ b/src/site/site.xml @@ -14,7 +14,7 @@ - + diff --git a/src/site/xdoc/user-outlook.xml b/src/site/xdoc/user-outlook.xml deleted file mode 100644 index 8884049..0000000 --- a/src/site/xdoc/user-outlook.xml +++ /dev/null @@ -1,51 +0,0 @@ - - - - Anbindung Microsoft Outlook - Yves Fischer - 27.02.2011 - - - -
-

Melden Sie sich bei Windows Live an. Rufen Sie die - Kalendarfunktion auf.

-

Klicken sie in der Toolbar auf Subscribe/Abonnieren. Geben Sie als - Kalendar URL die URL ihrer DHBW Calendar Installation an. Der Server - muss für Microsoft erreichbar sein.

-

Achtung, dieses Vorgehen ist nur - theoretisch möglich, praktisch - unterstützt Windows Live keine - Authentifizierung bei externen - iCalendar Resourcen. Es ist daher - nötig, die iCalendar Daten über - Drittprogramme zu beziehen und Windows - Live ohne Authentifizierung zur - Verfügung zu stellen.

- - - Windows Live im Web - - - Windows Live im Web - -
-
-

Bei der Nutzung von Microsoft Outlook 2007 muss beachtet werden, - dass der in Outlook integrierte Dialog nicht richtig funktioniert. -

-

- Der Kalender kann hinzugefügt werden, in dem im Internet Explorer - eine URL - webcal://host/path - geöffnet wird. Folgend sollte nach einigen Bestätigungsdialogen die - Anmeldedaten abgefragt werden. -

-

- Outlook 2007 -

-
- -
- -- cgit v1.2.1