исходный сервер не может быть раскрыт в настоящий момент. при развертывании на кота

<p>я построил приложение, используя spring с eclipse ide. когда я запускаю проект из eclipse ide, все в порядке, но когда я упаковываю проект maven в файл war и развертываю его на отдельном tomcat, у меня возникает эта проблема</p><pre><code>the origin server did not find a current representation for the target resource or is not willing to disclose that one exists. </code></pre><p>это фрагмент конфигурации из моего файла xml</p><pre><code><!-- view resolver --> <beans:bean class="org.springframework.web.servlet.view.internalresourceviewresolver"> <beans:property name="prefix" value="/web-inf/pages/" /> <beans:property name="suffix" value=".jsp" /> </beans:bean> </code></pre><p>я пытаюсь получить доступ к этому контроллеру </p><pre><code>@requestmapping(value = {"/welcome", "/"}) public string defaultpage() { return "web service data successfuly consumed"; } </code></pre><p>кто-нибудь с идеей, почему это не удается развернуть на tomcat?</p>

<p>я боролся с этой проблемой много раз.</p><p>решение, которое я в настоящее время использую, заключается в том, чтобы веб-приложение (или папка, в которой вы сохраняли представления, например jsp) находилось в сборке развертывания.</p><p>для этого <code>right click on the project > build path > configure build path > deployment assembly > add(right hand side) > folder > (add your jsp</code> папка. в случае по умолчанию это <code>src/main/webapp</code>)</p><p>вы также можете получить эту ошибку после того, как все сделали правильно, но в jsp вы добавили метку привязки по старинке (я добавляю этот случай, если это поможет кому-то еще с той же проблемой). </p><p>у меня был следующий синтаксис на jsp. <code><a href="/mappedpath">takemetothecontroller</a></code> и я продолжал видеть ошибку, упомянутую в вопросе. однако изменение тега на показанный ниже решило проблему.</p><pre><code><a href=" <spring:url value="/mappedpath" /> ">takemetothecontroller</a> </code></pre>

<p>я получил ту же ошибку при работе в spring boot application, потому что при работе в spring boot легко сделать <code>localhost:8080/hello/world</code>, но когда вы создали артефакт и развернули в tomcat, вам нужно переключиться на использование <code>localhost:8080/<artifactname>/hello/world</code></p>

<p>если вы разрабатываете загрузочное приложение spring, добавьте springbootservletinitializer, как показано в следующем коде, в ваш основной файл. потому что без springbootservletinitializer tomcat будет рассматривать его как обычное приложение, которое не будет считаться загрузочным приложением spring.</p><pre><code>@springbootapplication public class demoapplication extends *springbootservletinitializer*{ @override protected springapplicationbuilder configure(springapplicationbuilder application) { return application.sources(demoapplication .class); } public static void main(string[] args) { springapplication.run(demoapplication .class, args); } } </code></pre>

<p>почти ту же проблему можно решить, создав файл geoexplorer.xml в /opt/apache-tomcat-8.5.37/conf/catalina/localhost содержимое файла geoexplorer.xml </p><pre><code><context displayname="geoexplorer" docbase="/usr/share/opengeo/geoexplorer" path="/geoexplorer"/> </code></pre>

<p>пытаясь запустить сервлет в eclipse (щелчок правой кнопкой мыши + «запуск на сервере»), я столкнулся с той же проблемой: «статус http: 404/описание: исходный сервер не нашел текущего представления для целевого ресурса или не хочет раскрывать, что он существует. " добавление index.html не помогло, а также не изменило различные настройки tomcat.</p><p>наконец, я обнаружил проблему в неожиданном месте: в eclipse опция «построить автоматически» не была установлена. таким образом, сервлет не был скомпилирован, и файл "myservlet.class" не был развернут на сервере (в моем случае это путь .wtpwebapps/projectxx/web-inf/classes/xxpackage /). сборка проекта вручную и перезапуск сервера решил проблему.</p><p>моя среда: eclipse neon.3, выпуск 4.6.3, tomcat-версия 8.5.14., ос linux mint 18.1.</p>

<p>я столкнулся с той же проблемой. </p><p>когда я щелкаю правой кнопкой мыши -> запустить на сервере, затем выбираю сервер вручную, он работает.</p><p>делать</p><pre><code>alt+shift+x </code></pre><p>затем вручную выберите свой сервер. это может помочь.</p>

<p>я также столкнулся с той же проблемой, и я решил ее, поместив файл web.xml и файл applicationcontext.xml в папку web-inf.</p><p>надеюсь это поможет :)</p>

<p>в eclipse перейдите в project -> автоматически нажмите на build, после чего попытайтесь выполнить </p>

<p>если это проект maven, то maven update решит проблему - щелкните правой кнопкой мыши на project -> maven -> update project и запустите ваш проект в обычном режиме.</p>

<p><strong> решение одно: </strong>изменить версию apache tomcat (последняя версия предпочтительнее) (ручной процесс).</p><p><strong> решение второе: </strong>установите последнюю версию eclipse ide и настройте сервер apache tomcat (внутренне автоматический процесс i, e eclipse обрабатывает часть конфигурации).</p><p>после успешной процедуры автоматического процесса, ручной процесс должен работать хорошо. </p>