Seite 1 von 2

Helden unter Linux bricht ab

Verfasst: 3. Okt 2007, 18:16
von Olli
Hallo,

ich benutze Helden unter Ubuntu Linux und bekomme seit dem neuen Upodate nur noch folgende Fehlermeldung:

Könnt ihr mit weiterhelfen?

Liebe Grüße,

Olli

java -jar helden.jar
Exception in thread "main" java.lang.UnsupportedClassVersionError: helden/Helden (Unsupported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)

Re: Helden unter Linux bricht ab

Verfasst: 3. Okt 2007, 21:59
von Gurthag, Sohn des Groin
Hi,

wie startest Du das jar-File ? Als root ? In der Konsole oder per Script ?

Greetz,
Gurthag

Re: Helden unter Linux bricht ab

Verfasst: 3. Okt 2007, 22:18
von little.yoda
Welche Java-Version hast du? (java -version)
Ich vermute, dass du nicht eine 1.5 Version von Java hast.

Re: Helden unter Linux bricht ab

Verfasst: 8. Nov 2007, 14:53
von Westend
Bei mir unter Ubuntu gutsy dasselbe. Anstatt des Druckdialogs erscheint folgende Fehlermeldung:

Code: Alles auswählen

Helden-Version: 4.7.5
Java-Version:   1.5.0_13
Betriebssystem: Linux
null attribute
sun.print.IPPPrintService.isAttributeValueSupported(IPPPrintService.java:1100)
sun.print.ServiceDialog$OrientationPanel.updateInfo(ServiceDialog.java:2092)
sun.print.ServiceDialog$PageSetupPanel.updateInfo(ServiceDialog.java:1234)
sun.print.ServiceDialog.updatePanels(ServiceDialog.java:428)
sun.print.ServiceDialog.initPrintDialog(ServiceDialog.java:193)
sun.print.ServiceDialog.<init>(ServiceDialog.java:141)
javax.print.ServiceUI.printDialog(ServiceUI.java:180)
sun.print.RasterPrinterJob.printDialog(RasterPrinterJob.java:852)
sun.print.PSPrinterJob.printDialog(PSPrinterJob.java:418)
helden.gui.actions.HeldDruckenAction.printHeld(HeldDruckenAction.java:175)
helden.gui.actions.HeldDruckenAction.actionPerformed(HeldDruckenAction.java:103)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
javax.swing.AbstractButton.doClick(AbstractButton.java:302)
javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1051)
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1092)
java.awt.Component.processMouseEvent(Component.java:5517)
javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
java.awt.Component.processEvent(Component.java:5282)
java.awt.Container.processEvent(Container.java:1966)
java.awt.Component.dispatchEventImpl(Component.java:3984)
java.awt.Container.dispatchEventImpl(Container.java:2024)
java.awt.Component.dispatchEvent(Component.java:3819)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
java.awt.Container.dispatchEventImpl(Container.java:2010)
java.awt.Window.dispatchEventImpl(Window.java:1791)
java.awt.Component.dispatchEvent(Component.java:3819)
java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Reproduzierbar in 100% der Fällt: Programm starten (java -jar helden.jar) und dann auf Datei, Drucken.

Übrigens auch unter Einstellungen, Drucken, Seite / Hintergrund wählen, wenn das Hintergrund-Verzeichnis auf ein nicht mehr existentes Verzeichnis verweist. Korrigiert man diesen Umstand, wird dieser Dialog wieder angezeigt, man kann einen Hintergrund auswählen, der dann auch in der Druckvorschau korekt angezeigt wird. Aber Datei, Drucken führt nach wie vor zum selben Fehler.

Starten lässt sich das Programm wie immer, ich habe gestern noch meinen Helden gesteigert, konnte ihn dann aber, wie gesagt, nicht drucken. Ich habe keine besonderen Umgebungsvariablen gesetzt, habe die Heldensoftware sogar ohne Erfolg unter einem frisch eingerichteten Useraccount.

Das ging die ganze Zeit noch alles ohne Probleme.

Ich bin für jeden hilfreichen Vorschlag dankbar.

Re: Helden unter Linux bricht ab

Verfasst: 8. Nov 2007, 15:11
von little.yoda
Hallo Westend.

Dein Fehler hat mit dem obenbeschrieben nichts zu tun.

Leider können wir nichts bzgl. diesem Fehler machen. Es scheint ein Fehler
im Zusammenspiel zwischen Cups (Dienst, der unter Linux zum drucken genutzt wird) und Java zu sein. Es betrifft wohl einen Großteil der Java-Anwendungen, die bestimmte Methoden zum Drucken nutzen.

Als Workaround kann ich dir nur folgendes empfehlen:
Installiere mein Heldnbogen-Plugin (http://wiki.helden-software.de/Erweiter ... eldenbogen). Damit kannst du den Heldenbogen als PDF-Datei exportierten. Anschließend kannst du dann die Datei mit einem PDF-Viewer ausdrucken.

Westend hat geschrieben: Übrigens auch unter Einstellungen, Drucken, Seite / Hintergrund wählen, wenn das Hintergrund-Verzeichnis auf ein nicht mehr existentes Verzeichnis verweist. Korrigiert man diesen Umstand, wird dieser Dialog wieder angezeigt, man kann einen Hintergrund auswählen, der dann auch in der Druckvorschau korekt angezeigt wird. Aber Datei, Drucken führt nach wie vor zum selben Fehler.
Diesen Fehler hat IMHO Maik bereits korrigiert und sollte in der nächsten Version nicht mehr auftreten.

Re: Helden unter Linux bricht ab

Verfasst: 8. Nov 2007, 15:22
von little.yoda
Update:

Für Ubuntu gibt es mittlerweile einen Vorschlag, wie man das Problem umgehen kann:
https://bugs.launchpad.net/ubuntu/+sour ... omments/10

Re: Helden unter Linux bricht ab

Verfasst: 8. Nov 2007, 15:40
von Westend
Genial, danke! :-) :gott:

Re: Helden unter Linux bricht ab

Verfasst: 10. Jan 2008, 16:41
von little.yoda
Mittlerweile gibt es noch einen anderen Vorschlag:
https://bugs.launchpad.net/ubuntu/+sour ... omments/18

Habe aber gerade keine Zeit es zu testen.


Wer auf dem laufenden bleiben will:
https://bugs.launchpad.net/ubuntu/+sour ... bug/156191

Re: Helden unter Linux bricht ab

Verfasst: 10. Jan 2008, 17:10
von Westend
Moin,

das Workaround funktioniert. Die Seitenausrichtung aller Drucker von automatisch auf eine bestimmte Ausrichtung einstellen, anschließend die Heldensoftware (neu-) starten, und der Druckdialog kann angezeigt werden.

Danke für den Tipp!

Westend

Re: Helden unter Linux bricht ab

Verfasst: 23. Jan 2008, 12:59
von little.yoda
Es wäre schön, wenn die Leute, die sich über den Druck-Bug ärgern, bei Sun für die Korrektur des Bugs stimmen würden.

http://bugs.sun.com/bugdatabase/view_bu ... id=6633656 (kurze Anmeldung ist erforderlich)

Drucken unter Linux: Lösung f. KDE-Benutzer und Vorschlag

Verfasst: 20. Feb 2009, 11:20
von Wolfgang
Hallo!

Ich habe zu dem Problem noch folgende Lösung im Netz gefunden, die bei mir geholfen hat:

Öffne als "Tante Ruth" mit einem Editor die Datei /etc/cups/printers.conf und trage vor dem Schließen-Tag "</Printer>" folgende Zeile ein: "Option orientation-requested 3". Das Ganze sollte dann nachher so aussehen:

Code: Alles auswählen

<DefaultPrinter ...>
....
Option orientation-requested 3
</Printer>
Das ist zwar genau das, was auch die Sache mit dem Menü "System -> Printing" macht, nur konnte ich mit dieser Lösung nichts anfangen, da ich nicht Gnome sondern KDE benutze. Da gibt es zwar auch einen Menüeintrag "System, Printing", aber keine Registerkarte, unter der ich die Orientierung der Seiten einstellen kann.

Nachdem ich diese Zeile eingetragen hatte, erscheint beim Anwählen des Druckers in Helden der Druckdialog und ich kann drucken.

Jetzt kommt leider ein "aber":

Obwohl der Druckdialog u.a. die Option für den Duplex-Druck anbietet, wird diese Option nicht beachtet, egal, was man einstellt. Wer also doppelseitig drucken möchte, muß einen kleinen Umweg über eine Datei gehen: dazu im Druckdialog das Häkchen bei "In Datei umleiten" setzen und drucken. Es erscheint ein Dateiauswahldialog für den Speicherort des Ergebnises des Druckvorganges. Dieses Ergebnis ist eine Postscript-Datei, die anschließend mit einem PS-Viewer, z.B. KGhostview, geöffnet werden kann. Schickt man diese Datei jetzt in KGhostview zum Drucker, öffnet sich kprinter, der Standard-Druckdialog von KDE, in dem man alle Option offen hat, u.a. Duplex, Qualität, mehrere Seiten pro Blatt, Tinte sparen, etc.

Der Vorteil dieses Umweges ist, daß man im Gegensatz zu dem PDF-Plugin ("Helden als PDF exportieren") den Font zum Drucken wählen kann. Das funktioniert nämlich leider nicht, wenn man das Plugin benutzt.

Falls der Autor des Plugins hier mitliest: kriegst Du das noch hin, daß der zum Drucken gewählte Font auch in das PDF übernommen wird?

Der Vorschlag, den ich in der Überschrift ansprach, geht an die Autoren des Hauptprogrammes:

Könntet Ihr es evtl so einrichten, daß beim Klick auf den Drucker nicht dieser Java-Druckdialog geöffnet wird, sondern gleich kprinter, der KDE-Druckdialog? Zumindest für die Leute, die KDE benutzen, aber ich bin sicher, daß es unter Gnome einen ähnlichen Druckdialog gibt. Abfragen kann man die Umgebung z.B. mit der Variable
export
...
declare -x KDE_FULL_SESSION="true"
...
Leider weiß ich nicht, wie die entsprechende Variable unter Gnome heißt, aber wäre ja rauszukriegen.

Meint Ihr, das wäre machbar?

Re: Drucken unter Linux: Lösung f. KDE-Benutzer und Vorschlag

Verfasst: 20. Feb 2009, 22:17
von little.yoda
Wolfgang hat geschrieben: Der Vorteil dieses Umweges ist, daß man im Gegensatz zu dem PDF-Plugin ("Helden als PDF exportieren") den Font zum Drucken wählen kann. Das funktioniert nämlich leider nicht, wenn man das Plugin benutzt.

Falls der Autor des Plugins hier mitliest: kriegst Du das noch hin, daß der zum Drucken gewählte Font auch in das PDF übernommen wird?
Ist natürlich machbar. Aber ich bin mit Helden-Software im Moment so ausgelastet, dass ich keine Zeit für das Plugin habe.
Wolfgang hat geschrieben: Könntet Ihr es evtl so einrichten, daß beim Klick auf den Drucker nicht dieser Java-Druckdialog geöffnet wird, sondern gleich kprinter, der KDE-Druckdialog?
Wenn mir jemand sagt, wie man das einbauen kann, würde ich darüber nachdenken. Aber ich habe auf die schnelle nichts gefunden.....

Re: Drucken unter Linux: Lösung f. KDE-Benutzer und Vorschlag

Verfasst: 21. Feb 2009, 13:05
von Wolfgang
little.yoda hat geschrieben:Ist natürlich machbar. Aber ich bin mit Helden-Software im Moment so ausgelastet, dass ich keine Zeit für das Plugin habe.
Ja, ich kenne das Gefühl und kann Dich verstehen: so wenig Stunden am Tag, so viel zu erledigen.
Wolfgang hat geschrieben:Könntet Ihr es evtl so einrichten, daß beim Klick auf den Drucker nicht dieser Java-Druckdialog geöffnet wird, sondern gleich kprinter, der KDE-Druckdialog?
Wenn mir jemand sagt, wie man das einbauen kann, würde ich darüber nachdenken. Aber ich habe auf die schnelle nichts gefunden.....
Ich bin kein Programmierer, aber ich glaube, die wichtigste Frage dabei ist: was passiert beim Klick auf "Drucken"? Ruft Dein Programm den Druckdialog auf oder übernimmt das die darunterliegende Java-Engine? Sprich: hast Du überhaupt eine Chance, etwas anderes als diesen Druckdialog aufzurufen?

Falls ja, kannst Du stattdessen das zu Druckende einfach über Standard-Input als kprinter übergeben. Man jede(*) Datei in KDE per Kommandozeile drucken lassen mit "kprinter <dateiname>" oder "cat <dateiname> | kprinter". Gut, die zweite Möglichkeit ergäbe eine sichere Nominierung für den "Uselsess Use Of Cat Award", aber ich will damit nur die Funktionsweise verdeutliche: kprinter kann von STDIN lesen. Aber wahrscheinlich erzähle ich Dir da eh nichts neues.

(* Die Einschränkung: es muß ein Dateiformat sein, für das es einen Filter zur Bearbeitung gibt. PostScript wäre da ideal.)

Re: Drucken unter Linux: Lösung f. KDE-Benutzer und Vorschlag

Verfasst: 21. Feb 2009, 13:11
von little.yoda
Wolfgang hat geschrieben:Ich bin kein Programmierer, aber ich glaube, die wichtigste Frage dabei ist: was passiert beim Klick auf "Drucken"? Ruft Dein Programm den Druckdialog auf oder übernimmt das die darunterliegende Java-Engine? Sprich: hast Du überhaupt eine Chance, etwas anderes als diesen Druckdialog aufzurufen?
Wir nutzen den Java internen Dialog und Java greift meines Wissens nach direkt auf Cups zu. Sehe also im Moment keine Chance kprinter oder ähnliches einzubinden.

Gruß,
Sven

Re: Helden unter Linux bricht ab

Verfasst: 21. Feb 2009, 14:02
von Wolfgang
Schade, aber leider nicht zu ändern.

Kennst Du Dich mit dem Java denn zufällig genügend aus, um rauszukriegen, wieso die Druckereinstellungen bzgl. Duplex mißachtet werden? Oder weiß das jemand anders?