Fehler Erstellen JEditorPane (jdk130, AIX 4.3.3)

hat jemand von Euch schon einmal mit Swing-Komponenten unter AIX gearbeitet? Oder unter einem anderen Unix-System? Vielleicht kann mir dann jemand bei folgendem Fehler helfen:

2001-12-07 11:28:00,450 [main] DEBUG Vertiffer - vertiffe(...): Erzeuge JEditorPane.
Problem creating javax.swing.plaf.metal.MetalLookAndFeel with method getUserTextFont and args { : java.lang.reflect.InvocationTargetException
java.lang.Exception: Stack trace
 at java.lang.Exception.(Exception.java:44)
 at java.lang.Thread.dumpStack(Thread.java:1007)
 at javax.swing.UIDefaults$ProxyLazyValue.createValue(UIDefaults.java:670)
 at javax.swing.UIDefaults.get(UIDefaults.java(Compiled Code))
 at javax.swing.MultiUIDefaults.get(MultiUIDefaults.java(Compiled Code))
 at javax.swing.UIDefaults.getFont(UIDefaults.java:223)
 at javax.swing.UIManager.getFont(UIManager.java:494)
 at javax.swing.plaf.basic.BasicTextUI.installDefaults(BasicTextUI.java:222)
 at javax.swing.plaf.basic.BasicTextUI.installUI(BasicTextUI.java:642)
 at javax.swing.JComponent.setUI(JComponent.java:327)
 at javax.swing.text.JTextComponent.setUI(JTextComponent.java:583)
 at javax.swing.text.JTextComponent.updateUI(JTextComponent.java:593)
 at javax.swing.text.JTextComponent.(JTextComponent.java:567)
 at javax.swing.JEditorPane.(JEditorPane.java:168)
 at tui.ors.util.Vertiffer.vertiffe(Vertiffer.java:41)
 at test.ors.util.VertifferTest.testeFall1(VertifferTest.java:47)
 at test.ors.util.VertifferTest.main(VertifferTest.java:30)
Exception in thread "main" java.lang.NoClassDefFoundError: sun/awt/X11GraphicsEnvironment
 at java.lang.Class.forName1(Native Method)
 at java.lang.Class.forName(Class.java:134)
 at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:64)
 at sun.awt.motif.MToolkit.(MToolkit.java:61)
 at java.lang.Class.forName1(Native Method)
 at java.lang.Class.forName(Class.java:134)
 at java.awt.Toolkit$2.run(Toolkit.java:509)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:500)
 at java.awt.Toolkit.getEventQueue(Toolkit.java:1132)
 at java.awt.EventQueue.invokeLater(EventQueue.java:573)
 at javax.swing.SwingUtilities.invokeLater(SwingUtilities.java:1147)
 at javax.swing.text.DefaultCaret.changeCaretPosition(DefaultCaret.java:870)
 at javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:756)
 at javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:698)
 at javax.swing.text.DefaultCaret$UpdateHandler.propertyChange(DefaultCaret.java:1213)
 at javax.swing.event.SwingPropertyChangeSupport.firePropertyChange(SwingPropertyChangeSupport.java(Compiled Code))
 at javax.swing.JComponent.firePropertyChange(JComponent.java:3729)
 at javax.swing.text.JTextComponent.setDocument(JTextComponent.java:660)
 at javax.swing.plaf.basic.BasicTextUI.installUI(BasicTextUI.java:657)
 at javax.swing.JComponent.setUI(JComponent.java:327)
 at javax.swing.text.JTextComponent.setUI(JTextComponent.java:583)
 at javax.swing.text.JTextComponent.updateUI(JTextComponent.java:593)
 at javax.swing.text.JTextComponent.(JTextComponent.java:567)
 at javax.swing.JEditorPane.(JEditorPane.java:168)
 at tui.ors.util.Vertiffer.vertiffe(Vertiffer.java:41)
 at test.ors.util.VertifferTest.testeFall1(VertifferTest.java:47)
 at test.ors.util.VertifferTest.main(VertifferTest.java:30)

Der Quellkode der Klassenmethode (komplett, damit Ihr es vielleicht mal woanders benutzen könnt):

 /\*\*
 \* Erzeugt aus einem HTML-Dokument eine Grafikdatei im TIFF-Format.
 \*
 \* Die TIFF-Datei wird mit dem PackBits-Algorithmus komprimiert.
 \*
 \* @param htmlText HTML-Dokument als eine Zeichenkette
 \* @return ver-TIFF-te Datei als byte-Array.
 \*/
 public byte[] vertiffe(String htmlText) {
 cat.info("-\> vertiffe(\"" + htmlText + "\"): Start");

 byte[] ergebnis = null;

 cat.debug("vertiffe(...): Erzeuge JEditorPane.");
 JEditorPane pane = new JEditorPane();
 HTMLEditorKit kit = new HTMLEditorKit();
 pane.setEditorKit(kit);
 AbstractDocument document = (AbstractDocument) kit.createDefaultDocument();
 document.setAsynchronousLoadPriority(-1);
 pane.setDocument(document);
 pane.setSize(595, 842);

 cat.debug("vertiffe(...): Lade HTML-Text.");
 try {
 pane.read(new StringReader(htmlText), document);
 } catch (IOException ioe) {
 ioe.printStackTrace();
 }
 pane.setSize(new Dimension(595, maximum(new Double(pane.getPreferredSize().getHeight()).intValue(), 842)));

 cat.debug("vertiffe(...): Drucke Grafik in Image.");
 BufferedImage bi = new BufferedImage(pane.getWidth(), pane.getHeight(), BufferedImage.TYPE\_BYTE\_INDEXED);
 Graphics2D g2 = bi.createGraphics();
 pane.print(g2);

 cat.debug("vertiffe(...): Kodiere Image als TIFF.");
 try {
 ByteArrayOutputStream os = new ByteArrayOutputStream();
 TIFFEncodeParam encodeParam = new TIFFEncodeParam();
 //encodeParam.setCompression(TIFFEncodeParam.COMPRESSION\_DEFLATE); // ContentManager-Client kennt diese Kompression nicht
 //encodeParam.setDeflateLevel(9);
 encodeParam.setCompression(TIFFEncodeParam.COMPRESSION\_PACKBITS);
 ImageEncoder encoder = ImageCodec.createImageEncoder("TIFF", os, encodeParam);
 encoder.encode(bi);
 ergebnis = os.toByteArray();
 os.close();

 } catch (IOException ioe) {
 cat.error("vertiffe(...): Ausnahme beim Ver-TIFF-en: ", ioe);
 }

 cat.info("

Vielen Dank im Voraus
"Thomas Bahn" 

Hallo Thomas Bahn,

hat jemand von Euch schon einmal mit Swing-Komponenten unter
AIX gearbeitet? Oder unter einem anderen Unix-System?
Vielleicht kann mir dann jemand bei folgendem Fehler helfen:

Vielleicht liegt es daran, dass Dein UNIX-Prozess keine Verbindung zum X-Server aufbauen kann. Bei JDK 1.3 ist es so, dass man bei allen Grafikoperationen ein laufendes X im Hintergrund braucht (man macht in der Regel ein JFrame oder ähnliches auf und spätestens dann braucht man ein Grafik-System im Hintergrund).
Bei meinen Linux-System zu Hause klappt ein ähnliches Programm nur mit laufenden X-Server.
Soweit ich weiß, soll sich das ab JDK 1.4 ändern, aber da bin ich mir nicht so sicher. Evtl. mal in der Bugparade http://developer.java.sun.com/servlet/SessionServlet… nachschauen.

Vielen Dank im Voraus
„Thomas Bahn“

Gruss,
Frank