getPinTanVersionForBLZ

 
dominik42
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 25
Dabei seit: 03 / 2009
Betreff:

getPinTanVersionForBLZ

 · 
Gepostet: 17.09.2009 - 02:26 Uhr  ·  #1
Hi,

ich habe hier ein kleines Testprogramm, analog dem Vorgehen in InitAndTest. Habe allerdings eine eigene, von HBCIPassportPinTan abgeleitete Klasse als Passport deklariert, da ich ohne filezugriff auskommen möchte. Damit klappt der Zugriff auf ein Volksbank-Konto (SaldoReq) auch ganz prima. Will ich nun jedoch gegen ein Sparkassenkonto gehen, erhalte ich Fehler. Ich vermute, es liegt an den Versionsinfos des Verfahrens, die anders sind. Ich kann Sie zwar ermitteln, weiss aber nicht, wie und wo ich die pintanVersion setzten muss.

Code
String hbciVersion = HBCIUtils.getHBCIVersionForBLZ(account.getBankCode());
String pintanVersion = HBCIUtils.getPinTanVersionForBLZ(account.getBankCode());
hbciHandle=new HBCIHandler(hbciVersion,passport);


Hier noch der Auszug aus der blt.props:
Volksbank: 300|300
Sparkasse: 220|plus

Gruß:Dom
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 10838
Dabei seit: 03 / 2005
Betreff:

Re: getPinTanVersionForBLZ

 · 
Gepostet: 17.09.2009 - 10:40 Uhr  ·  #2
Was fuer ein Fehler kommt denn genau?
dominik42
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 25
Dabei seit: 03 / 2009
Betreff:

Re: getPinTanVersionForBLZ

 · 
Gepostet: 17.09.2009 - 14:29 Uhr  ·  #3
Nachdem ich nach den ersten Versuchen nicht weiterkam, habe ich
a) Hibiscus und b) Quicken probiert.

Zu a) nach einigem probieren incl. dem Löschen und Wiederanlegen des SicherheitsMediums PinTan hat der Abruf geklappt.

Zu b) nach dem dritten Anlauf (ohne signifikante Änderungen an irgendwelchen Einstellungen, war aber auch gg. 01:30 Nachts und die FI-maintenance lief mgl. gerade) klappt der Kontoabruf.

Heute nochmal mit Hibiscus probiert:
Wenn ich HBCI-version auf "aus Sicherheitsmedium lesen" oder "HBCI+ " stelle klappts. Bei Auswahl von "HBCI 2.2" kommt gleiche Fehlermeldung wie in meinem Programm:

Zitat
[17.09.2009 14:25:18] extracting data from received message
[17.09.2009 14:25:18] HBCI error code: 9050:Nachricht teilweise fehlerhaft. org.kapott.hbci.status.HBCIStatus.addRetVal(HBCIStatus.java:72)
[17.09.2009 14:25:18] HBCI error code: 9010:Verarbeitung nicht möglich (3: DialogInitAnon.ProcPrep) org.kapott.hbci.status.HBCIStatus.addRetVal(HBCIStatus.java:72)


Ich vermute daher, ich sollte programmatisch die PinTan-version setzen, weiss aber nicht wie ?!

Gruß aus Markkleeberg !
kleiner77
Benutzer
Avatar
Geschlecht:
Beiträge: 779
Dabei seit: 08 / 2004
Betreff:

Re: getPinTanVersionForBLZ

 · 
Gepostet: 17.09.2009 - 15:38 Uhr  ·  #4
Wenn diese Fehlermeldung beim Abholen der BPD auftritt, ist das OK - bei den Sparkassen kommt diese Fehlermeldung beim anonymen Dialog IMMER. HBCI4Java sollte das aber erkennen und ignorieren (ein paar Zeilen später im Log "instute does not support anonymous dialogs - continuing" [nur sinngemäß]).

-stefan-
dominik42
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 25
Dabei seit: 03 / 2009
Betreff:

Re: getPinTanVersionForBLZ

 · 
Gepostet: 17.09.2009 - 16:25 Uhr  ·  #5
Gut, da ich diese Meldung ignorieren kann, habe ich weitergemacht. Beim nochmaligen lesen im -sehr guten- javadoc fiel mir auf, das ein gültiger Wert für die HBCIversion auch 'plus' ist. Das ist der Wert, der in der blz.props in der letzten Zeile steht und mit o.g. Funkion zurück geliefert wird. Also habe ich die Erzeugung des handlers angepasst:

Code
String pintanVersion = HBCIUtils.getPinTanVersionForBLZ(account.getBankCode());
hbciHandle=new HBCIHandler(pintanVersion,passport);


Und siehe da, nun fkt. auch mit der Sparkasse. :D

Sollte ich generell (ich will nur PinTan Konten verschiedener Banken abfragen) diesen Wert für die Erzeugung des hbciHandle nutzen ?

Gruß:Dominik
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 10838
Dabei seit: 03 / 2005
Betreff:

Re: getPinTanVersionForBLZ

 · 
Gepostet: 17.09.2009 - 17:34 Uhr  ·  #6
"plus" ist "HBCI+" aka "HBCI 2.2 incl. PIN/TAN-Support". Also wenn du PIN/TAN nutzt: Ja, dann solltest du "plus" statt "220" als HBCI-Version verwenden ;)
kleiner77
Benutzer
Avatar
Geschlecht:
Beiträge: 779
Dabei seit: 08 / 2004
Betreff:

Re: getPinTanVersionForBLZ

 · 
Gepostet: 17.09.2009 - 18:48 Uhr  ·  #7
Zitat
Sollte ich generell (ich will nur PinTan Konten verschiedener Banken abfragen) diesen Wert für die Erzeugung des hbciHandle nutzen ?

Nicht "generell". Bei den Banken, die schon FinTS-3 unterstützen, kannst Du "300" verwenden. Bei allen anderen (inkl. Sparkassen) ist "plus" die richtige Wahl.

-stefan-
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 10838
Dabei seit: 03 / 2005
Betreff:

Re: getPinTanVersionForBLZ

 · 
Gepostet: 17.09.2009 - 23:21 Uhr  ·  #8
Ja, stimmt - haette ich mit dazu sagen sollen. Ich wollte nur auf diesen typischen Fehler hinweisen.
dominik42
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 25
Dabei seit: 03 / 2009
Betreff:

Re: getPinTanVersionForBLZ

 · 
Gepostet: 18.09.2009 - 08:26 Uhr  ·  #9
Alles klar, ich habe auch soeben im javadoc von getPinTanVersionForBLZ gelesen:

Zitat
Gibt zu einer gegebenen Bankleitzahl zurück, welche HBCI-Version für HBCI-PIN/TAN zu verwenden ist


Also ist dieser Wert genau der richtige für mich !

Ich Danke Euch !
Gewählte Zitate für Mehrfachzitierung:   0