Fehler (NullPointerException) beim Erstellen neuer Beitragsgruppen

Hier melden JVerein-Benutzer ihre Fehler

Moderator: heiner

mathias_ocm
Beiträge: 10
Registriert: Sonntag 25. August 2024, 15:48
Verein: Orientierungslaufclaub München e.V.
Mitglieder: 90
JVerein-Version: 2.8.22
Betriebssystem: MacOS 14.6.1

Re: Fehler (NullPointerException) beim Erstellen neuer Beitragsgruppen

Beitrag von mathias_ocm »

mathias_ocm hat geschrieben: Mittwoch 20. November 2024, 16:59 Wenn ich den SMB-Share als Arbeitsverzeichnis wähle, gibt es einen weiteren Fehler und ein Start von Jameica ist nicht möglich:

Code: Alles auswählen

de.willuhn.jameica.system.JameicaException: java.io.IOException: Operation not supported
	at de.willuhn.jameica.services.LockService.init(LockService.java:116)
	at de.willuhn.boot.BootLoader.resolve(BootLoader.java:139)
	at de.willuhn.boot.BootLoader.resolve(BootLoader.java:119)
	at de.willuhn.boot.BootLoader.getBootable(BootLoader.java:70)
	at de.willuhn.jameica.system.Application.init(Application.java:103)
	at de.willuhn.jameica.system.Application.newInstance(Application.java:87)
	at de.willuhn.jameica.Main.main(Main.java:78)
Caused by: java.io.IOException: Operation not supported
	at java.base/sun.nio.ch.FileDispatcherImpl.lock0(Native Method)
	at java.base/sun.nio.ch.FileDispatcherImpl.lock(Unknown Source)
	at java.base/sun.nio.ch.FileChannelImpl.tryLock(Unknown Source)
	at java.base/java.nio.channels.FileChannel.tryLock(Unknown Source)
	at de.willuhn.jameica.services.LockService.init(LockService.java:87)
	... 6 more
Ich vermute, dass es mit der unter MacOS doch etwas penibleren Einhaltung von Zugriffsrechten zu tun hat.
Kleiner Nachtrag: Als Ziel/Quelle von (jameica) Backups kann man ein SMB-Share ohne Probleme verwenden. Nur nicht als Benutzerorder :(
Benutzeravatar
hibiscus
Beiträge: 140
Registriert: Donnerstag 31. Mai 2018, 08:55

Re: Fehler (NullPointerException) beim Erstellen neuer Beitragsgruppen

Beitrag von hibiscus »

Beim Backup ist ja auch kein File Locking nötig.
lenilsas
Beiträge: 37
Registriert: Montag 5. August 2024, 08:23

Re: Fehler (NullPointerException) beim Erstellen neuer Beitragsgruppen

Beitrag von lenilsas »

Ich versuche herauszufinden was hier der Unterschied zu den anderen Views ist.
Kannst du schauen ob der Fehler auch auftritt wenn du in den Einstellungen "Arbeitseinsätze" deaktiviert hast und "Geburtsdatum Pflichtfeld" deaktivierst?
lenilsas
Beiträge: 37
Registriert: Montag 5. August 2024, 08:23

Re: Fehler (NullPointerException) beim Erstellen neuer Beitragsgruppen

Beitrag von lenilsas »

Ich habe gerade gefunden, dass der BUG in SWT anscheinend behoben wurde (https://github.com/eclipse-platform/ecl ... issues/472), dafür müsste die neue swt Version installiert werden.
Unter https://download.eclipse.org/eclipse/do ... 411131800/ kannst du ganz unten die passende Version aussuchen und in deinen Programordner jameica/lib/swt/macos64 verschieben und die dort vorhandene Datei ersetzen (besser umbenennen).
mathias_ocm
Beiträge: 10
Registriert: Sonntag 25. August 2024, 15:48
Verein: Orientierungslaufclaub München e.V.
Mitglieder: 90
JVerein-Version: 2.8.22
Betriebssystem: MacOS 14.6.1

Re: Fehler (NullPointerException) beim Erstellen neuer Beitragsgruppen

Beitrag von mathias_ocm »

lenilsas hat geschrieben: Mittwoch 20. November 2024, 21:01 Ich versuche herauszufinden was hier der Unterschied zu den anderen Views ist.
Kannst du schauen ob der Fehler auch auftritt wenn du in den Einstellungen "Arbeitseinsätze" deaktiviert hast und "Geburtsdatum Pflichtfeld" deaktivierst?
Das scheint keinen Einfluss auf den Fehler zu haben.
mathias_ocm
Beiträge: 10
Registriert: Sonntag 25. August 2024, 15:48
Verein: Orientierungslaufclaub München e.V.
Mitglieder: 90
JVerein-Version: 2.8.22
Betriebssystem: MacOS 14.6.1

Re: Fehler (NullPointerException) beim Erstellen neuer Beitragsgruppen

Beitrag von mathias_ocm »

lenilsas hat geschrieben: Mittwoch 20. November 2024, 21:31 Ich habe gerade gefunden, dass der BUG in SWT anscheinend behoben wurde (https://github.com/eclipse-platform/ecl ... issues/472), dafür müsste die neue swt Version installiert werden.
Unter https://download.eclipse.org/eclipse/do ... 411131800/ kannst du ganz unten die passende Version aussuchen und in deinen Programordner jameica/lib/swt/macos64 verschieben und die dort vorhandene Datei ersetzen (besser umbenennen).
Danke für den Hinweis, aber ganz so einfach ist es wohl nicht. Nach dem Ersetzen der swt.jar startet jameica gar nicht mehr, nicht mal mit Fehlermeldung. Ich schätze, ich muss das ganze Projekt mit der neuen Version der swt neu kompilieren. Aber dazu müsste ich erst mal Eclipse installieren. Vielleicht versuche ich das mal am Wochenende, aber jetzt habe ich dafür keine Zeit.
Benutzeravatar
hibiscus
Beiträge: 140
Registriert: Donnerstag 31. Mai 2018, 08:55

Re: Fehler (NullPointerException) beim Erstellen neuer Beitragsgruppen

Beitrag von hibiscus »

Aktuelle SWT-Versionen erfordern mindestens Java 17.
mathias_ocm
Beiträge: 10
Registriert: Sonntag 25. August 2024, 15:48
Verein: Orientierungslaufclaub München e.V.
Mitglieder: 90
JVerein-Version: 2.8.22
Betriebssystem: MacOS 14.6.1

Re: Fehler (NullPointerException) beim Erstellen neuer Beitragsgruppen

Beitrag von mathias_ocm »

hibiscus hat geschrieben: Freitag 22. November 2024, 07:08 Aktuelle SWT-Versionen erfordern mindestens Java 17.
Da kommen wir dem Problem näher:

Das Startscript von jameica für MacOS ist mit einer internen, embedded Java-Version vorkonfiguriert:

Code: Alles auswählen

## Wir verwenden generell nur noch die embedded Java-Version unter MacOS
JAVACMD="${BASEDIR}/jre-macos64/Contents/Home/bin/java"

exec "${JAVACMD}" -Dsun.security.smartcardio.library=/System/Library/Frameworks/PCSC.framework/Versions/Current/PCSC -Xdock:name="Jameica" -Xmx512m -Xss64m -XstartOnFirstThread -jar "${BASEDIR}/jameica-macos64.jar" -o "$@"  >/dev/null
Diese scheint deutlich älter zu sein (sofern die Versionsnummer der embedded, OpenJDK Java-Version überhaupt mit der Versionsnummer der Java(TM) SE JRE vergleichbar ist), die unter MacOS standardmäßig installiert ist und automatisch aktualisiert wird:

Code: Alles auswählen

mathias@Mac-mini bin % java -version
java version "23.0.1" 2024-10-15
Java(TM) SE Runtime Environment (build 23.0.1+11-39)
Java HotSpot(TM) 64-Bit Server VM (build 23.0.1+11-39, mixed mode, sharing)
mathias@Mac-mini bin % ./java -version
openjdk version "11.0.18" 2023-01-17
OpenJDK Runtime Environment Temurin-11.0.18+10 (build 11.0.18+10)
OpenJDK 64-Bit Server VM Temurin-11.0.18+10 (build 11.0.18+10, mixed mode)
Ich werde mal experimentieren, was passiert, wenn ich nicht die embedded Version verwende bzw. ob ich die embedded Version irgendwie aktualisieren kann. Wird ja einen Grund geben, warum unter MacOS die embedded Verison genutzt wird.

Wobei sich mir da schon wieder der Gedanke aufdrängt, dass das ganze für eine Buchhaltungssoftware sehr hardwarenah programmiert zu sein scheint. Eigentlich sollten die diversen Java Runtime Environments ja kompatibel mit beliebigem Java-Code sein.
mathias_ocm
Beiträge: 10
Registriert: Sonntag 25. August 2024, 15:48
Verein: Orientierungslaufclaub München e.V.
Mitglieder: 90
JVerein-Version: 2.8.22
Betriebssystem: MacOS 14.6.1

Re: Fehler (NullPointerException) beim Erstellen neuer Beitragsgruppen

Beitrag von mathias_ocm »

mathias_ocm hat geschrieben: Donnerstag 28. November 2024, 21:07 Ich werde mal experimentieren, was passiert, wenn ich nicht die embedded Version verwende bzw. ob ich die embedded Version irgendwie aktualisieren kann. Wird ja einen Grund geben, warum unter MacOS die embedded Verison genutzt wird.
Also wenn man die nicht embedded Java version verwendet und die swt.jar wie oben beschrieben austauscht, funktioniert der Dialog zum Erstellen/Editieren von Beitragsgruppen auch unter MacOS :-)

Mir sind jetzt auch erstmal sonst keine Probleme aufgefallen: Abrufen von Umsätzen über Hibiscus, Bearbeiten von Buchungen in JVerein, inklusive Dokumentablage über DMS und Mail-Versand inkl. PDF-Anlagen scheint alles noch zu klappen. Ich lasse es jetzt erst mal so und beobachte weiter!

Falls noch jemandem hier einfällt, warum unter MacOS standardmäßig die embedded Java-Version genutzt wird, wäre ich für Hinweise dankbar ...
lenilsas
Beiträge: 37
Registriert: Montag 5. August 2024, 08:23

Re: Fehler (NullPointerException) beim Erstellen neuer Beitragsgruppen

Beitrag von lenilsas »

Danke für deine Rückmeldung und toll das es klappt.
Warum die Embedet Version verwendet wir, kann nur Olaf beantworten
Antworten