0% fanden dieses Dokument nützlich (0 Abstimmungen)
30 Ansichten8 Seiten

Remote Client Beispiel

Das Dokument beschreibt die Entwicklung eines Remote Clients für das Partnersystem der adesso insurance solutions GmbH, einschließlich der benötigten Bibliotheken und der Testclient-Implementierung. Es werden spezifische Schnittstellen wie die PartnerFacade vorgestellt, die für den Datenaustausch zwischen Client-Anwendungen und dem Partnersystem verwendet werden. Zudem wird auf die Notwendigkeit eingegangen, die richtigen Berechtigungen und Konfigurationen für den Zugriff auf die Remote-Fassaden sicherzustellen.

Hochgeladen von

Ernest Tamagni
Copyright
© © All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen
0% fanden dieses Dokument nützlich (0 Abstimmungen)
30 Ansichten8 Seiten

Remote Client Beispiel

Das Dokument beschreibt die Entwicklung eines Remote Clients für das Partnersystem der adesso insurance solutions GmbH, einschließlich der benötigten Bibliotheken und der Testclient-Implementierung. Es werden spezifische Schnittstellen wie die PartnerFacade vorgestellt, die für den Datenaustausch zwischen Client-Anwendungen und dem Partnersystem verwendet werden. Zudem wird auf die Notwendigkeit eingegangen, die richtigen Berechtigungen und Konfigurationen für den Zugriff auf die Remote-Fassaden sicherzustellen.

Hochgeladen von

Ernest Tamagni
Copyright
© © All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen

Remote Client Beispiel

Partner

Version: 3.0.0
Status: in Arbeit
Datum: 06.05.2020

Autor / Autoren: Malte Hülder

Dateiname: Remote Client Beispiel

adesso insurance solutions GmbH


Adessoplatz 1
44269 Dortmund
Telefon +49 231 7000-7000
Telefax +49 231 7000-1000
info@[Link]
[Link]
Partner

Dokument-Informationen

Dokumenthistorie

Version Datum Autor/-en Kommentare/ Status

Kundenkontakt-Informationen

Name Funktion Telefon E-Mail

ais-Kontakt-Informationen

Name Funktion Telefon E-Mail

Remote Client Beispiel 06.05.2020 > Remote Client [Link] 2/8


Partner

Inhaltsverzeichnis

1 Vorbereitung........................................................................... 4

2 Testclient ................................................................................ 4

3 Schnittstellen in Partner ........................................................ 7

3.1 Die Schnittstellen im Detail .................................................................. 8


3.1.1 PartnerFacade .............................................................................................. 8
3.1.2 PartnerFrontendFacade............................................................................... 8
3.1.3 MigrationFacade .......................................................................................... 8

Remote Client Beispiel 06.05.2020 > Remote Client [Link] 3/8


Partner

1 Vorbereitung

Um einen Remote Client entwickeln zu können, werden folgende Bibliotheken benö-


tigt:

► Client-Bibliotheken des Application Servers1, z.B.


> JBoss: wildfly-ejb-client 7.x
> Weblogic: [Link]
► [Link]
► [Link] (optional)
► [Link] (optional)
► [Link]

Die [Link] sowie die zugehörigen Javadoc-Datei sind Teil der


Lieferung zum Partnersystem, welche über das Paket partner-client-VERSION-
[Link] ausgeliefert werden. (Dabei steht VERSION immer für die Versionsnum-
mer des ausgelieferten Pakets.) Das Paket ist vollständig zu entpacken und die Da-
teien an vorgesehener Stelle abzulegen. Der Weblogic FullClient muss mit der Weblo-
gic-Installation erstellt werden2. Die Logging Bibliotheken sind Teil der Partner2010
Lieferung und sind im [Link] enthalten3.

Zusätzlich wird ein Java Development Kit der Version 1.8 benötigt.

Der Weblogic Server muss gestartet sowie die Anwendung Partner erfolgreich deployt
sein. Die Datenbank muss gestartet und vom Weblogic-Server aus erreichbar sein.4

2 Testclient

Mit folgendem Beispiel lassen sich die Remote Fassaden nutzen:

package [Link];

import [Link];
import [Link];
import [Link];

1 Die Beispiele beziehen sich im Folgenden auf den Weblogic Application Server, für einen JBoss sind
insbesondere Protokoll und Port auf den JBoss Server anzupassen.
2 java -jar <WL_HOME>/server/lib/[Link] ausführen. Weitere Beschreibung siehe Weblo-

gic-Dokumentation
3 Es ist auf die richtige Version zu achten, wenn die Bibliotheken von einer anderen Quelle stammen.
4 vgl. Installationshandbuch

Remote Client Beispiel 06.05.2020 > Remote Client [Link] 4/8


Partner

import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];

public class WeblogicTestclient {

public void pingTest(){


ParBeanLoginLocator locator = new ParBeanLoginLocator();
(1)
SimpleTestFacade testFacade = [Link]([Link]);
String result = [Link]();

if([Link]("*ping*")){
[Link]("Test erfolgreich!");
}else{
[Link]("Kein Remotezugriff möglich");
}
}

public void partnerAnlageTest(){


ParBeanLoginLocator locator = new ParBeanLoginLocator(USERNAME, PASSWORD);
(2)
BuSFacade buSFacade = [Link]([Link]);
NatuerlichePerson partner = new NatuerlichePerson();
[Link]("Mustermann");
[Link]("Ernst");
[Link](Geschlecht.A1);
[Link](Anrede.A1);
[Link](new GregorianCalendar(1956,3,4).getTime());

MDCWrapper mdcWrapper=new MDCWrapper("1");


(3)
Benutzer benutzer= new Benutzer("Tester", "Theo", "TST", "123456", Berech-
[Link]);
boolean fail=false;
try {

Remote Client Beispiel 06.05.2020 > Remote Client [Link] 5/8


Partner

[Link](mdcWrapper, partner, benutzer,


"Neuer Partner zum Test", new Date(), true);
} catch (DublettenException e) {
[Link]();
fail=true;
} catch (PlausibilisierungsException e) {
[Link]();
fail=true;
}
if(!fail){
[Link]("Partner '"+[Link]()+"' erfolgreich ange-
legt");
}
[Link](); (4)
}

public void partnerSuchentest(){


ParBeanLoginLocator locator = new ParBeanLoginLocator(USERNAME, PASSWORD);
(2)
BuSFacade buSFacade = [Link]([Link]);
MDCWrapper mdcWrapper=new MDCWrapper("2");
List<Suchergebnis> results=[Link](mdcWrapper, "Muster-
mann", (String)null, (Date)null, (String)null, (String)null, (String)null, false, 100);
(5)
for (Suchergebnis suchergebnis : results) {
[Link]("Es wurde Eintrag '"+suchergebnis+"' gefun-
den");
}
[Link](); (4)
}

/**
* @param args
*/
public static void main(String[] args) {
[Link]("[Link]", "t3://localhost:7001");
(6)
WeblogicTestclient testclient= new WeblogicTestclient();
[Link]();
[Link]();
[Link]();
}

Remote Client Beispiel 06.05.2020 > Remote Client [Link] 6/8


Partner

Wird das Programm ausgeführt, erscheint beim ersten Aufruf5:

Test erfolgreich!
Partner 'Mustermann' erfolgreich angelegt
Es wurde Eintrag '<1> <N> Mustermann Ernst 1956-04-04 <null> <null> null null null
null null <null>' gefunden

Zum Beispielcode ist folgendes Anzumerken:

► Die Klasse ParBeanLoginLocator stammt aus dem Package [Link]-


[Link] und dient dazu, einen speziell zum Weblogic passenden
JNDI Lookup auszuführen (1). Dabei können die Nutzerdaten eines Benutzers
übergeben werden (2), der die für die folgende Fachlogik erforderlichen Berechti-
gungen besitzt. Für den Nutzer der Klasse ist es nur noch relevant, die richtige
Fachlogik, die als Interface bereitsteht, zu übergeben und er erhält das passende
Remote-Bean. Damit die Klasse den passenden Server mit dem Lookup verbindet,
muss für den Remotezugriff die Systemvariable [Link] gesetzt sein (6)6.
► Der MDCWrapper dient dazu, eine fachlich zusammenhängende Identifikations-
nummer zu übertragen (3)7.
► Nach Abschluss der fachlichen Logik muss der Benutzer wieder abgemeldet wer-
den, damit die ggf. folgende Logik nicht mehr in seinem Namen und mit seinen
Berechtigungen ausgeführt wird (4).
► Die Suche wird hier nur über den Namen durchgeführt; Werte, die sich nicht such-
einschränkend auswirken, sollen nicht verwendet werden. Dazu wird der jeweilige
Parameter mit null belegt (5)8.

3 Schnittstellen in Partner

Folgende Schnittstellen dürfen von einem Client in Partner aufgerufen werden. Alle
Aufrufe erfolgen kontextbezogen. Aktuell soll von Applikationen nur noch die Partner-
Facade-Schnittstelle verwendet werden, die PartnerFrontendFacade ist der Oberflä-
che des Partnersystems vorbehalten. Alle anderen Schnittstellen sind veraltet und

5 Für jeden weiteren Aufruf wird ein weiterer Eintrag gefunden, bis die Datenbank gelöscht wird.
6 t3 wird verwendet, da in der Kombination WLS 10.0 & IBM JDK 1.5 die IIOP-Serialisierung von Java-
Enumerations nicht vollständig arbeitet (vgl. auch Installationshandbuch, Tunneling).
Dieses Verhalten wurde in WLS 10.3.3 & JDK 1.6 noch nicht überprüft.
7 Hier wurde eine feste Nummer eingeben, in der Praxis wird die Nummer vom aufrufenden System

übergeben.
8 vgl. JavaDoc

Remote Client Beispiel 06.05.2020 > Remote Client [Link] 7/8


Partner

sollten nicht mehr verwendet werden. Alle Aufrufe der Facaden werden im Detail in-
nerhalb von Partner dokumentiert.

3.1 Die Schnittstellen im Detail

Die aktuelle und vollständige JavaDoc der Schnittstellen befindet sich in dem Archiv
[Link] in dem Paket [Link].

3.1.1 PartnerFacade

Die Schnittstelle PartnerFacade ist die Schnittstelle über die sich Client-Anwendungen
mit dem Partnersystem verbinden und mit ihm Daten austauschen.

3.1.2 PartnerFrontendFacade

Die Schnittstelle PartnerFrontendFacade ist für die Oberflächenentwicklung von Part-


ner vorgesehen.

3.1.3 MigrationFacade

Die (veraltete) Schnittstelle MigrationFacade kommt im Zuge der Migration zum Ein-
satz.

Remote Client Beispiel 06.05.2020 > Remote Client [Link] 8/8

Das könnte Ihnen auch gefallen