Skip to content

lithomas/hbci4java

 
 

Repository files navigation

Build Status HBCI4Java

Vorab

Dies ist ein aktuell gepflegter Fork von HBCI4Java, welcher u.a. in Hibiscus und Pecunia-Banking zum Einsatz kommt.

Kontakt

Unter https://groups.google.com/forum/?hl=de#!forum/hbci4java findet ihr die zugehörige Mailingliste.

Entstehung

Das SVN von hbci4java.kapott.org ist schon seit einiger Zeit nicht mehr öffentlich, weil da drin wegen HBCI4Java 3 grundlegende Änderungen stattfinden (wobei ich nicht weiss, ob Stefan wirklich noch daran arbeitet) Für die letzte veröffentlichte Version 2.5.12 haben sich im Laufe der Zeit aber viele Patches angesammelt, die auf http://hbci4java.kapott.org nicht veröffentlicht wurden.

Inzwischen enthält diese Fork hier nicht mehr nur Patches sondern auch umfangreiche Weiterentwicklungen wie etwa

  • Die Unterstützung der neuen TAN-Verfahren (smsTAN, chipTAN - incl. Implementierung des HHD-Standards mit Flicker-Code)
  • Unterstützung von PC/SC-Kartenlesern via javax.smartcardio API
  • Eine aktuelle Bankenliste (mit BLZ, Server-Adresse, HBCI-Version,...)
  • Unterstützung für alle aktuellen SEPA-PAIN-Versionen
  • Unterstützung für SEPA-Überweisungen und -Lastschriften (jeweils Einzel- und Sammelaufträge) sowie SEPA-Daueraufträge

Ausgangsbasis dieser Weiterentwicklung war HBCI4Java 2.5.12 mit einigen Patches von Stefan (konkret seine SVN-Revision r227 vom 28.05.2010 - liegt im Ordner "log"). Im Ordner "log/patches" dieses Repositories hatte ich sämtliche Änderungen in Form von diff-Dateien gepflegt, um diese auch ohne Versionsverwaltungssystem noch nachvollziehen zu können. Im Zuge der Erweiterungen am SEPA-Code wurde das jedoch zu umfangreich. Der Ordner wurde zwischenzeitlich gelöscht. Die Historie der Weiterentwicklung kann über die History des GIT-Repositories nachvollzogen werden.

Releases

Du kannst HBCI4Java entweder selbst compilieren (siehe folgender Absatz) - oder du nimmst einfach fertige Releases. Aktuelle Versionen findest du immer im GitHub-Projekt von Hibiscus:

Hinweise

  • Lass dich nicht von der Versionsnummer 2.5.12 irritieren. Es ist die aktuelle Version. Ich habe mir nur abgewöhnt, die Versionsnummer im Dateinamen zu erhöhen, weil das regelmäßig dazu führte, dass User die Datei lediglich in ihren "lib"-Ordner kopierten und dort dann ein Durcheinander aus mehreren Versionen entstand. Durch Beibehalten der Versionsnummer im Dateinamen wird die alte Version immer überschrieben.
  • Immer wenn es eine Änderung im Code von HBCI4Java gab, erzeuge ich auch neue JARs in Hibiscus
  • In der History siehst du auch, welche Änderungen jeweils eingeflossen sind.

Selbst compilieren

Du benötigst:

  • Linux (unter Windows habe ich es noch nicht getestet)
  • Java 6 oder höher
  • Apache Ant
  • GNU make und GCC zum Compilieren der JNI-Libs für die CTAPI-Kartenleser-Anbindung

Wechsle in den Ordner mit der "build.xml" und führe in einer Shell folgende Befehle aus:

$> ant clean
$> ant dist

Im Ordner "dist/jar" wird eine "hbci4java.jar" erzeugt. Im Ordner "dist/lib" findest du die JNI-Libs. Das Build-Script "build.gradle" wird eigentlich nur für Travis CI benötigt. Releases können - wie oben beschrieben - mit Ant erzeugt werden.

Unit-Tests

Im Ordner "test/hbci4java" befinden sich einige JUnit-Tests. Viele davon erfordern jedoch das Vorhandensein spezieller Testumgebungen (Zugang zu Bank-Servern) bzw. vorkonfigurierte Bankzugänge. Die Tests können daher leider nicht automatisiert im Zuge der Erstellung von Deployment-Artefakten ausgeführt werden sondern nur manuell und selektiv.

About

Fork of HBCI4Java (from http://hbci4java.kapott.org), that contains support for chipTAN, smsTAN, HHD, SEPA and other fixes/enhancements

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 94.4%
  • C++ 3.2%
  • HTML 1.7%
  • Other 0.7%