JSP Fragen mit JSP und Netbeans

Eleandro

Mitglied
Hallo Forum :),

Ich mache im Rahmen eines Projektes erste Erfahrungen mit JSPs und blick da teilweise noch nicht durch um weiterarbeiten zu können. Ich verwende Netbeans mit dem Tomcatserver 6.0. Letzteren habe ich nun auch installiert und der läuft auch. Kleine Anmerkung: Version 7.0 wird von Netbeans anscheinend nicht unterstützt, wie ich irgendwann mal erfahren habe...
Nachdem ich nun in Netbeans die Web-Plugins installiert hatte ließ sich dann auch endlich mein erstes Helloworld-Beispiel anzeigen.
Nun meine erste Frage: Wenn ich den Tomcat-Server noch nicht gestartet habe kann ich trotzdem die Web-Application starten. Warum? Wenn ich Netbeans schließe kommt außerdem auch kurz die Meldung dass Tomcat beendet wird. War der Tomcat-Server nun schon bei Netbeans enthalten?
Angenommen wenn ich später meine Java-Klassen in die JSP einbauen möchte sollte ich ja wissen, auf welchen Server (bzw. Ordner im Verzeichnis) ich diese ablegen muss.

Nun noch ne 2. Frage. Hello-World klappt ja, aber einfach den kompletten Quelltext einer Java-Klasse als Skriptlet mit <% und %> einzubauen klappt (noch?) nicht. Wie kann ich nun eine Klasse, die z.B. auch eine eigene GUI hat, in meiner JSP einbauen?

Letzte Frage: Angenommen ich habe ein Projekt mit mehreren Klassen, wie greifen diese dann aufeinander zu??

Ich hoffe ihr könnt mir helfen den Nebel vor mir zu lichten :bahnhof:

Gruß,

Eleandro
 

Final_Striker

Top Contributor
Nein, kannst du natürlich nicht. Die Anwendung läuft doch auf dem Server, wie willst du diese starten wenn der Server nicht läuft?

Netbeans installiert den Tomcat auf deinem Rechner. Kannst du glaube ich bei der Installation auswählen oder so.


Zu den restlichen Fragen: Schaue dir im Internet ein Paar Tutorials zu Servlets und JSP's an. ;-)
 

Eleandro

Mitglied
Die Anwendung läuft doch auf dem Server, wie willst du diese starten wenn der Server nicht läuft?
Genau das habe ich mich ja auch gefragt. Über "Monitor Tomcat" kann ich den Server ja starten, aber die JSP lief auch schon bevor ich den Server gestartet hatte. Muss wohl dafinitiv über Netbeans laufen. Aber wenn ich nun eine Klasse einbinden will, läuft das nun über den Netbeans-Tomcat-Server oder über den externen, den ich extra installiert habe? Also in wessen Verzeichnis gehört dann die Klasse?

Zu den restlichen Fragen: Schaue dir im Internet ein Paar Tutorials zu Servlets und JSP's an. ;-)
Stell dir vor, bin seit ein paar Tagen an nichts anderem dran... :rtfm: Der Beitrag hier ist der Versuch eine klare Antwort auf meine Fragen zu finden weil oft die Tipps von Google mir zu ungenau sind oder nicht funktionieren... :noe: Sind oft so "Kleinigkeiten" die aber trotzdem nicht funktionieren und zu denen man nur schlecht oder gar nicht eine Lösung findet.

Z.B. versuch ich nun mit einer Seitendirektive eine Klasse einzubinden:
HTML:
<%@page import = "Name.class" %>
Die Klasse liegt im Ordner Tomcat 6.0\webapps\admin\WEB-INF. Mein Buch hier bei mir gibt mir sogar gleich an, wie ich alle Klasses eines Java-Paketes importiere, aber nicht wo ich die Class-Datei überhaupt ablegen muss...
Fehler:
Code:
org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: 6 in the generated java file
Syntax error on token "class", Identifier expected
Mit Name.* kann ich die JSP immerhin ausführen, aber ich sehe nichts von meiner Klasse.

Ich würde hier nicht fragen, wenn ich micht nicht schon selbst um eine Lösung bemüht hätte. Vielleicht habt ihr ja ne Antwort auf die eine oder andere Frage parat, das wäre mir sehr hilfreich und würde mein Vorankommen beschleunigen :toll:.

Gruß und gn8,

Eleandro
 
M

maki

Gast
Scriptlets sind schlecht, gar nicht erst angewöhnen, nimm lieber Taglibs, wie zB. die JSTL.
Du willst keinen Javacode in JSP und kein XML/HTML/JavaScript/CSS in Javaklassen/Servlets.

Bei imports gibt man nie die .class Erweiterung an.
 

Eleandro

Mitglied
Du willst keinen Javacode in JSP ...
Diesen Aussage habe ich schon mal auf einer anderen Seite gelesen und ich musste ehrlich gesagt darüber schmunzeln... Warum soll auch eine JAVA Server Page kein Javacode eingebunden werden? Ist nicht gerade das der Sinn von einer JSP?

Bei imports gibt man nie die .class Erweiterung an.
Danke für den Hinweis. Hab's nun so:
HTML:
<%@page import = "classes.Calculator.*" %>
So kann ich die JSP auch ausführen. Jedoch seh ich von der Klasse nichts, denn wenn sie starten würde käme auch eine kleine Gui zum Vorschein. Wie starte ich sie?

Für mein Projekt werde ich nun eine kleine Gui benötigen, später kommt auch noch eine Datenbank hinzu. Ohne JSPs hättte ich sowas nun einfach in Netbeans programmiert. Wenn ich nun dieses Projekt, welches aus mehreren Klassen besteht (bestehen wird) in meiner JSP haben will, wie gehe ich dann vor? Kann ich die Gui mit Java erstellen oder muss das mit HTML gemacht werden? Also meine Idee war das Projekt erst in Netbeans mit Java zu programmieren und wenn's fertig ist auf der JSP zu starten. Geht das so?
Das ist der Grund warum ich die ganze Zeit versuche eine Klasse testweise einzubinden und zu starten. Ist mir eben noch nicht gelungen...

Danke für die Tipps!

Gruß,

Eleandro
 

brauner1990

Bekanntes Mitglied
Wenn du den Server in Netbeans einbindest, und dein Projekt auf HotDeploy stehen hast, deployt er den aktuellen Stand des Projektes (inkremental) automatisch, falls der Server nicht läuft startet er ihn sogar dafür.

Falls du oben auf Run klickst, startet er auch den Server wenn dieser nicht läuft.
 
M

maki

Gast
Diesen Aussage habe ich schon mal auf einer anderen Seite gelesen und ich musste ehrlich gesagt darüber schmunzeln... Warum soll auch eine JAVA Server Page kein Javacode eingebunden werden? Ist nicht gerade das der Sinn von einer JSP?
Nein, ist es nicht :)
JSPs sind Vierwtemplates, da sollte keine Logik drinnen stehen, und wenn dann nur als Tag, niemals als Javacode.
Diese Aussage wirst du übrigens überall finden wo man das ganze ernst nimmt, wird übrigens auch "Model 2" bzw. "MVC" genannt. Wenn du dich mal in die Materie reinliest, wirst du sehen dass das A und O ist.

So kann ich die JSP auch ausführen. Jedoch seh ich von der Klasse nichts, denn wenn sie starten würde käme auch eine kleine Gui zum Vorschein. Wie starte ich sie?
Eine Javaklasse starten die in der JSP eine GUI anzeigt?
Denke du bist verwirrt, JSPs vertragen nur XML/HTML, keine Swing/SWT GUI.

Also meine Idee war das Projekt erst in Netbeans mit Java zu programmieren und wenn's fertig ist auf der JSP zu starten. Geht das so?
Jetzt muss ich schmunzeln, nehme mal an dass du das nicht ernst meinst, falls doch, lies dir erstmal die Grundlagen zu Java WebApps durch.
 
Zuletzt bearbeitet von einem Moderator:

Final_Striker

Top Contributor
Diesen Aussage habe ich schon mal auf einer anderen Seite gelesen und ich musste ehrlich gesagt darüber schmunzeln... Warum soll auch eine JAVA Server Page kein Javacode eingebunden werden? Ist nicht gerade das der Sinn von einer JSP?

Lesen: JSP-Tutorial - Java Standard Tag Library (JSTL)
Lesen: JSP-Tutorial - Anwendungsarchitektur

Dann weißt du warum.

Tipp: Wenn dir Leute, die sich damit auskennen, was raten, solltest du vielleicht nicht schmunzelt, sondern darüber nachdenken.
 

Ähnliche Java Themen

Neue Themen


Oben