|
|
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
Подскажите плиз, может кто знает, у меня не запускается сервлет из моей директории под webapps (например webapps\myapp\WEB-INF\classes), Tomcat пишет: The requested resource (/myApp/servlet/TestingServlet) is not available хотя когда я кладу класс в webapps\examples\WEB-INF\classes - Tomcat"овскую директорию с классами примеров - все работает. Надо ли что-то прописывать в конфиге, потому что, я не могу найти ничего подобного для директории examples ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2004, 13:44 |
|
||
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
Не забыли сделать следующее: При использовании Tomcat 5 в директории <CATALINA_HOME>\conf\Catalina\localhost создаем XML файл XXX.xml, который будет содержать описание контекста приложения : <!-- Context configuration file for u00 Web App $Id: XXX.xml,v 1.1 01.04.2004 16:48:14 $ --> <Context path="/XXX" docBase="XXX" debug="0" reloadable="true" crossContext="true"> </Context> где XXX - название приложения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2004, 13:49 |
|
||
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
У меня Tomcat 4, а точнее 4.1.31 и там в conf нет директории catalina вообще ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2004, 13:52 |
|
||
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
/webapps/myapp/WEB-INF/web.xml что в нем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2004, 16:02 |
|
||
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
1. В Tomcat4 описание контекста приложения делается в файле server.xml 2. В каталоге <CATALINA_HOME>\webapps\"Название Приложения"\WEB-INF следует создать дескриптор развертывания, а именно файл web.xml, который будет содержать настройки только данного приложения. Само собой разумеется, что в полном пути символьную строку "Название Приложения" надо заменить на приемлемое название мнемонически символизирующее для Вас будущее приложение. И кроме того, если таковой директории еще нет, ее надо создать, впрочем, также как и другие необходимые директории.. Описание всех, входящих в состав приложения сервлетов выполняется между метками <web-app> и </web-app> данного файла. Элемент <servlet> устанавливает соответствие между именем сервлета и полностью квалифицированным описанием класса сервлета, с учетом пакетов. Описания применения сервлета должны содержать следующие метки (в указанном порядке) : <servlet> <servlet-name>myServ</servlet-name> <servlet-class>package1.package2.MyClass</servlet-class> </servlet> Если захотите, можете использовать и свои метки, но они должны быть расположены перед закрывающей меткой </servlet> . Эти метки определяют свойства типов параметров инициализации, метод загрузки сервлета при запуске приложения, принципы обеспечения безопасности, свойства отображения (включая большие и маленькие пиктограммы, имена). Более подробное описание можно получить в спецификации сервлетов. Тем не менее, упрощенно можно трактовать, что в простом случае элемент <servlet> устанавливает для Tomcat соответствие между именем сервлета и полностью квалифицированным именем класса сервлета. После принятия запроса Tomcat должен определить, какой сервлет должен обрабатывать его. Для этого надо создать отображение (mapping), то есть - описать, как связать URL и сервлет. Вы можете решить, что определенные пути, называемые алиасами должны отображаться в некоторый определенный сервлет. Алиасные пути описываются в корне контекста в URL HTTP запроса. Это описание в файле web.xml должно выглядеть следующим образом : <servlet-mapping> <servlet-name>myServ</servlet-name> <url-pattern>pattern</url-pattern> </servlet-mapping> При использовании настроек в приведенном ниже примере файла web.xml файла для вызова сервлета RequestCatalog должен использоваться URL http://localhost/appName/mica. <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "httр://java.sun.com/j2ee/dtds/web-app_2_2.dtd"> <web-app> <servlet> <servlet-name>myCatalog</servlet-name> <servlet-class>pack1.pack2.RequestCatalog</servlet-class> </servlet> <servlet-mapping> <servlet-name>myCatalog</servlet-name> <url-pattern>mica</url-pattern> </servlet-mapping> </web-app> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2004, 16:56 |
|
||
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
это все я знаю в web.xml все в порядке, кроме того сервлет не обязательно описывать в web.xml, а можно обращаться к нему как к классу (myapp/servlet/classname), если он не описан, но это не важно - все равно одна и таже ошибка. см. выше я ж говорю кладу класс в examples/WEB-INF/classes - все работает, такое ощущение, что Tomcat не видит myapp/WEB-INF/classes - может его гдето в настройках надо прописывать? MBasil: можно поподробнее насчет пункта 1? что именно надо прописать в server.xml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2004, 16:19 |
|
||
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
простой как 5 копеек. в examples/WEB-INF/web.xml описан сервлет. а твоем web.xml он не описан...все логично! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2004, 16:30 |
|
||
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
и что? почитай документацию. я кладу свой класс (например, MyServlet.class) в examples/WEB-INF/classes не описывая его в examples/WEB-INF/web.xml и он работает когда я открываю http://localhost/examples/servlet/MyServlet дело то не в этом я ж говорю - и в web.xml описано все - не открывается когда я пытаюсь залезть в http://localhost/myapp/servlet/MyServlet хотя MyServlet.class лежит и в examples/WEB-INF/classes и в myapp/WEB-INF/classes ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2004, 16:37 |
|
||
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
M.B.это все я знаю в web.xml все в порядке, кроме того сервлет не обязательно описывать в web.xml, а можно обращаться к нему как к классу (myapp/servlet/classname), если он не описан, ИМХО это возможно при наличии в web.xml, например, следующего: Код: plaintext 1. 2. 3. 4. или ему подобного. Иначе как-то уж больно просто было - получить возможность вызова чего угодно только лишь по наличию его в classes. Такие строки присутствуют? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2004, 18:21 |
|
||
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
Denis Popov M.B.это все я знаю в web.xml все в порядке, кроме того сервлет не обязательно описывать в web.xml, а можно обращаться к нему как к классу (myapp/servlet/classname), если он не описан, ИМХО это возможно при наличии в web.xml, например, следующего: Код: plaintext 1. 2. 3. 4. или ему подобного. Иначе как-то уж больно просто было - получить возможность вызова чего угодно только лишь по наличию его в classes. Такие строки присутствуют? это не ИМХО. это я сказал. зря ты посты удаляешь. кроме мата там была полезная инфа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2004, 08:58 |
|
||
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
·?·это не ИМХО. это я сказал. зря ты посты удаляешь. кроме мата там была полезная инфа. Здарова, Грасс! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2004, 09:05 |
|
||
|
Tomcat 4 и запуск своих сервлетов
|
|||
|---|---|---|---|
|
#18+
Гости ·?·это не ИМХО. это я сказал. зря ты посты удаляешь. кроме мата там была полезная инфа. Здарова, Грасс!здарова. только я не грасс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2004, 10:04 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=32811052&tid=2153326]: |
0ms |
get settings: |
5ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 186ms |
| total: | 322ms |

| 0 / 0 |
