Added a bissl a Zeig
This commit is contained in:
parent
7ac2c8ae24
commit
8fbf8be423
BIN
doc/~$pse.docx
BIN
doc/~$pse.docx
Binary file not shown.
|
@ -256,110 +256,22 @@ MVC unterteilt eine interaktive Applikation in drei Teile: Model, View und Contr
|
|||
\subsection{Beschreibe ein konkretes Anwendungsbeispiel}
|
||||
\begin{itemize}
|
||||
\item Java Server Faces (bei Java Server Faces enthält das File zwar keinen Java Code, interagiert aber direkt mit Java Code einer Backing Bean)
|
||||
\item Im Projekt wurde der Front Controller in Form eines Servlet realisiert. Dieses ist im
|
||||
\item Im Projekt wurde der Front Controller in Form eines Servlet realisiert, dessen Einbindung in der Konfigurationsdatei "`web.xml"' erfolgt:
|
||||
\end{itemize}
|
||||
\begin{minted}[linenos,breaklines=true]{xml}
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
|
||||
...
|
||||
<servlet>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<url-pattern>*.xhtml</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- Security roles -->
|
||||
<security-role>
|
||||
<description>administrators</description>
|
||||
<role-name>ADMIN</role-name>
|
||||
</security-role>
|
||||
<security-role>
|
||||
<description>portal administrators</description>
|
||||
<role-name>PORTALADMIN</role-name>
|
||||
</security-role>
|
||||
<security-role>
|
||||
<description>standard user</description>
|
||||
<role-name>USER</role-name>
|
||||
</security-role>
|
||||
|
||||
<!-- Security constraints -->
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>admin area</web-resource-name>
|
||||
<url-pattern>/admin/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>ADMIN</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>community area</web-resource-name>
|
||||
<url-pattern>/community/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>USER</role-name>
|
||||
<role-name>PORTALADMIN</role-name>
|
||||
<role-name>ADMIN</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>user administration area</web-resource-name>
|
||||
<url-pattern>/userAdministration/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>USER</role-name>
|
||||
<role-name>PORTALADMIN</role-name>
|
||||
<role-name>ADMIN</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>user functionalities</web-resource-name>
|
||||
<url-pattern>/user.xhtml</url-pattern>
|
||||
<url-pattern>/userlist.xhtml</url-pattern>
|
||||
<url-pattern>/notImplemented.xhtml</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>USER</role-name>
|
||||
<role-name>PORTALADMIN</role-name>
|
||||
<role-name>ADMIN</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>other functionalities</web-resource-name>
|
||||
<url-pattern>/notImplemented.xhtml</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>USER</role-name>
|
||||
<role-name>PORTALADMIN</role-name>
|
||||
<role-name>ADMIN</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<login-config>
|
||||
<auth-method>FORM</auth-method>
|
||||
<realm-name>pse</realm-name>
|
||||
<form-login-config>
|
||||
<form-login-page>/login.xhtml</form-login-page>
|
||||
<form-error-page>/login.xhtml</form-error-page>
|
||||
<!-- <form-error-page>/loginerror.xhtml</form-error-page> -->
|
||||
</form-login-config>
|
||||
</login-config>
|
||||
</web-app>
|
||||
<servlet>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<url-pattern>*.xhtml</url-pattern>
|
||||
</servlet-mapping>
|
||||
\end{minted}
|
||||
|
||||
\subsection{Anwendung im Projekt}
|
||||
JavaServer Faces: mächtiges Framework, wo das MVC Pattern verwendet wird. Auf der einen Seite
|
||||
stehen die reinen Views (XHTML Seiten) und auf der anderen Seite Java Beans (Java Klassen), die als
|
||||
|
@ -427,16 +339,13 @@ mode="advanced" label="Add document (.pdf .jpg .docx)">
|
|||
\subsection{Erkläre die Funktion + Skizze}
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[width=0.5\textwidth]{pics/view-helper_pat1.jpg}
|
||||
\includegraphics[width=0.8\textwidth]{pics/view-helper_pat1.jpg}
|
||||
\end{figure}
|
||||
\begin{itemize}
|
||||
\item View delegiert Aufgaben an Helper (Helper adaptieren View zu Model)
|
||||
\item View (xhtml-Dateien im Ordner webapp) delegiert Aufgaben an Helper (*Controller-Klassen - z.B. DocumentController im Ordner web)
|
||||
\item Helper adaptieren View zu Model (Klassen in den Ordnern service und data)
|
||||
\item in View befindet sich HTML Code im ViewHelper Java Code zur Aufbereitung der Daten (+ wenig HTML)
|
||||
\end{itemize}
|
||||
\subsection{Beschreibe ein konkretes Anwendungsbeispiel}
|
||||
\begin{itemize}
|
||||
\item bei Verwendung von JSP (Java Server Pages enthalten neben HTML auch Java Code)
|
||||
\end{itemize}
|
||||
\subsection{Nenne die Konsequenzen der Anwendung}
|
||||
\begin{itemize}
|
||||
\item kapselt Design-Code in View und View-Processing-Code Logik in Helper
|
||||
|
@ -695,6 +604,117 @@ NamedBean, TypedBean etc.
|
|||
DTO
|
||||
|
||||
|
||||
\section{Die CONFIG-Files}
|
||||
\subsection{web.xml}
|
||||
\begin{itemize}
|
||||
\item konfiguriert den Java Webserver (Wildfly - JBOSS)
|
||||
\item befindet sich im Ordner \textbf{src/main/webapp/WEB-INF/web.xml}
|
||||
\end{itemize}
|
||||
|
||||
\begin{minted}[linenos,breaklines=true]{xml}
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
|
||||
...
|
||||
<servlet>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<url-pattern>*.xhtml</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- Security roles -->
|
||||
<security-role>
|
||||
<description>administrators</description>
|
||||
<role-name>ADMIN</role-name>
|
||||
</security-role>
|
||||
<security-role>
|
||||
<description>portal administrators</description>
|
||||
<role-name>PORTALADMIN</role-name>
|
||||
</security-role>
|
||||
<security-role>
|
||||
<description>standard user</description>
|
||||
<role-name>USER</role-name>
|
||||
</security-role>
|
||||
|
||||
<!-- Security constraints -->
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>admin area</web-resource-name>
|
||||
<url-pattern>/admin/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>ADMIN</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>community area</web-resource-name>
|
||||
<url-pattern>/community/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>USER</role-name>
|
||||
<role-name>PORTALADMIN</role-name>
|
||||
<role-name>ADMIN</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>user administration area</web-resource-name>
|
||||
<url-pattern>/userAdministration/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>USER</role-name>
|
||||
<role-name>PORTALADMIN</role-name>
|
||||
<role-name>ADMIN</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>user functionalities</web-resource-name>
|
||||
<url-pattern>/user.xhtml</url-pattern>
|
||||
<url-pattern>/userlist.xhtml</url-pattern>
|
||||
<url-pattern>/notImplemented.xhtml</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>USER</role-name>
|
||||
<role-name>PORTALADMIN</role-name>
|
||||
<role-name>ADMIN</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>other functionalities</web-resource-name>
|
||||
<url-pattern>/notImplemented.xhtml</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>USER</role-name>
|
||||
<role-name>PORTALADMIN</role-name>
|
||||
<role-name>ADMIN</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<login-config>
|
||||
<auth-method>FORM</auth-method>
|
||||
<realm-name>pse</realm-name>
|
||||
<form-login-config>
|
||||
<form-login-page>/login.xhtml</form-login-page>
|
||||
<form-error-page>/login.xhtml</form-error-page>
|
||||
<!-- <form-error-page>/loginerror.xhtml</form-error-page> -->
|
||||
</form-login-config>
|
||||
</login-config>
|
||||
</web-app>
|
||||
\end{minted}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue