OVH Cloud OVH Cloud

[Tomcat-again]La ressource demandée n'est pas disponible.

4 réponses
Avatar
yvon.thoravalNO
j'essaie de suivre les conseils du livre "Tomcat kick start" en suivant
l'exemple CurrencyConverter.

j'ai donc dans
$CATALIN_HOME/webapps/ROOT/SERVLETS un dossier "CurrencyConverter" avec
le contenu suivant :

currency-form.html (la page d'appel du servlet)
WEB-INF
classes
CurrencyConverter.class


l'action de la currency-form est "servlet/CurrencyConverter"
(c'est ce qui est indiqué sur le livre cité)

quand je lance (après redémarrage de Tomcat) mon navigateur sur :

http://ib.local:8080/SERVLETS/CurrencyConverter/currency-form.html

j'entre un nombre et valide, ca me donne :

Etat Http 404
La ressource demandée
(/SERVLETS/CurrencyConverter/servlet/CurrencyConverter) n'est pas
disponible.

???

le navigateur affiche alors l'adresse :

http://ib.local:8080/SERVLETS/CurrencyConverter/servlet/CurrencyConverte
r?amount=45

ce qui correspond bien au répertoire de "CurrencyConverter" et à
l'action "servlet/CurrencyConverter"

--
Yvon Thoraval

--
Yvon Thoraval

4 réponses

Avatar
mehdi kasmi
as tu déclaré ton servlet dans le fichier web.xml?
si ce n'est pas le cas ... fait le et ça devrait marcher ...

"Yvon Thoraval" wrote in message
news:1g5wd8k.a832zi1v7v0nuN%
j'essaie de suivre les conseils du livre "Tomcat kick start" en suivant
l'exemple CurrencyConverter.

j'ai donc dans
$CATALIN_HOME/webapps/ROOT/SERVLETS un dossier "CurrencyConverter" avec
le contenu suivant :

currency-form.html (la page d'appel du servlet)
WEB-INF
classes
CurrencyConverter.class


l'action de la currency-form est "servlet/CurrencyConverter"
(c'est ce qui est indiqué sur le livre cité)

quand je lance (après redémarrage de Tomcat) mon navigateur sur :

http://ib.local:8080/SERVLETS/CurrencyConverter/currency-form.html

j'entre un nombre et valide, ca me donne :

Etat Http 404
La ressource demandée
(/SERVLETS/CurrencyConverter/servlet/CurrencyConverter) n'est pas
disponible.

???

le navigateur affiche alors l'adresse :

http://ib.local:8080/SERVLETS/CurrencyConverter/servlet/CurrencyConverte
r?amountE

ce qui correspond bien au répertoire de "CurrencyConverter" et à
l'action "servlet/CurrencyConverter"

--
Yvon Thoraval

--
Yvon Thoraval


Avatar
yvon.thoravalNO
mehdi kasmi wrote:

as tu déclaré ton servlet dans le fichier web.xml?
si ce n'est pas le cas ... fait le et ça devrait marcher ...


ben si :

<DOCTYPE web-app
PUBLIC " - //Sun Microsystems, Inc.//DTD Web Application
2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>Currency Converter</display-name>
<description>
This is a simple web application with an HTML form passing a single
parameter (amount of dollards) to a servlet for conversion.
</description>
<servlet>
<servlet-name>Currency Converter</servlet-name>
<servlet-class>CurrencyConverter</servlet-class>
</servlet>
</web-app>

ce web.xml est dans le WEB-INF associé à mon répertoire
"CurrencyConverter"

intuition, faudrait-il mettre cela dans le web.xml du ROOT de Tomcat ?

lui ne contient que :

<web-app>
<display-name>Welcome to Tomcat</display-name>
<description>
Welcome to Tomcat
</description>
</web-app>


(à part les déclarations xml et doctype)
--
Yvon Thoraval

Avatar
mehdi kasmi
ta classe appartient elle à un package ?

dans ce cas faire nompackage.taclass

@+

"Yvon Thoraval" wrote in message
news:1g5yflc.13b6q2e1l42msyN%
mehdi kasmi wrote:

as tu déclaré ton servlet dans le fichier web.xml?
si ce n'est pas le cas ... fait le et ça devrait marcher ...


ben si :

<DOCTYPE web-app
PUBLIC " - //Sun Microsystems, Inc.//DTD Web Application
2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>Currency Converter</display-name>
<description>
This is a simple web application with an HTML form passing a single
parameter (amount of dollards) to a servlet for conversion.
</description>
<servlet>
<servlet-name>Currency Converter</servlet-name>
<servlet-class>CurrencyConverter</servlet-class>
</servlet>
</web-app>

ce web.xml est dans le WEB-INF associé à mon répertoire
"CurrencyConverter"

intuition, faudrait-il mettre cela dans le web.xml du ROOT de Tomcat ?

lui ne contient que :

<web-app>
<display-name>Welcome to Tomcat</display-name>
<description>
Welcome to Tomcat
</description>
</web-app>


(à part les déclarations xml et doctype)
--
Yvon Thoraval



Avatar
yvon.thoravalNO
mehdi kasmi wrote:

ta classe appartient elle à un package ?

dans ce cas faire nompackage.taclass


oui, merci, mais ce n'est pas ça.

je suis parvenu à faire fonctionner mon essai "CurrencyConverter" en
changeant de répertoire, en mettant cet essai dans le répertoire :

/Library/Tomcat/webapps/examples/servlets

pour la page html d'appel du servlet (currency-form.html)

et dans :

/Library/Tomcat/webapps/examples/WEB-INF/classes

pour la classe (CurrencyConverter.class)


au lieu, essais précédents, d'un sous répertoire du ROOT de Tomcat :

/Library/Tomcat/webapps/ROOT/SERVLETS/WEB-INF/classes


de plus, les user, group (je suis sous MacOS X 10.3.1) étaient dans les
essais précédents : yvonthor wheel

et là je suis en root wheel

est-ce que Tomcat est sensible à ça pour les servlets ?

parce que mes jsp sont dans :

/Library/Tomcat/webapps/ROOT/JSP/ avec yvonthor wheel comme user, group
et ça marche impec ???


--
Yvon Thoraval