Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

"code too large for try statement"-Fehlermeldung

Empfohlene Antworten

Veröffentlicht

Ich bin an der Pflege einer JavaServerPages-Anwendung beteiligt.

Läuft seit ca. 2 - 3 Jahren völlig einwandfrei.

Nun bekomme ich plötzlich folgende Fehlermeldung wenn die jsp-Dateien compiliert werden :

"code too large for try statement"

Mittlerweile habe ich heraus gefunden, dass es tatsächlich eine Grenze von 65536 Bytes für Code-Segmente geben soll - aber gibt es denn nicht irgendeine Möglichkeit, dieses Limit zu vergrößern ?

Irgendeine Compiler-Einstellung vielleicht ?

Nein, und das ist gut so!

Wenn Dein Code innerhalb eines try-Blockes mehr braucht, dann ist was falsch.

Java ist objektorientiert und sollte auch so gehandhabt werden.

Zerlege Deinen Code in Klassen und Methoden, dann läuft auch alles.

Peter

zum einen stimmt das was kingofbrain sagt,

desweiteren sind try-catch bloecke eigentlich zum Errorhandling gedacht...

wie wird denn auf einen Fehler reagiert, da ja zig 100 Fehler auftreten koennen ?

also: mehrere try-catch bloecke und die hochgepoppten fehler hochreichen...

gruss / zirri

Servus,

die Vorgabe der Höchstgrösse gilt auch für Methoden (ich glaube, sogar für Codeblöcke, also alles in {}). Deshalb würden 50 try-catch-Blöcke innerhalb der Methode nichts bringen, weil die Methode immer noch zu gross wäre.

Peter

genau deshalb habe ich ja auch geschrieben, dass das was Du geschrieben hast schonmal stimmt, habe es nur weiter ergaenzt....

ps: Hast Du bemerkt, dass der Kollege Threadersteller dies als Scriptlet in ner JSP hat ?!?

pps: Scriptlets sind sch***

gruss / zirri

Das kann ich nicht beurteilen, da ich, wenn überhaupt, mit Servlets arbeite.

Aber in der J2EE-Schulung von Sun wurde letztes Jahr die Verwendung von Scriptlets eher kritisch beurteilt.

Aber jetzt wieder back to topic.

Peter

Das kann ich nicht beurteilen, da ich, wenn überhaupt, mit Servlets arbeite.

Was sind denn JSPs ?????

aber egal ->

Aber jetzt wieder back to topic.

gruss

Was sind denn JSPs ?????

JSPs sind erstmal keine Servlets!

Ein JSP ist genauso wie PHP vom Prinzip her eine Mischung aus Java-Code und darstellenden Elementen (heute so gut wie immer HTML, aber auch das muss ja nicht unbedingt der Fall sein). Ein JSP wird beim ersten Aufruf zu einem Servlet kompiliert, aber das JSP an sich ist damit noch kein Servlet.

Auch die herangehensweise ist leicht unterschiedlich, ich arbeite mit einem Servlet nicht so, wie ich mit einem JSP arbeite.

Ich bin mir da nicht 100% sicher, wie es in der J2EE Specification steht, aber wenn ich mich richtig erinnere ich dieser Compile-Prozess in ein Servlet nur eine mögliche Variante ein JSP abzuarbeiten, theoretisch könnte man das auch ganz anders handlen.

Aber zurück zum Thema:

Wenn dein Code die 64k Grenze überschreitet dann kann ich mich da nur meinen Vorrednern anschließen: Da gibt es nichts mehr drumherum zu fummeln, sonder da hilft nur noch das ganze zu entzerren und sauber (!) strukturiert neu zu schreiben. Ich kann mir absolut nicht vorstellen, dass bei soviel Code hintereinander noch irgendetwas an Übersichtlichkeit vorhanden ist.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.