Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Inhalt
maxLevel5

Nuclet zur Anbindung an die cKonto-Schnittstelle

...


Name:cKonto
Package:org.nuclet.ckonto

...

...

Version:1.

...

4.0
Datum:13

...

Überblick

.09.2017
Nuclos-Kompatibilität:

ab Nuclos 4.19.3

Überblick

...


Kurzbeschreibung

Das cKonto-Nuclet bietet die Möglichkeit Bankverbindungen über die cKonto-Schnittstelle auf Validität zu prüfen.

...


Info

Hinweis: Für die Nutzung der cKonto-Schnittstelle benötigen Sie einen kosfenpflichtigen Account bei der NetSlave GmbH. Weitere Informationen finden Sie unter www.ckonto.de.

...


Nuclet-Bestandteile

Das cKonto-Nuclet umfasst ein Java-Package mit drei Java-Klassen.

 


Java-Package-Struktur

 

Java-Package

Java-Klasse

Kurzbeschreibung

org.nuclet.ckonto

CkontoCheck

Container-Klasse zur Verarbeitung des cKonto-XMLs

...

 


CkontoConstants

Konstanten zur Interpretation der Schnittstellenrückgabewerte

...

 


CkontoUtils

Utility-Klasse mit Validierungsmethoden

Tabelle 1: Java-Package-Struktur


Integration

 

...

Notwendige Schritte zur Integration

Die Integration des cKonto-Nuclets erfolgt in

...

4 Schritten:

  1. Download

  2. Nuclet-Import

  3. Konfiguration der

...

  1. Nuclet-Parameter

  2. Sourcecode-Anpassungen in

...

  1. eigenen Java-Regeln

Alle Integrationschritte werden im folgenden

...

detailliert erläutert.

...


Schritt 1: Download

Download der .nuclet-Datei „cKonto-v1.4.0-4.

...

19.3.nuclet“ auf der Nuclos-Webpage unter „Nuclos Services“ > „Download“ > „Nuclet Download“.

 


Schritt 2: Nuclet-Import

Import des cKonto-Nuclets unter „Konfiguration“ > „Nuclet Management“ > „Importieren“ in Ihre bestehende Nuclos-Instanz, Auswahl der Datei „cKonto-v1.4.0-4.

...

19.3.nuclet“

 


Schritt 3: Konfiguration der

...

 

Nuclet-Parameter

Das cKonto-Nuclet ist über Nuclet-Parameter parametrisierbar. Die Einrichtung der verwendeten

...

Nuclet-Pameter erfolgt im Nuclet-Management unter „Konfiguration“.


Parameter

Kurzbeschreibung

...

cKonto Check

Kennzeichnung, ob eine Kontoprüfung über die cKonto-Schnittstelle erfolgen soll

...

CKONTO_KEY

...

Registrierungsschlüssel

Tabelle 2: System-Parameter

 

Info

Anmerkung: Dieser Schritt wird erst in einer zukünfigen Version notwendig, d.h. sobald die neue Nuclos-API das Auslesen von System-Parametern unterstützt. Solange dies nicht der Fall ist, erfolgt die Konfiguration in Schritt 8, durch Anpassung von entsprechenden Konstanten im Java-Code.

 

Schritt 4: Sourcecode-Anpassungen in den Java-Regeln des cKonto-Nuclets

 

...

Java-Package

...

Java-Klasse

...

Kurzbeschreibung

...

org.nuclet.ckonto

...

CkontoUtils

...

Konfiguration der zwei Konstanten CKONTO_CHECK und CKONTO_KEY

Tabelle 4: Anwendungsspezifische Anpassungen in Java-Regeln

 

CkontoUtils

Es ist notwendig, die beiden Konstanten CKONTO_CHECK und CKONTO_KEY für den eigenen Anwendungszweck zu konfigurieren:

  • CKONTO_CHECK: legt fest, ob eine Kontoprüfung über die cKonto-Schnittstelle erfolgen soll

  • CKONTO_KEY: definiert den Authentifizierungsschlüssel für die cKonto-Schnittstelle; der Default-Wert für Testzwecke ist „demo“

     

Codeblock
languagejava
titleorg.nuclet.ckonto.CkontoUtils
 public class CkontoUtils
 {
     private static final String CKONTO_KEY = "demo"; // Authentifizierungsschlüssel
     private static final String CKONTO_CHECK = "Y"; // Soll eine Kontovalidierung durchgeführt werden?

     (...)
 }

...

cKonto KeyRegistrierungsschlüssel

cKonto URL

URL der cKonto-Schnittstelle

Tabelle 2: Nuclet-Parameter


Hinweis

Achtung: Die Validierungsmethoden  validiereIBAN()  und  validiereKontoverbindung()  der

...

Klasse CkontoUtils  validieren die übergebenen Parameter immer, unabhängig vom Wert

...

des Nuclet-Parameters cKonto Check. Zur Abfrage, ob eine Validierung tatsächlich erfolgen soll, dient die Methode istKontovalidierungAktiviert()  in der selben Klasse.

...

 

...

...

Anmerkung: Dieser Schritt wird in einer zukünfigen Version entfallen, d.h. sobald die neue Nuclos-API das Auslesen von System-Parametern unterstützt. Sobald dies der Fall ist, wird diese Anpasung über Schritt 3 geregelt (s.o.).


Schritt 4: Sourcecode-Anpassungen in eigenen Regeln

Soll die Validierung von Bankverbindungen über die cKonto-Schnittstelle eingebunden werden, so erfolgt dies über den Aufruf einer der zwei folgenden Methoden der Klasse CkontoUtils:

  • validiereIBAN(): führt eine Validierung einer IBAN durch

  • validiereKontoverbindung(): führt eine Valdieriung von Kontonummer und Bankleitzahl durch

Das nun folgende Beispiel dient der Veranschaulichung dieser Einbindung.

 

Codeblock
languagejava
title1. Sourcecode-Beispiel zur Valdierung
(...)
  

...

org.nuclet.ckonto.CkontoCheck check = null;

...

org.nuclet.ckonto.CkontoConstants.Status status = null;
            

...

try {          
    

...

// Übergabe einer Kontonummer und einer Bankleitzahl an die cKonto-Validierung...   
    

...

check = org.nuclet.ckonto.CkontoUtils.validiereKontoverbindung(strKontonummer, strBankleitzahl);
            

...

} catch (javax.xml.bind.JAXBException jaxbe) {
    

...

// eigene Fehlerbehandlung einsetzen
    

...

// (...)

...

} catch (java.net.MalformedURLException me) {

...

    // eigene Fehlerbehandlung einsetzen

...

    // (...)

...

}
            

...

status = org.nuclet.ckonto.CkontoConstants.Status.valueOf("STATUS_" + Check.getStatus().toString()); 
             

...

if (!org.nuclet.ckonto.CkontoConstants.Status.STATUS_1.equals(status)) {
    // eigener Code, zur Verarbeitung der Status-Informationen
    // (...)

...

}

...

(...)

 


Die Enumeration-Klasse CkontoConstants umfasst alle möglichen Rückgabewerte der cKonto-Schnittstelle, so dass eine einfache Einordnung über den Enumeration-Vergleich möglich ist.

...


Codeblock
languagejava
titleorg.nuclet.ckonto.CkontoConstants
public class CkontoConstants
{
    public enum Status 
    {
     STATUS_0(0, "Die Kontonummer ist ungültig, sie kann von diesem Institut nicht vergeben werden."),
     STATUS_1(1, "Die Kontonummer ist gültig, sie kann von diesem Institut vergeben werden."),
        STATUS_2(2, "Fehler bei der Eingabe der Bankleitzahl. Sie ist entweder nicht 8-stellig oder enthält Buchstaben."),
        STATUS_3(3, "Fehler bei der Eingabe der Kontonummer. Sie ist entweder zu lang oder enthält Buchstaben."),
        STATUS_4(4, "Eingabefehler bei der Kontonummer und Bankleitzahl (siehe 2 und 3) oder der IBAN."),
        STATUS_5(5, "Genereller Eingabefehler des Übergabeparameters - enthält evtl. Leerzeichen."),
        STATUS_6(6, "Fehler im Format des Übergabeparameters."),
        STATUS_7(7, "Die Bankleitzahl wurde in der Datenbank nicht gefunden (existiert nicht)."),
        STATUS_8(8, "Die von der Bank verwendete Prüfmethode ist im Demonstrations-Modus nicht verfügbar."),
        STATUS_9(9, "Die Kontonummer kann nicht geprüft werden, da die Bank entweder keine Prüfziffern verwendet oder es sich um eine spezielle Kontonummer handelt.");
 (...)
}

...


Soll zusätzlich die Möglichkeit genutzt werden, die Validierung (temporär) zu deaktivieren, dann empfielt es sich, den Validierungsaufruf mit einem Aufruf der Methode istKontovalidierungAktiviert() zu kombinieren.

...


Codeblock
title2. Sourcecode-Beispiel zur Validierung
 

...

(...)

...

if (org.nuclet.ckonto.CkontoUtils.istKontovalidierungAktiviert()) {

...

    

...

// Führe Valdierung durch, wie im Beispiel zum Validierungaufruf beschrieben
    

...

// (...) 

...

}

...

(...)

 


Die Validierung lässt sich auf diese Weise einfach über

...

den Nuclet-Parameter cKonto Check  an- und ausschalten.

...

Version


Version
Datum
Typ
Änderungen
1.0.013.03.2013initiale Version-
1.1.013.12.2013Umstellung auf Nuclos 4.0
  • Umstellung auf Nuclos 4.0
  • Einführung von Nuclet-Parametern
1.2.024.03.2017Umstellung auf Nuclos 4.13Umstellung auf Nuclos 4.13
1.3.021.08.2017Umstellung auf Nuclos 4.18Umstellung auf Nuclos 4.18
1.4.013.09.2017Umstellung auf Nuclos 4.19Umstellung auf Nuclos 4.19