ikan
asked on
How to compile a Java file to Servlet?
Hello,
Currently need to developer my java code to a Servlet. (.java => .class). So, what is the exact method of doing this? I'm using Tomcat 4.0 & JDK 1.3.
and what is the advantages of using Servlet?
Currently need to developer my java code to a Servlet. (.java => .class). So, what is the exact method of doing this? I'm using Tomcat 4.0 & JDK 1.3.
and what is the advantages of using Servlet?
You compile a servlet in exactly the same way you compile any Java file. You'll need to have j2ee installed, or alternatively you can just include servlet.jar from tomcat in your compile classpath.
A servlet needs to implement the javax.servlet.Servlet interface, and generally you'll extends HttpServlet.
> and what is the advantages of using Servlet?
Advantage over what?
Generally faster than CGI at it doesn't need to load for each request.
> and what is the advantages of using Servlet?
Advantage over what?
Generally faster than CGI at it doesn't need to load for each request.
What i know is that you have your servlet in the servlets folder like WEB-INF/CLASSES and then you call the servlet like this
http://www.sitename.com/serlvet/nameofservlet
the .java file will automatically compile if you have the servlet.jar in your classpath
http://www.sitename.com/serlvet/nameofservlet
the .java file will automatically compile if you have the servlet.jar in your classpath
ASKER
Hi,
I already put the servlet.jar in the WEB-INF/CLASSES folder but still nothing working. I tried using the javac.exe from {JDK} folder to compile it but get error:
Here are some of the output in DOS screen:
__________________________ __________ _
C:\jdk1.3.1_02\bin>dir/w
Volume in drive C has no label.
Volume Serial Number is 2141-16E6
Directory of C:\jdk1.3.1_02\bin
[.] [..] HtmlConverter.bat
appletviewer.exe dt_shmem.dll dt_socket.dll
extcheck.exe idlj.exe jar.exe
jarsigner.exe java.exe javac.exe
javadoc.exe javah.exe javap.exe
javaw.exe jdb.exe jdwp.dll
keytool.exe native2ascii.exe oldjava.exe
oldjavac.exe oldjavaw.exe oldjdb.exe
policytool.exe rmic.exe rmid.exe
rmiregistry.exe serialver.exe tnameserv.exe
unregbean.exe HelloWorldExample.java
30 File(s) 655,771 bytes
2 Dir(s) 5,353,418,752 bytes free
C:\jdk1.3.1_02\bin>javac HelloWorldExample.java
HelloWorldExample.java:8: package javax.servlet does not exist
import javax.servlet.*;
^
HelloWorldExample.java:9: package javax.servlet.http does not exist
import javax.servlet.http.*;
^
HelloWorldExample.java:17: cannot resolve symbol
symbol : class HttpServlet
location: class HelloWorldExample
public class HelloWorldExample extends HttpServlet {
^
HelloWorldExample.java:20: cannot resolve symbol
symbol : class HttpServletRequest
location: class HelloWorldExample
public void doGet(HttpServletRequest request,
^
HelloWorldExample.java:21: cannot resolve symbol
symbol : class HttpServletResponse
location: class HelloWorldExample
HttpServletResponse response)
^
HelloWorldExample.java:22: cannot resolve symbol
symbol : class ServletException
location: class HelloWorldExample
throws IOException, ServletException
^
6 errors
C:\jdk1.3.1_02\bin>
So, how to solve this problem exactly? Any references?
I already put the servlet.jar in the WEB-INF/CLASSES folder but still nothing working. I tried using the javac.exe from {JDK} folder to compile it but get error:
Here are some of the output in DOS screen:
__________________________
C:\jdk1.3.1_02\bin>dir/w
Volume in drive C has no label.
Volume Serial Number is 2141-16E6
Directory of C:\jdk1.3.1_02\bin
[.] [..] HtmlConverter.bat
appletviewer.exe dt_shmem.dll dt_socket.dll
extcheck.exe idlj.exe jar.exe
jarsigner.exe java.exe javac.exe
javadoc.exe javah.exe javap.exe
javaw.exe jdb.exe jdwp.dll
keytool.exe native2ascii.exe oldjava.exe
oldjavac.exe oldjavaw.exe oldjdb.exe
policytool.exe rmic.exe rmid.exe
rmiregistry.exe serialver.exe tnameserv.exe
unregbean.exe HelloWorldExample.java
30 File(s) 655,771 bytes
2 Dir(s) 5,353,418,752 bytes free
C:\jdk1.3.1_02\bin>javac HelloWorldExample.java
HelloWorldExample.java:8: package javax.servlet does not exist
import javax.servlet.*;
^
HelloWorldExample.java:9: package javax.servlet.http does not exist
import javax.servlet.http.*;
^
HelloWorldExample.java:17:
symbol : class HttpServlet
location: class HelloWorldExample
public class HelloWorldExample extends HttpServlet {
^
HelloWorldExample.java:20:
symbol : class HttpServletRequest
location: class HelloWorldExample
public void doGet(HttpServletRequest request,
^
HelloWorldExample.java:21:
symbol : class HttpServletResponse
location: class HelloWorldExample
HttpServletResponse response)
^
HelloWorldExample.java:22:
symbol : class ServletException
location: class HelloWorldExample
throws IOException, ServletException
^
6 errors
C:\jdk1.3.1_02\bin>
So, how to solve this problem exactly? Any references?
> I already put the servlet.jar in the WEB-INF/CLASSES
> folder but still nothing working.
Don't believe that necessary.
It's already available in your Tomcat distribution.
> I tried using the javac.exe from {JDK} folder to compile
> it but get error:
You need to make servlet.jar available to javac.
You can do this by adding it yto your classpath, or simply copying it to the 'ext' folder of your JDK.
> folder but still nothing working.
Don't believe that necessary.
It's already available in your Tomcat distribution.
> I tried using the javac.exe from {JDK} folder to compile
> it but get error:
You need to make servlet.jar available to javac.
You can do this by adding it yto your classpath, or simply copying it to the 'ext' folder of your JDK.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Hi guys,
Sorry for the late reply, I was able to compile a java file by using this:
C:\jdk1.3.1_02\bin\javac.e xe -classpath C:\jakarta-tomcat-4.0.3\co mmon\lib\s ervlet.jar C:\jakarta-tomcat-4.0.3\we bapps\test \WEB-INF\c lasses\Hel loWorld.ja va
Can this be simplify?
and i'm very confuse on the difference between Servlet and Java Bean, can Servlet return some value? How can i call a servlet in jsp, then display the return value from servlet in HTML?
Lot of question here but hope someone can explain them to me, thanks.
Sorry for the late reply, I was able to compile a java file by using this:
C:\jdk1.3.1_02\bin\javac.e
Can this be simplify?
and i'm very confuse on the difference between Servlet and Java Bean, can Servlet return some value? How can i call a servlet in jsp, then display the return value from servlet in HTML?
Lot of question here but hope someone can explain them to me, thanks.
windows 2000 or what?
ASKER
Windows 2000 Advanced Server, but i don't think it's related with OS.
Sometimes wonder why I bother :-(