Where exactly does a jsp page get deployed when run via Eclipse? [message #1179897] |
Sun, 10 November 2013 11:30  |
Eclipse User |
|
|
|
I was told to ask in this forum, so... : http://www.eclipse.org/forums/index.php/t/590241/
I created a new default web application project which had an index.jsp. I had already pointed Eclipse to the place I had extracted Tomcat (C:\apache-tomcat-7.0.42).
I ran the program, the browser opened and the index.jsp file was displayed.
What I don't understand is, that the index.jsp file was not automatically copied to the Tomcat folder and it still worked. I thought that for a file to work, it had to be copied to the C:\apache-tomcat-7.0.42\webapps\ROOT\WEB-INF folder.
How does Eclipse manage to execute the index.jsp file without copying it to the Tomcat folder?
When I run the program in Eclipse, it shows that it is starting the Tomcat server. Is it starting the same server in C:\apache-tomcat-7.0.42 or is it creating a separate 'virtual' kind of an instance of the server and running it in the Eclipse workspace?
My catalina base folder points to C:\apache-tomcat-7.0.42 but when I created my servlet project, the NameHandler.class file got created in F:\Programming\Java\HelloWeb\build\web\WEB-INF\classes\org\mypackage\hello. I searched the tomcat directory, and the .class file wasn't there. Nor was any trace of my HelloWeb project. So my question persists, as to how the program works even if the .class file does not actually get deployed in the tomcat directory?
|
|
|
Re: Where exactly does a jsp page get deployed when run via Eclipse? [message #1181481 is a reply to message #1179897] |
Mon, 11 November 2013 11:27   |
Eclipse User |
|
|
|
On 11/10/2013 11:30 AM, nav k wrote:
> I was told to ask in this forum, so... :
> http://www.eclipse.org/forums/index.php/t/590241/
>
> I created a new default web application project which had an index.jsp.
> I had already pointed Eclipse to the place I had extracted Tomcat
> (C:\apache-tomcat-7.0.42).
>
> I ran the program, the browser opened and the index.jsp file was displayed.
>
> What I don't understand is, that the index.jsp file was not
> automatically copied to the Tomcat folder and it still worked. I thought
> that for a file to work, it had to be copied to the
> C:\apache-tomcat-7.0.42\webapps\ROOT\WEB-INF folder.
>
> How does Eclipse manage to execute the index.jsp file without copying it
> to the Tomcat folder?
> When I run the program in Eclipse, it shows that it is starting the
> Tomcat server. Is it starting the same server in C:\apache-tomcat-7.0.42
> or is it creating a separate 'virtual' kind of an instance of the server
> and running it in the Eclipse workspace?
>
> My catalina base folder points to C:\apache-tomcat-7.0.42 but when I
> created my servlet project, the NameHandler.class file got created in
> F:\Programming\Java\HelloWeb\build\web\WEB-INF\classes\org\mypackage\hello.
> I searched the tomcat directory, and the .class file wasn't there. Nor
> was any trace of my HelloWeb project. So my question persists, as to how
> the program works even if the .class file does not actually get deployed
> in the tomcat directory?
See the Tomcat FAQ [1]. It will explain how this is working. The quick
answer is that by default a separate instance of Tomcat is created under
the ".metadata" folder of your workspace. This avoids complications
that can occur trying to use your installed Tomcat directly.
Cheers,
Larry
[1] http://wiki.eclipse.org/WTP_Tomcat_FAQ
|
|
|
|
Powered by
FUDForum. Page generated in 0.03139 seconds