Jameica-hibiscus: Difference between revisions

From wiki
Jump to navigation Jump to search
imported>Johayek
(Created page with "* http://willuhn.de – "home of jameica & hibiscus" * hibiscus-server/cfg/de.willuhn.jameica.hbci.rmi.HBCIDBService.properties.NOTE.txt : <pre> öffne die Datei "cfg/de.will...")
 
No edit summary
 
(25 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== the main links ==
* http://willuhn.de – "home of jameica & hibiscus"
* http://willuhn.de – "home of jameica & hibiscus"
* hibiscus-server/cfg/de.willuhn.jameica.hbci.rmi.HBCIDBService.properties.NOTE.txt :
* http://www.onlinebanking-forum.de/forum/index.php?f=33 – onlinebanking-forum.de: hbci4java / Hibiscus
 
CAVEAT: for most recently updated area here search for "2024"!
 
== hbci4java ==
* https://github.com/willuhn/hbci4java – ''Download ZIP''
<pre>
$ unzip …/master.zip
$ cd hbc4java-master
# you will need a Java SDK and a g++ compiler
$ ant dist
$ ll dist
</pre>
 
I copied the entire compiled tree to my NAS web server (/volume1/web), so I can browse the javadoc etc. like this:
 
* http://diskstation000/hbci4java-master/dist/doc/javadoc/
* interesting packes:
** org.kapott.hbci.tools
*** Class AnalyzeReportOfTransactions
*** Class HBCIBatch
*** …
 
== HBCIBatch ==
* https://github.com/willuhn/hbci4java/tree/master/demo/HBCIBatch
* http://www.onlinebanking-forum.de/forum/topic.php?t=18824 – HBCIBatch HOWTO ?!?
 
== 2024: no hibiscus-server for Postbank without desktop hibiscus operating on the same database ==
"desktop hibiscus" actually means "the hibiscus plugin within desktop jameica".
 
The Postbank HBCI/FinTS framework goes into a confirmation dialogue once in a while,
and hibiscus-server cannot solve that on its own.
Only desktop hibiscus can help.
hibiscus-server and hibiscus must run on the same database for that purpose,
and this can only be on (MySQL resp.) MariaDB.
 
Only the "nightlies" use MariaDB (at least regarding hibiscus-server), and in 2024 nobody want to use MySQL any longer.
 
How to tell desktop hibiscus, which database to use?
* ~/.jameica.properties
** points to ~/Library/jameica
* ~/Library/jameica/cfg/de.willuhn.jameica.hbci.rmi.HBCIDBService.properties
** content can be copied (and adapted!!!) from hibiscus-server-2.11.0-132/cfg/de.willuhn.jameica.hbci.rmi.HBCIDBService.properties
 
desktop hibiscus actually offers your "Create Bank Connection", after re-installing the hibiscus plugin.
 
== hibiscus within the Jameica desktop application ==
* https://www.willuhn.de/wiki/doku.php?id=support:update
* https://www.willuhn.de/wiki/doku.php?id=handbuch:sonstiges:install
 
== hibiscus-server ==
* http://willuhn.de/products/hibiscus-server/
* http://www.onlinebanking-forum.de/forum/topic.php?t=18822 – hibiscus-server and daylight saving time
* /usr/share/zoneinfo
* /etc/TZ
* http://forum.synology.com/enu/viewtopic.php?t=69232
* https://confluence.atlassian.com/display/JIRAKB/Setting+the+timezone+for+the+JAVA+environment : -Duser.timezone=Europe/Berlin
 
=== running hibiscus-server on a Synology DiskStation ===
 
''rcjameica'' is the perfect way to control your hibiscus-server.
The ''conditio sine qua non'' is a functional /etc/rc.status (from openSUSE).
(I simply removed the code chunk from it, that makes use of /usr/bin/mountpoint.)
 
If you got rcjameica running, execute it like this:
 
<pre>
USER@DiskStation999 $ ~/hibiscus-server-2.6.11/rcjameica {start|stop|restart|status}
</pre>
 
If you do not have a functional rcjameica, then execute jameicaserver.sh instead:
 
<pre>
USER@DiskStation999 $ ~/hibiscus-server-2.6.11/jameicaserver.sh
</pre>
 
It is also writing its output to ~/.jameica/jameica.log,
so don't mind capturing it yourself.
 
In order to disconnect the script resp. the server from the console
simply background it:
 
<pre>
^Z # suspend the utility running
USER@DiskStation999 $ bg # background it
</pre>
 
In order to take it down:
<pre>
USER@DiskStation999 $ pstree -p # find the java process just beneath hibiscus-server
USER@DiskStation999 $ kill THAT_PROCESS
</pre>
 
=== when you find your hibscus server hanging ===
 
Sometimes I find a series of this message in my ~/.jameica/jameica.log :
<pre>
synchronization already running, cancel current run
</pre>
 
If it is a series (and not just a single occurrence), the software is presumably dead-locked,
and you may want to create the Java process's thread dump as described here (the Java runtime system dumps its thread tree to stdout, if it receives SIGQUIT):
* https://docs.oracle.com/cd/E13222_01/wls/docs51/techsupport/threaddump.html
* http://www.willuhn.de/blog/index.php?/archives/107-Thread-Dump-bei-Deadlocks-ausgeben.html
 
=== story: running "Hibiscus Payment-Server" on a Synology DiskStation ===
yes, I know, I should purge this.
 
* http://Jochen.Hayek.name/wp/blog-en/2015/02/12/hibiscus-payment-server-synology-diskstation/
* http://willuhn.de/products/hibiscus-server/
* https://www.synology.com/en-global/releaseNote/JavaManager
* Synology's JavaManager assists in installing Oracle's JVM <strong>successfully</strong>
* I succeeded running the hibiscus server shell script to start the hibiscus server
* I have operated the hibiscus server successfully for months now on openSUSE VMs
* my previous self-installed Oracle JVM were <strong>unsuccessful</strong> attempts
* just as I operated the openSUSE based hibiscus servers, the Synology BusyBox+IPKG based hibiscus server seems to run <strong>stably</strong> and <strong>successfully</strong> for now
* i.e. "all" my bank accounts, that I can communicate with through HBCI/FinTS, are now getting synchronised to databases on my local NAS twice an hour (or as often as I want); this synchronisation happens <strong>independently</strong> of any desktop or notebook PC being online
* another piece of software (developed by myself) dumps these databases to CSV-like bank statement text files, and informs me of changes to them through XMPP AKA Jabber communication
* corruption of the hibiscus-server databases does not hurt me at all – it is only a means to communicate with the banks – it's just that the bank-enforced HBCI/FinTS communication isn't stateless and stores records on databases   – everything I need in the end are the CSV-like text files – setting up the bank account details on hibiscus-server is a piece of cake
 
== which database to use ==


<pre>
<pre>
Line 9: Line 130:
Der Server wird beim ersten Start automatisch eine verschlüsselte Embedded-Datenbank (H2) erstellen.  
Der Server wird beim ersten Start automatisch eine verschlüsselte Embedded-Datenbank (H2) erstellen.  
</pre>
</pre>
CAVEAT:
* https://wp.jochen.hayek.name/blog-de/2019/09/12/jameica-plus-hibiscus-server/
* https://homebanking-hilfe.de/forum/topic.php?p=149256#real149256
=== hibiscus with MySQL resp MariaDB ===
* http://willuhn.de/wiki/doku.php?id=support:mysql
=== hibiscus with H2 ===
* http://willuhn.de/products/hibiscus-server/install.php what to remove in case you want to use H2 instead of MySQL
* hibiscus-server-*/cfg/de.willuhn.jameica.hbci.rmi.HBCIDBService.properties.NOTE.txt :
[[Category:ToBeExported]]

Latest revision as of 18:51, 9 February 2024

the main links[edit]

CAVEAT: for most recently updated area here search for "2024"!

hbci4java[edit]

$ unzip …/master.zip
$ cd hbc4java-master
# you will need a Java SDK and a g++ compiler
$ ant dist
$ ll dist

I copied the entire compiled tree to my NAS web server (/volume1/web), so I can browse the javadoc etc. like this:

HBCIBatch[edit]

2024: no hibiscus-server for Postbank without desktop hibiscus operating on the same database[edit]

"desktop hibiscus" actually means "the hibiscus plugin within desktop jameica".

The Postbank HBCI/FinTS framework goes into a confirmation dialogue once in a while, and hibiscus-server cannot solve that on its own. Only desktop hibiscus can help. hibiscus-server and hibiscus must run on the same database for that purpose, and this can only be on (MySQL resp.) MariaDB.

Only the "nightlies" use MariaDB (at least regarding hibiscus-server), and in 2024 nobody want to use MySQL any longer.

How to tell desktop hibiscus, which database to use?

  • ~/.jameica.properties
    • points to ~/Library/jameica
  • ~/Library/jameica/cfg/de.willuhn.jameica.hbci.rmi.HBCIDBService.properties
    • content can be copied (and adapted!!!) from hibiscus-server-2.11.0-132/cfg/de.willuhn.jameica.hbci.rmi.HBCIDBService.properties

desktop hibiscus actually offers your "Create Bank Connection", after re-installing the hibiscus plugin.

hibiscus within the Jameica desktop application[edit]

hibiscus-server[edit]

running hibiscus-server on a Synology DiskStation[edit]

rcjameica is the perfect way to control your hibiscus-server. The conditio sine qua non is a functional /etc/rc.status (from openSUSE). (I simply removed the code chunk from it, that makes use of /usr/bin/mountpoint.)

If you got rcjameica running, execute it like this:

USER@DiskStation999 $ ~/hibiscus-server-2.6.11/rcjameica {start|stop|restart|status}

If you do not have a functional rcjameica, then execute jameicaserver.sh instead:

USER@DiskStation999 $ ~/hibiscus-server-2.6.11/jameicaserver.sh

It is also writing its output to ~/.jameica/jameica.log, so don't mind capturing it yourself.

In order to disconnect the script resp. the server from the console simply background it:

^Z # suspend the utility running
USER@DiskStation999 $ bg # background it

In order to take it down:

USER@DiskStation999 $ pstree -p # find the java process just beneath hibiscus-server
USER@DiskStation999 $ kill THAT_PROCESS

when you find your hibscus server hanging[edit]

Sometimes I find a series of this message in my ~/.jameica/jameica.log :

synchronization already running, cancel current run

If it is a series (and not just a single occurrence), the software is presumably dead-locked, and you may want to create the Java process's thread dump as described here (the Java runtime system dumps its thread tree to stdout, if it receives SIGQUIT):

story: running "Hibiscus Payment-Server" on a Synology DiskStation[edit]

yes, I know, I should purge this.

  • http://Jochen.Hayek.name/wp/blog-en/2015/02/12/hibiscus-payment-server-synology-diskstation/
  • http://willuhn.de/products/hibiscus-server/
  • https://www.synology.com/en-global/releaseNote/JavaManager
  • Synology's JavaManager assists in installing Oracle's JVM successfully
  • I succeeded running the hibiscus server shell script to start the hibiscus server
  • I have operated the hibiscus server successfully for months now on openSUSE VMs
  • my previous self-installed Oracle JVM were unsuccessful attempts
  • just as I operated the openSUSE based hibiscus servers, the Synology BusyBox+IPKG based hibiscus server seems to run stably and successfully for now
  • i.e. "all" my bank accounts, that I can communicate with through HBCI/FinTS, are now getting synchronised to databases on my local NAS twice an hour (or as often as I want); this synchronisation happens independently of any desktop or notebook PC being online
  • another piece of software (developed by myself) dumps these databases to CSV-like bank statement text files, and informs me of changes to them through XMPP AKA Jabber communication
  • corruption of the hibiscus-server databases does not hurt me at all – it is only a means to communicate with the banks – it's just that the bank-enforced HBCI/FinTS communication isn't stateless and stores records on databases   – everything I need in the end are the CSV-like text files – setting up the bank account details on hibiscus-server is a piece of cake

which database to use[edit]

öffne die Datei "cfg/de.willuhn.jameica.hbci.rmi.HBCIDBService.properties" in einem Texteditor und passe die Zugangsdaten zur Datenbank an:
-> /usr/local/hibiscus-server/cfg/de.willuhn.jameica.hbci.rmi.HBCIDBService.properties
...
Wenn Du keine externe Datenbank nutzen möchtest, dann lösche einfach diese Konfigurationsdatei. 
Der Server wird beim ersten Start automatisch eine verschlüsselte Embedded-Datenbank (H2) erstellen. 

CAVEAT:

hibiscus with MySQL resp MariaDB[edit]

hibiscus with H2[edit]