# Ersatz für Textarea



## ModellbahnerTT (10. Jul 2007)

Hi @all,

Da die JTextarea unter Java anscheinend nur eine maximale Anzahl an Zeichen aufnehmen kann suche ich jetzt eine Alternative. Welche Alternativen gibt es? Welche hat keine Beschränkung in der Anzahl der Zeichen? Wie kann man die Beschränkung bei der JTextarea aufheben?

ModellbahnerTT

PS: Selbst bei diesem Text bringt die JTextarea schon eine Null Pointer Exception.

```
import java.util.*;
import java.io.*;

void main (void)
{
System.out.println("Was soll das mit der Textarea und den NullPointer Exceptions");
}
```


----------



## Beni (10. Jul 2007)

Ich hab mal Darwins Biographie in einem JTextPane angezeigt... was für Monster-Texte willst du zeigen?

Deine Fehlerbeschreibung hört sich eher nach einem anderen Problem an (Variable nicht richtig zugewiesen, "new" vergessen?), zeig doch mal dein Testprogramm.


----------



## merlin2 (10. Jul 2007)

Gar nicht wahr:

```
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Datei11 extends JFrame {
  // Anfang Variablen
  JTextArea jta = new JTextArea ("", 1, 1);
  // Ende Variablen

  public Datei11 (String Title) {
    // Frame-Initialisierung
    super (Title);
    addWindowListener(new WindowAdapter() {
      public void windowClosing (WindowEvent evt) {System.exit(0);}});
    setSize(300, 300);
    getContentPane().setLayout(new BorderLayout());

    // Anfang Komponenten
jta.setText("   Text Text import java.util.*;import java.io.*;void main (void){System.out.println(\"Was soll das mit der Textarea und den NullPointer Exceptions\");} Code ");

    getContentPane().add(jta);
    // Ende Komponenten

  }

  // Anfang Ereignisprozeduren
  // Ende Ereignisprozeduren

  public static void main (String args[]) {
    new Datei11("Datei11").show();
  }
}
```
Läuft.
Edit: Beni war schneller, seine Diagnose ist vermutlich korrekt.


----------



## ModellbahnerTT (10. Jul 2007)

Hier mal mein Testprogramm:
	
	
	
	





```
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.AdjustmentEvent;
import java.awt.event.AdjustmentListener;
import javax.swing.JFrame;
import javax.swing.JScrollBar;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;


public class Oberflaeche
{
	int position;
	public Oberflaeche()
	{
		JFrame jf = new JFrame();
		JTextArea jta = new JTextArea(20,30);
		JScrollPane scroll = new JScrollPane(jta);
		int x,y;
		Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
		y = dim.height;
		x = dim.width;
		jta.setSize(x, y);
		jf.setTitle("Codeeditor");
		jf.getContentPane().add(scroll);
		jf.setSize(x, y);
		jf.setVisible(true);
	}


	class ScrollHandler implements AdjustmentListener
	{

		public void adjustmentValueChanged(AdjustmentEvent e)
		{
		}

	}

}
```
Ich will keine Monstertexte anzeigen lassen sondern aktiv Texte eingeben. Diese können dann schonmal 2000 Zeilen mit 40 Zeichen umfassen.


----------



## kleiner_held (10. Jul 2007)

Und wo kommt in deinem Beispiel jetzt die NullPointerException  ???:L


----------



## ModellbahnerTT (10. Jul 2007)

Die Null Pointer Exception kommt wenn ich diesen Text eingebe oder andere Zeichen bis zu dieser Anzahl.


> import java.util.*;
> import java.io.*;
> 
> void main (void)
> ...


----------



## merlin2 (10. Jul 2007)

Bei mir kommt sie sofort.


----------



## ModellbahnerTT (10. Jul 2007)

Sorry das ich die JTextarea im Verdacht hatte da mit der JTextPane genau das gleiche Phänomen auftritt muss der Fehler wo anders liegen, aber wo da bin iich mit meinem Latein am Ende.

ModellbahnerTT


----------



## madboy (10. Jul 2007)

Bei mir kommt keine..

Java 1.5.0.11
gestartet mit Eclipse 3.2.2 
unter Linux (Kubuntu 7.04)

Es wäre vielleicht gut, wenn ihr die Exception posten würdet...

Edit: ich habe mal den kompletten Thread hier in die JTextArea rein kopiert. Immer noch keine exception...


----------



## ModellbahnerTT (10. Jul 2007)

So sieht die Eception aus:
	
	
	
	





```
Exception during event dispatch:
java.lang.NullPointerException
   at javax.swing.text.Utilities.getPositionBelow(libgcj.so.70)
   at javax.swing.text.DefaultHighlighter$DefaultHighlightPainter.paint(libgcj.so.70)
   at javax.swing.text.DefaultHighlighter.paint(libgcj.so.70)
   at javax.swing.plaf.basic.BasicTextUI.paintSafely(libgcj.so.70)
   at javax.swing.plaf.basic.BasicTextUI.paint(libgcj.so.70)
   at javax.swing.plaf.basic.BasicTextUI.update(libgcj.so.70)
   at javax.swing.JComponent.paintComponent(libgcj.so.70)
   at javax.swing.JComponent.paint(libgcj.so.70)
   at javax.swing.JComponent.paintDoubleBuffered(libgcj.so.70)
   at javax.swing.JComponent.paintImmediately2(libgcj.so.70)
   at javax.swing.JComponent.paintImmediately(libgcj.so.70)
   at javax.swing.RepaintManager.paintDirtyRegions(libgcj.so.70)
   at javax.swing.RepaintManager$RepaintWorker.run(libgcj.so.70)
   at java.awt.event.InvocationEvent.dispatch(libgcj.so.70)
   at java.awt.EventQueue.dispatchEvent(libgcj.so.70)
   at java.awt.EventDispatchThread.run(libgcj.so.70)
```

Als Betriebssystem läuft Ubuntu 7.04 mit Java 1.5.0.11 mit Eclipse 3.2.2


----------



## kleiner_held (10. Jul 2007)

*libgcj.so* - das klingt nicht nach Sun JDK - versuch mal das Sun JDK zu verwenden.


----------



## ModellbahnerTT (10. Jul 2007)

Ich werde das morgen mal unter Windows testen. Sollte es da ohne Probleme geht dann liegt es an der Linux Distribution und diese werde ich dann wechseln. Laut Aussage meines BS habe ich Sun JDK installiert und keine andere.


----------



## kleiner_held (10. Jul 2007)

Nana - wer wird denn gleich die Distribution wechseln wollen 

1. Probier es erst mal ohne Eclipse, einfach auf der Konsole:

```
java -version
javac Oberflaeche.java
java Oberflaeche
```

wenn das Sun SDK installiert ist, und die Ausgabe von java -version eine andere JVM auflistet, reicht schon ein

```
sudo update-alternatives --config java
```


----------



## ModellbahnerTT (10. Jul 2007)

Die Ausgaben meiner Linux Distribution sind alle so wie sie sein sollten.





> Nana - wer wird denn gleich die Distribution wechseln wollen  :lol:


Nach dem ich jede Menge Ärger :cry:  mit der Version 7.04 hatte und habe spiele ich schon länger mit dem Gedanken zu wechseln. Sollte das ganze unter Windows :wink:  morgen klappen dann habe ich bald Gentoo auf meinem Rechner.  

Edit: Der heutige Test mit Windows ist positiv verlaufen also liegt es an meiner Linux Distribution. :cry:


----------

