Link to home
Start Free TrialLog in
Avatar of pouli
pouli

asked on

New app on Tomcat 5.0.19

I am converting a project containg JSP and servlets from Tomcat 3.3 to 5.0.19
I have moved my web application under the webapps directory and the initial web page is found and comes up ok but when the first servlet comes up I get an error from Tomcat
HTTP Status 404 /insidezos20/servlet/checkuser
Description: The rquested resource (/insidezos20/servlet/checkuser) is not available


Any configuration in the web.xml or server.xml

Any help please ???

Avatar of CEHJ
CEHJ
Flag of United Kingdom of Great Britain and Northern Ireland image

Make sure you've moved ALL your files
Avatar of pouli
pouli

ASKER

yes,

I have moved them. What else could be ?
I guess you have also moved the web.xml file. Can you make sure that the checkuser servlet (I guess it;s a servlet) is defined in your web.xml file? Also in Tomcat 5.0.19 you do not need the servlet.xml file.
Avatar of pouli

ASKER

   <servlet-mapping>
        <servlet-name>checkuser</servlet-name>
        <url-pattern>/servlet/*</url-pattern>
    </servlet-mapping>


It is in the web.xml file
Do you also have

<servlet>
    <servlet-name>...</servlet-name>
    <servlet-class>...</servlet-class>
</servlet>

tags?
Avatar of pouli

ASKER

It seems that no.

Why it was working with the old version though?
Not sure, different settings probably. It's a very long time since I last used Tomcat 3.3, I do not remember details but I *think* you didn't have to specify the <servlet-name> and <servlet-class> in your web.xml. It could find the servlets as long as they were in the WEB-INF/classes folder.
Isn't it that it can find the web apps if they're in the webapps dir and through the app archive  find the servlets?
Avatar of pouli

ASKER

CEHJ sorry could you explain better what you mean??
That's really a semi-rhetorical(?) question to girionis. Generally there seems to be less config to worry about
> Isn't it that it can find the web apps if they're in the webapps dir and through the app archive  find the servlets?

It's weird what's going on. AFAIR Tomcat 3.3 needed to servlet.xml file in order to find the web application but could implicitly find a servlet under the web app. On the other hand Tomcat 5.0 (I think this feature was availble after the 4.0 version) does not need a servlet.xml file (can find all the web-apps automatically as long as they are under the web-apps folder) to load the web-app but it does need to explicitly define a servlet in the web.xml file.
Well i think it's a general move in the direction of individual config as opposed to global, which i think is probably a good thing, although it feels a bit rich when you hear them recommending that library jars should really go in each web app. i.e. if you have x.jar used by 4 web apps, you'll have 4 copies of x.jar
ASKER CERTIFIED SOLUTION
Avatar of rrz
rrz
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
>> /insidezos20/servlet/checkuser

>> But in Tomcat 5  the Invoker servlet is commented out.  

Correct, the invoker Servlet is no longer there. It was already known a long time back that it will be removed. It must have a mapping in web.xml. The invoker Servlet feature was generally used for testing purposes (while development - as a short-hand way for immediate-testing), but now, its no longer there.
Avatar of pouli

ASKER

rrz@871311

Thank your answer was correct.

Thank everyone though for your interest.

Talk u later
pouli, thanks for the points, but I must agree with mayankeagle  

>The invoker Servlet feature was generally used for testing purposes    

and because it was a security risk, was  phased out.    rrz