Top Banner
CBVE Computerunterstützte Bibliotheksverwaltung Team E Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus
28

Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

Apr 06, 2016

Download

Documents

Kai Kranz
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

CBVEComputerunterstützte

Bibliotheksverwaltung Team E

Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus

Page 2: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

2

Was ist CBVE Technik im Hintergrund Erfahrungen Vorführung

Agenda

Page 3: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

3

Zentraler Server Lokale Terminals Zugriff via Web

Was ist CBVE

Page 4: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

4

Bücher, Zeitschriften, CDs, DVDs, Spiele Themenbasiertes Ordnungssystem Verlage, Autoren Kundendaten Ausleihdaten

Zentraler Server

Page 5: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

5

Administration Kundenverwaltung Medienanlage Suche von Medien

Lokale Terminals

Page 6: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

6

Mediensuche online möglich Keine Anmeldung erforderlich

Zugriff via Web

Page 7: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

7

Architektur Datenbank RMI Messaging EJB Webservice

Technik im Hintergrund

Page 8: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

8

Schichtenmodell◦ Wenig Verquickungen zwischen den Schichten◦ Einfacher Austausch der Benutzerschnittstelle◦ Leichte Migration auf andere Datenbank◦ Wiederverwendbarkeit der Geschäftslogik

Architektur

Page 9: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

9

Oracle Hibernate Transfere Objects

DATENBANK

Page 10: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

10

Oracle Datenbank bei der FHV Zugriff via VPN Datenbankmodell

Datenbank - Oracle

Page 11: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

11

Datenbankzugriff Bekanntes Framework

Datenbank - Hibernate

Page 12: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

12

Data Access Object Dozer-Framework

Datenbank – Transfere Objects

Page 13: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

13

erste Implementierung der Use Cases Observer Pattern

RMI

Page 14: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

14

erste Implementierung der Use Cases◦ Use Case Factory beim Server

RMI

if (_usecases.containsKey(usecase)) try { return (T) _usecases.get(usecase).newInstance(); } catch (Exception e) { throw new RemoteObjectNotFoundException( "An error occured while loading the remote object.", e); }}

Page 15: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

15

erste Implementierung der Use Cases◦ Client fordert einen Use Case an

RMI

UseCaseFactory useCaseFactory = (UseCaseFactory) Naming .lookup(ClientProperties.getInstance().getUrl());m_loginController = useCaseFactory.get( LogIn.class, CbveSession.getInstance().getSessionKey());

Page 16: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

16

Observer Pattern◦ Remote Interface

RMI

public interface IRemoteObserver extends Remote{ public void update(Object argument) throws RemoteException;}

Page 17: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

17

Observer Pattern◦ Klassen

EjbObservable EjbObserver RemoteObserver RemoteObserverObservable ServerObservable ServerObserverRegistration

RMI

Page 18: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

18

Task Bearbeitung wurde mit einer JMS Queue realisiert

Alle Nachrichten werden in einer Queue abgelegt

Keine Message-Driven-Bean, da kein Workflow angestoßen werden muss

Messaging

Page 19: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

19

EJB in CBVE Authentifizierung Authorisierung Erfahrungen

EJB

Page 20: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

20

Version 3.1 ORB auf Glassfish JMS Administrative Objects auf Glassfish RMI Remote Interfaces -> EJB Business

Interfaces

EJB in CBVE

Page 21: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

21

Server◦ UseCaseController = SessionBeans◦ Jeder Client bekommt eigenen UseCaseController◦ @Schedule für Daemon-Prozesse

Client◦ Laden der EJB über lookup◦ Realisiert mittels Factory

EJB in CBVE

Page 22: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

22

Erfolgt über Glassfish LDAP Realm Durch Container überwacht Ausgeführt bei EJB Aufruf Principals in SessionContext Geschützte Beans in sun-ejb-jar.xml

definiert

Authentifizierung

Page 23: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

23

Realisiert mittels Interceptors Ermöglicht Berechtigungen auf

Methodenebene LDAP: Klassenname#Methodenname

Authorisierung

Page 24: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

24

Server◦ Wenn Infrastruktur steht -> einfache und schnelle

Entwicklung von verteilten Systemen Client

◦ @EJB Injection nur in Container Managed Classes Main class Callback class (definiert in application-client.xml)

Erfahrungen

Page 25: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

25

Server: Axis2 Client: Axis2

Testen wegen Komplikationen nicht möglich

Webservice

Page 26: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

26

Bekannte Frameworks Neue Technologien Sehr Zeitintensiv

Erfahrungen

Page 27: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

27

Vorführung

Page 28: Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.

28

Vielen Dank für Ihre Aufmerksamkeit

Fragen?

CBVE