ColdFusion und die vermaledeite Java Null Pointer Exception (NPE)
Den Blog, den ich da benutze, ist der BlogCFC von Ray Camden. Basierend auf Adobes ziemlich genialen ColdFusion Applikationsserver erzeugt der Blog mir seit langer Zeit eine Java Null Pointer Exception. Ich schrieb kurz darüber, weil der mich hindert, meine Schreiblust auszuleben.
Gestern habe ich wieder mal eine ganze Nacht um die Ohren geschlagen, um rauszufinden, wieso das bei mir passiert. Und nun schreibe ich davon, damit eventuelle Zufallsleser - oder auch andere natürlich - mir eventuell den erlösenden Tipp geben können.
Also, der BlogCFC ist Opensource, er unterstützt MySQL, MSSQL, Orcale und MA Access. Da wir als Datenbank nur ein System nutzen wollen, ist generell eine Sybase SQL Anywhere Version 11.1 am Werken. Eine frühere Version untermauerte schon lange den Blog, den ich ja seit anfangs 2007 betreibe.
Der Java Null Pointer Exception taucht ausschliesslich im BlogCFC auf, in keiner anderen CF-Applikation, die ich auf dem Server hoste.
Das aktuelle Setup ist hier also wie folgt:
- JRUN4 based ColdFusion 9 mit HotFix 1
- SQL Anywhere 11.1 Build 2355
- jConn4 Java Connector für die Datenbankanbindung in CF9
Damit es grad klar ist, ich benutze den BlogCFC mit dem Datenbanktyp MSSQL, zu dem SQL Anywhere sourcelevel-kompatibel ist. Und wie gesagt, die Datenbank dieses Blogs lief auf der Version SQL Anywhere 9.0.2 problemlos, mit eben diesem MSSQL Datenbanktyp eingestellt.
Das Problem ist unabhängig von der jConn und ColdFusion Version. Es tauchte bereits mit CF8 und wie gesagt SQL Anywhere 9.0.2 auf, welches noch mit jConn3 angebunden war.
Hier passiert es, dass eine Datenbankquery, die einen neuen Eintrag erzeugt, eine Null Pointer Exception erzeugt. Das SQL Statement wird aber noch ausgeführt, denn sonst könntet Ihr gar keine Artikel mehr lesen. Doch die Query erzeugt die Exception, das erste Statement nach der Query wird schon nicht mehr ausgeführt.
Da man bei der Query ja das vom Blog dynamisch erzeugte SQL-Statement mit all seinen Parametern und Varianten abfragen kann, habe ich das natürlich gemacht, aber nicht mal dies wurde fertig, die Query selbst erzeugte die NPE, obwohl das SQL-Statement korrekt ausgeführt wurde.
Ray Camden, mit dem ich über Wochen über das Problem konferierte, ist absolut ratlos – so wie ich.
Wer mir hier also einen Tipp geben könnte, der endlich dieses Problem behebt, hat zumindest eine "Honorable Mention" verdient.
Ich danke sehr im voraus.
Für diesen Eintrag existieren keine Kommentare.
[Kommentar hinzufügen] [Kommentare verfolgen]