2011-01-16 6 views
2

Ich bin sehr neu in der Verwendung von Glassfish oder JSP.Glassfish: Speichern von Java-Klassen im Docroot-Ordner?

Ich habe dies funktioniert in NetBeans (die Glassfish gebündelt hat), aber wenn ich versuche, es auf meinem Server, der Glassfish Server läuft, zu setzen, weiß ich wirklich nicht, was ich tue.

Ich kann eine JSP-Datei in "Domains/domain1/docroot/index.jsp" platzieren und es wird funktionieren, wenn ich meine Website besuche, aber ich kann aus irgendeinem Grund Java-Klassen nicht funktionieren.

Ich habe die Dateien in "/ build/web /" vom NetBeans-Projekt in den Docroot-Ordner auf meinem Server kopiert.

Die Fehler, die ich bekomme, wenn ich die Website besuchen, sind:

org.apache.jasper.JasperException: PWC6033: Error in Javac compilation for JSP 

PWC6199: Generated servlet error: 
string:///index_jsp.java:7: package test does not exist 

PWC6197: An error occurred at line: 5 in the jsp file: /index.jsp 
PWC6199: Generated servlet error: 
string:///index_jsp.java:52: cannot find symbol 
symbol : class TestClass 
location: class org.apache.jsp.index_jsp 

PWC6197: An error occurred at line: 5 in the jsp file: /index.jsp 
PWC6199: Generated servlet error: 
string:///index_jsp.java:52: cannot find symbol 
symbol : class TestClass 
location: class org.apache.jsp.index_jsp 

Die eigentliche Java-Klasse ist in "WEB-INF/classes/test/TestClass.class" (es ist vorkompilierte).

Ich habe wirklich keine Ahnung, was ich falsch mache, so dass jede Hilfe sehr geschätzt wird. Vielen Dank!

Antwort

2

Weil Sie es falsch machen - Sie müssen zuerst ein Webarchiv (Krieg) machen.

http://download.oracle.com/javaee/5/tutorial/doc/bnadp.html

Und für einen schnellen Start siehe Abbildung 3-5 hier:

http://download.oracle.com/javaee/5/tutorial/doc/bnadx.html

+0

Bekam es, vielen Dank! –

+0

Ich bin neu, kann also nicht stimmen. Ja, ich stimme Michał Minicki zu. Der einfachste und standardisierte Weg besteht darin, eine WAR-Datei zur Bereitstellung Ihrer Webanwendung zu erstellen. – JSS

1

Bitte verwenden Sie nicht die docroot Ordner Sie sollten wahrscheinlich mit diesem, wirklich beginnen. Das könnte für statische Inhalte wie HTML funktionieren, aber selbst das ist keine gute Idee.

Der einfachste Weg ist es, einen neuen Ordner erstellen namens myapp.war und Zielordner kopieren (von Netbeans zu diesem folder.Obviously Ich bin über die Vereinfachung und aber ich versuche, meinen Standpunkt deutlich zu machen)

Auch Sie sollten in der Lage sein, eine Web-App in Netbeans an Stelle von Glassfish zu erstellen.