Я использовал мастер веб-службы CN1 для добавления прокси-сервера веб-службы в мое мобильное приложение и для генерации всего кода на стороне сервера. У меня есть локальная установка XAMPP с tomcat, связанным в моей Eclipse IDE. Кроме того, я импортировал сгенерированный сервером код как новый проект Java и добавил к нему аспект проекта «Динамический веб-модуль», чтобы я мог запускать его не как локальное приложение Java, а скорее на сервере Tomcat.
При запуске клиента я заметил, что получаю HTTP 404
, ресурс не найден, ошибки. Я проследил ошибку до URL-адреса, на котором расположен сервер.
Я знаю, что должен адаптировать параметр urlPatterns
в сгенерированном классе CN1WebServiceServlet
, что я и сделал. Также я проверил контекст моего приложения в настройках веб-проекта и определил значение для context root
. Итак, в моем клиентском приложении URL для вызова службы должен быть
http://localhost:8080/< context root>/< urlPattern>
Однако даже при вызове этого в браузере я должен получить результат метода doGet
сгенерированного сервером кода, показывающего сообщение «Только доступ к веб-сервису». Вместо этого я постоянно получаю 404 ошибки.
Есть ли какая-то проблема при импорте сгенерированного сервером кода в виде простого Java-проекта и последующем добавлении в него веб-частей? Как это будет сделано в идеальном случае?
И какие еще проблемы могут мешать правильной публикации URL-адреса на стороне сервера?
Спасибо и всего наилучшего
EDIT
Я удалил все из проекта, чтобы ограничить параметры, и нашел причину: при использовании мастера веб-службы для выгрузки исходных файлов в новый каталог, добавив, что с помощью мастера импорта Eclipse он будет рассматриваться как простой Java-проект без каких-либо веб-компонентов. Используя параметры проекта для добавления к нему динамического веб-элемента (Eclipse вызывает эти аспекты проекта), веб-служба CN1 НЕ будет работать.
Если вместо этого сначала создать «Динамический веб-проект», а затем с помощью мастера веб-службы CN1 скопировать исходные файлы сервера в папку «src» этого проекта, он будет работать без проблем.