Training, Open Source Programming Languages

This is page http://www.wellho.net/mouth/1909_jav ... solve.html

Our email: info@wellho.net • Phone: 01144 1225 708225

 
For 2023 (and 2024 ...) - we are now fully retired from IT training.
We have made many, many friends over 25 years of teaching about Python, Tcl, Perl, PHP, Lua, Java, C and C++ - and MySQL, Linux and Solaris/SunOS too. Our training notes are now very much out of date, but due to upward compatability most of our examples remain operational and even relevant ad you are welcome to make us if them "as seen" and at your own risk.

Lisa and I (Graham) now live in what was our training centre in Melksham - happy to meet with former delegates here - but do check ahead before coming round. We are far from inactive - rather, enjoying the times that we are retired but still healthy enough in mind and body to be active!

I am also active in many other area and still look after a lot of web sites - you can find an index ((here))
javax.servlet cannot be resolved - how to solve

Two common problems in compiling Servlets for use within a Tomcat container ...




PROBLEM: My Java Compile of a Servlet says "javax.servlet cannot be resolved"

For example:

[trainee@easterton sources]$ javac Smallest.java
----------
1. ERROR in Smallest.java
 (at line 2)
   import javax.servlet.*;
          ^^^^^^^^^^^^^
The import javax.servlet cannot be resolved
----------
2. ERROR in Smallest.java
 (at line 3)
   import javax.servlet.http.*;
          ^^^^^^^^^^^^^
The import javax.servlet cannot be resolved
----------
3. ERROR in Smallest.java
 (at line 5)
   public class Smallest extends HttpServlet {
                                 ^^^^^^^^^^^
HttpServlet cannot be resolved to a type
----------
4. ERROR in Smallest.java
 (at line 9)
   public void doGet(HttpServletRequest request,
                     ^^^^^^^^^^^^^^^^^^
HttpServletRequest cannot be resolved to a type
----------
5. ERROR in Smallest.java
 (at line 10)
   HttpServletResponse response)
   ^^^^^^^^^^^^^^^^^^^
HttpServletResponse cannot be resolved to a type
----------
6. ERROR in Smallest.java
 (at line 11)
   throws IOException, ServletException
                       ^^^^^^^^^^^^^^^^
ServletException cannot be resolved to a type
----------
6 problems (6 errors)[trainee@easterton sources]$



SOLUTION: Add the Servlet API to your CLASSPATH.

[trainee@easterton sources]$ export CLASSPATH=/usr/local/tomcat/common/lib/servlet-api.jar 
[trainee@easterton sources]$ javac Smallest.java
[trainee@easterton sources]$

EXPLANATION:

Even if you're just compiling a Servlet to produce a class file, on a machine on which you won't actually be running it, the Java compiler insists on having the necessary classes available to check you code / to know what it is extending.

The Servelet API jar file is available from within a standard Tomcat download, and also from within a Java Enterprise download, but it is not downloaded with the standard edition!




PROBLEM: I get an error message about "does not declare serialVersionUID"

[trainee@easterton sources]$ javac Smallest.java----------
1. WARNING in Smallest.java
 (at line 5)
   public class Smallest extends HttpServlet {
                ^^^^^^^^
The serializable class Smallest does not declare a static final serialVersionUID field of type long
----------
[trainee@easterton sources]$

SOLUTION: Check that you're using the correct Java compiler!

1 problem (1 warning)[trainee@easterton sources]$ which java
/usr/bin/java
[trainee@easterton sources]$ export PATH=/usr/local/java/bin:$PATH
[trainee@easterton sources]$ javac Smallest.java
[trainee@easterton sources]$

EXPLANATION: There are various Java Compilers available, and the one that's shipped with Linux releases is highly unlikely bo be Sun's one which you'll want to use with Servlets / Tomcat's classes.

If you have Tomcat downloaded and installed already, chances are that you do have the right compiler already on your system - if not, download it from Sun - but that your PATH to executable files is currently pointing at the one shipped with the operating system.




Learn all about these on our Deploying Apache httpd and Tomcat course!
(written 2008-11-26)

 
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
J906 - Java - Servlets in More Detail
  [479] New servlet from old - (2005-10-28)
  [1495] Single login and single threaded models - Java and PHP - (2008-01-04)
  [1550] Java (JSP and Servlet examples) live on our server - (2008-02-23)
  [2183] Servlet life cycle, and Java Servlet variable scope - (2009-05-16)
  [2652] Reading and writing cookies in Java Servlets and JSPs - (2010-02-26)
  [2717] The Multiple Inheritance Conundrum, interfaces and mixins - (2010-04-11)
  [3044] Changing a Servlet - more that just editing and compiling - (2010-11-12)
  [3293] Distributing the server load - yet ensuring that each user return to the same system (Apache httpd and Tomcat) - (2011-05-18)
  [4431] A Java servlet that is also a stand alone program. And a server that is also a web client. - (2015-02-19)
  [4432] Java web application for teaching - now with sessions and clustering / load balancing demonstrations - (2015-02-20)

J901 - Java - Servlets
  [3997] Servlet v JSP (Java Server Page). What is the difference? - (2013-02-06)

A653 - Web Application Deployment - Tomcat - Configuring Web Applications
  [465] Changing Tomcat's web.xml and reloading a web application - (2005-10-15)
  [754] tar, jar, war, ear, sar files - (2006-06-10)
  [1006] Apache httpd and Apache Tomcat together tips - (2006-12-24)
  [1074] Java beans and classes, .war and .jar files - (2007-02-10)
  [1082] Straight from the .jar - (2007-02-16)
  [1192] What are WEB-INF and META-INF directories? - (2007-05-18)
  [1552] Extra public classes in deploying Apache httpd and Tomcat - (2008-02-24)
  [1564] Default file (MiMe types) for Apache httpd and Apache Tomcat - (2008-03-04)
  [2088] Changing the 404 - file not found - page in Tomcat - (2009-03-18)
  [3996] Tips on Tomcat - moving applications around - (2013-02-05)

A502 - Web Application Deployment - Java - Basic Tools
  [1562] Java Compiler - needs all classes, compiles them all too - (2008-03-03)
  [1771] More HowTo diagrams - MySQL, Tomcat and Java - (2008-08-24)
  [2153] Class Loading and Variable Conversion in Java - (2009-05-02)
  [2422] Looking inside Java classes - javap and javadoc - (2009-09-25)
  [2859] Using java, javac, jar, and CLASSPATH - a simple example - (2010-07-07)
  [3151] Disassembling Python and Java - previously compiled code - (2011-01-29)
  [3819] Packing a tar, jar or war file - best practise - (2012-07-26)
  [4412] Java -making sure you have the right versions - (2015-02-02)


Back to
Java CLASSPATH explained
Previous and next
or
Horse's mouth home
Forward to
Java - Generics
Some other Articles
Alastair Darling helps make paperwork and confusion
Book now for 2009
Remember Me - PHP
Java - Generics
javax.servlet cannot be resolved - how to solve
Java CLASSPATH explained
Melksham Hotel Rates
Long, Longer, Longest in Java
A Gold Star for First Great Western Customer Service
Ruby, Perl, Linux, MySQL - some training notes
4759 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 at 50 posts per page


This is a page archived from The Horse's Mouth at http://www.wellho.net/horse/ - the diary and writings of Graham Ellis. Every attempt was made to provide current information at the time the page was written, but things do move forward in our business - new software releases, price changes, new techniques. Please check back via our main site for current courses, prices, versions, etc - any mention of a price in "The Horse's Mouth" cannot be taken as an offer to supply at that price.

Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).

© WELL HOUSE CONSULTANTS LTD., 2024: 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01144 1225 708225 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho

PAGE: http://www.wellho.net/mouth/1909_jav ... solve.html • PAGE BUILT: Sun Oct 11 16:07:41 2020 • BUILD SYSTEM: JelliaJamb