ich versuche gerade eine xls Datei mit JSP einzulesen und an eine Klasse zu übergeben.
Ich bin noch nicht ganz Firm was das Servlet/JSP Konzept angeht daher mache ich die Übergabe direkt an eine Klasse, die ich selbst unter Zuhilfenahme des POI Apache Projektes geschrieben habe um mir xls Dateien auszulesen.
Wenn ich ohne JSP die Datei einlese dann werden die Werte auch sauber ausgelesen und es fällt auch keine Exception.
Sobald ich jedoch im JSP mit request.getInputStream() die Datei einlese und an meine Klasse überge erhalte ich die Meldung Invalid header signature; read 3255307777713450285, expected -2226271756974174256 . Ich habe nach dieser Fehlermeldung bereits gegoogelt doch alles was ich gefunden habe war nur der Hinweis, dass die Datei auch nur mit Excel erstellt werden sollte, was jedoch auch passiert ist. Ich habe mal in dei Servlet API reingeschaut und so wie es aussieht gibt die Methode request.getInputStream() nur den body der Datei als bin wieder. Also das ist zumindest meine Annahme. Die Frage ist jetzt ob jemand schon Erfahrung damit gemacht und hat und mir sagen kann ob meine Vermutung richtig ist ? Falls ja, wie könnte ich das anders lösen kann ?
Ich hatte die Idee die gesamte Datei als Bytestrom einzulesen und dann ein Objekt daraus zu erstellen und anschliessend an meine Klasse zu übergeben. Wäre das eine Idee ? Hier ebenfalls , falls ja kann mir einer die entsprechende Methode für das request Objekt nennen ?
nein. Das ist wie gesagt nur ne Idee, wenn mir jemand auf die Sprünge helfen könnte wäre das schon von Vorteil.
Ich bin halt nur auf der Suche nach einer Lösung
Gibt genügend FileUpload Biblioteken, das selbst zu lösen wäre mir zu "rückständig" und umständlich, MultipartRequest ist nicht sehr komplex, aber auch nicht sehr interessant imho..
Dann hast du wieder eine Datei.
okay, das ist schonmal gut.
mich würde dennoch interessieren ob meine vermutung mit dem header abschneiden richtig ist.
kannst du mir dazu was sagen ?
ich habe mir gerade mal die die API von Apache angeschaut. so ganz schlau werde ich da noch nicht draus. nur nochmal zur info. ich wähle über html eine datei von einem verzeichnis und übergebe diese im jsp mittels request.getInputStream() an meine klasse. nur in dieser konstellation wird die exception geworfen.
ich verusche den fehler einzugrenzen aber irgendwie weis ich nicht genau ob ich die library überhaupt brauche, die du mir empfohlen hast.