Autoren der Dokumentation: Björn Scheppler
Dokumentation letztmals aktualisiert: 4.10.2019
Dieses Maven-Projekt simuliert das Gebäude- und Wohnungsregister der Schweiz, welches Operationen über SOAP bereitstellt.
Dieses Projekt wird in der eUmzugPrototyp-Lösung verwendet, welche eumzug.swiss nachbildet. Erarbeitet am Institut für Wirtschaftsinformatik an der ZHAW School of Management and Law im Rahmen des Bachelor-Studiengangs Wirtschaftsinformatik im Modul Geschäftsprozessintegration.
Die Simulation orientiert sich an der offiziellen Dokumentation des Bundesamtes für Statistik, abgelegt in src/docs/gwr_dokumentation.pdf.
- Spring Boot-Applikation mit Tomcat Server, usw.
- Persistierungskomponenten:
- H2-Datenbank
- Gebäude- und Wohnungs-Entitäten inklusive separate Entität für den zusammengesetzten Primärschlüssel der Wohnungs-Entität
- Gebäude- und Wohnungs-JPA-Repositories
- data.sql mit initialen Testdaten, die beim Starten der Applikation in die Datenbank eingefügt werden. Diese wurden über die Exceldatei src\test\resources\initialData.xlsx erstellt
- SOAP WebService-Komponenten (PS: mit Apache CXF gelöst statt nur spring-boot-starter-webservices, da letzteres mit der komplexen Struktur des XSD nicht umgehen kann)
- SOAP-Webservice-Komponenten (Java API for XML Web Services-Komponenten, CXF-Servlet-Komponenten)
- WebServiceConfiguration-Klasse
- JAXB-Konfiguration für Wohnungen (global.xjb)
- XML-Schema Definition als Basis für das WSDL und die durch ein Maven-Plugin generierten Klassen (gwr.xsd)
- Schnittstellen-Definition (Endpoint: GebaeudeUndWohnungsRegisterServiceEndpoint)
- Geschäftslogik (controller):
- GwrBuildingController mit der Methode, um zu prüfen, ob an einer Adresse ein Gebäude existiert
- GwrDwellingController mit einer Methode, um Wohnungen an einer Adresse zurück zu erhalten
- Test-Fälle als soapUI-Projekt (GebaeudeUndWohnungsRegisterServiceTests-soapui-project.xml)
- Erstmalig oder bei Problemen ein
mvn clean install
durchführen - Bei Änderungen am POM-File oder bei (Neu)kompilierungsbedarf genügt ein
mvn install
- Dabei werden auch mit einem Maven-Plugin die Java-Klassen aus der XSD generiert.
- Für den Start ist ein Run (Netbeans), respektive
java -jar .\target\NAME DES JAR-FILES.jar
(Cmd) erforderlich. Dabei wird Tomcat gestartet, die Datenbank erstellt/hochgefahren mit den Eigenschaften (application.properties) und die verschiedenen Resourcen-URL-Mappings vorgenommen. - Beim Starten werden die Insert-Statements in src\main\ressources\data.sql ausgeführt.
- Über http://localhost:8090/soap prüfen, ob die WSDL aufgerufen werden kann.
- In einem SOAP-Client (z.B. soapUI) mit dieser WSDL Requests bauen und aufrufen oder alternativ das bereits in src\test\resources\GebaeudeUndWohnungsRegisterServiceTests-soapui-project.xml vorhandene soapUI-Projekt nutzen.
- Das Beenden geschieht mit CTRL+C
Hierzu den Anweisungen folgen in https://github.com/zhaw-gpi/eumzug-plattform-2018
- Um auf die Datenbankverwaltungs-Umgebung zuzugreifen, http://localhost:8090/console eingeben.
- Anmeldung über:
- Benutzername sa
- Passwort: leer lassen
- URL jdbc:h2:./DATENBANKNAME_GEMAESS_APPLICATION.PROPERTIES
- Björn Scheppler: Hauptarbeit
- Peter Heinrich: Der stille Support im Hintergrund mit vielen Tipps sowie zuständig für den Haupt-Stack mit SpringBoot & Co.
- Studierende Michèle Aggeler, Laura Attinger, Daniel Fernandes Costa, Flora Ferat und Jasmin Schleeh: Zusammengesetzter Primärschlüssel für DwellingEntity