2015-08-02 3 views
-1

Мои сервлеты Java отлично работают из моих html-форм на протяжении многих-многих лет. Теперь мой давний интернет-провайдер бросил в полотенце, поэтому мне пришлось получить нового интернет-провайдера. Они поддерживают мои сервлеты, говорят они, и у меня есть частная установка Tomcat 7. Я ожидал, что смогу просто изменить путь в моих html-формах и сервлет-коде, перекомпилировать и запустить. Однако это не удается. У меня нет jsp, военных файлов или xml. Никогда не нужно.Преобразование старых сервлетов формы html для запуска на Tomcat 7

Новый ISP имеет public_html/сопоставлен с my_domain/(без проблем) и webapps/dir (новый для меня) в my_domain-webapps /, который на том же уровне структурно, что и my_domain /. В этом файле my_domain-webapps/dir есть примеры сервлетов, но я не могу сказать, к чему обратиться к ним. Я попытался добавить 8080 в my_domain, но это тоже не удается. (http://www.my_domain.com:8080/examples/) Я также пробовал http://www.my_domain-webapps.com:8080/examples/, который также потерпел неудачу.

Я обращаюсь к своему коду на linux с помощью шпатлевки, используя vim. Администратора типа cpanel нет.

Я искал и искал объяснение, но не могу найти его. Я прочитал документацию Apache, но это тоже не помогает. Я буду продолжать поиск, но надеюсь, что кто-то здесь может помочь.

Может ли кто-нибудь сказать мне, как заставить мои старые сервлеты формы html работать под Tomcat 7 [[url для -webapps dir]]? Возможно, укажите мне документацию, описывающую, как запускать простые старые сервлеты формы html из Tomcat 7 или дать мне краткое объяснение?

редактировать:
в соответствии с просьбой, вот информация:

код сервлета не проблема. Я прошу URL-адрес получить доступ к примерам, предоставленным установкой tomcat.
путь к моему домену:/путь/к/домен/my_domain/
доступ с URL: http://www.my_domain.com/
Этот каталог имеет index.html предоставленный себе, и это показывает штраф в браузере.

путь к 7 примеров кот:/путь/к/домен/my_domain-WebApps/примеры/
[[-webapps/примеры/буквален, остаток концептуальное]]
Этот каталог имеет index.html при условии, по установке tomcat. Я никак не изменил его.

пытается получить доступ примеры с URL:
http://www.my_domain.com/examples/index.html
кот журнал ошибок говорит:
... Файл не существует:/путь/к/домен/my_domain/примеры

пытается получить доступ к примеры с URL:
http://www.my_domain-webapps.com/examples/index.html
страница ошибки говорит:
Сервер не найден

+0

Пожалуйста, отредактируйте свой вопрос, чтобы он содержал фактический код: что делает ваш сервлет выглядит так, как выглядит типичная форма, и что вы видите в журнале tomcat? Что значит «не работает»? – bmargulies

ответ

0

Я не могу поверить, что я единственный человек в мире, который столкнулся с этой проблемой, поэтому опубликую ответы, которые я нашел. Возможно, кто-то еще опубликует другую соответствующую информацию.

>> как сделать мои старые формы HTML сервлеты работают под Tomcat 7:
- Ответ на этот вопрос, так близко, как я могу определить, в это время, является то, что я должен стать конформистом и использовать структуру каталогов продиктованный сервлетом spec 2.2+ и моим провайдером, включая файл web.xml и war. Это означает, что невозможно запустить мои сервлеты из html-форм так, как они работают в течение многих лет. Требуется файл войны - необязательно.
Теперь я пытаюсь определить минималистский набор необходимых файлов и каталогов, необходимых для запуска сервлетов из html-форм под Tomcat.

>> [что такое] URL-адрес для доступа к примерам, предоставленным установкой Tomcat (где путь к моему домену:/path/to/domain/my_domain /, а путь к примерам tomcat:/path/to/domain/my_domain-webapps/examples /):
- Ответ на этот вопрос заключается в том, что URL-адрес http://www.my_domain/examples/ (как и следовало ожидать). Причина, по которой он не работал для меня, заключался в том, что в настройку должен был быть добавлен «контекст». Это в сочетании с конфигурацией веб-сервера Apache обеспечивает сопоставление, необходимое для доступа к веб-контенту в двух структурах каталогов на уровне par-level.

Я получил фрагменты информации из нескольких разных мест, а затем определил ответы на свои конкретные вопросы, экспериментируя. В частности, мой ISP, документация Tomcat (https://tomcat.apache.org/tomcat-7.0-doc/appdev/deployment.html) и информация Марти Холла на CoreServlets.com (http://www.coreservlets.com/). CoreServlets снова неоценим. (Я изначально изучил сервлеты у него еще в рассветное время. Я застрял в прошлом - и немного не возражал - пока это не укусило меня.)

1

Tomca t 7 не имеет к этому никакого отношения.

Вам ничего не нужно менять. Ваша форма должна содержать относительные URL-адреса относительно клятвы контекста развертывания и ваш web.xml.

Вопросы только для вашего провайдера: что такое имя хоста и какой порт Tomcat?

+0

Вы не понимаете мой вопрос, или я, вероятно, недостаточно ясен. Tomcat является центральной точкой моего вопроса. - Вы говорите «клятву контекста развертывания» и «ваш web.xml». Я сказал в своем первоначальном вопросе, что в отношении моих старых сервлетов у меня нет xml. «Клятва контекста развертывания» мне неизвестна. Раньше это было очень просто и прямо. Теперь это сложно и сумасшествие. Наверное, я старый парень, был с тех пор в сети, и не удержался. Ну, я должен изменить это, но мне нужно выйти из стартового блока. Каков url для доступа к примерам tomcat 7? – Iceberg

+0

Не будь глупым. Как кто-нибудь еще узнает ваш URL? Контекстный путь - это каталог под «webapps», в котором были развернуты ваши сервлеты. Только вы это знаете. Пока это так же, как и раньше, все, что вам нужно сделать, это настроить имя хоста и порт. Но на этот раз я предлагаю вам написать себе web.xml и создать правильный файл WAR, чтобы у вас никогда не было этой проблемы. – EJP

+0

Ну, это не ответило на мой вопрос. Мне не нужна лекция, мне нужна информация. Похоже, мне нужен кто-то, кто понимает, как это объясняется. Вы дали мне одну часть информации, хотя так спасибо за это. «Контекстный путь - это каталог под« webapps », в котором были развернуты ваши сервлеты». – Iceberg

Смежные вопросы