Home Accessibility Courses Twitter The Mouth Facebook Resources Site Map About Us Contact
 
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))
Changing a Servlet - more that just editing and compiling

If you're going to modify a servlet, you'll need to edit and recompile the classes that you're changing - and chances are that will include the main application class. Which means you need to have access to the source. Not a problem if you're a developer of the product, but could be an issue if it's someone else's code. Let's assume, though, for this article that you do have access to the source.

Do you just edit and compile, then?

Sorry - no - it's not that simple ...

1. Even though you may be compiling on a different machine to you'll be running on, you will need to have all the classes called available on the compile system. Which means all the application classes called, and also library classes which are used, need to be available. (Ironically - just to satisfy the compiler that your code is right!). In particular, many of the servlet classes may need to be sourced; from Tomcat, where the distribution includes servlet-api.jar , is the easiest source. And you then need that jar on your CLASSPATH.

2. You need to copy the compiled output into the WEB-INF/classes directory of your web application so that it's accessible to Apache Tomcat (or whatever other Servlet container you're using)

3. If you're renaming you application of its URL (perhaps you're putting up a test version alongside the production one), you'll need to add to / change your WEB-INF/web.xml file to provide an updated URL to class mapping

4. You're likely to need to stop and start Tomcat - or at least the web application - to clear cahces and reload, unless the URL and class names are brand new.

Details of these operations / stages are includes as comments on the top of a new servlet I set up on today's Java Course - the full code, and the instructions - are [here].
(written 2010-11-12)

 
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)
  [1909] javax.servlet cannot be resolved - how to solve - (2008-11-26)
  [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)
  [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)

A507 - Web Application Deployment - Java - Servlets and JSPs
  [2151] What is a JSP tag library? - (2009-05-01)
  [2525] Using JSPs, Tag Libraries, Java Beans, Tomcat in one short example - (2009-12-04)


Back to
Gathering information - logging - with log4j. First steps.
Previous and next
or
Horse's mouth home
Forward to
After Course Resources - do we publish sample answers. Example from Java Exceptions module.
Some other Articles
String handling - from first steps to practical examples
What is a universal superclass? Java / Perl / Python / Other OO languages
Java Beans, tag libraries and JSPs - what and why.
After Course Resources - do we publish sample answers. Example from Java Exceptions module.
Changing a Servlet - more that just editing and compiling
Gathering information - logging - with log4j. First steps.
Least Common Ancestor - what is it, and a Least Common Ancestor algorithm implemented in Perl
Java - basic rules for arithmetic, variables and conversion
Doing several things at the same time - Java threads
Fresh Paint - Java Arrays
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).

You can Add a comment or ranking to this page

© 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/3044_.html • PAGE BUILT: Sun Oct 11 16:07:41 2020 • BUILD SYSTEM: JelliaJamb