我正在尝试构建自己的Web应用程序(Java,SpringMVC,Hibernate),而且我从头开始开发新手。 示例项目已完成。技术规格:Maven,Eclipse Oxygen IDE,Tomcat 9。 当我右键点击Project - >以 - >运行在服务器上运行我收到以下错误:
描述:原始服务器未找到当前表示 对于目标资源或不愿意披露存在的资源。
当我在浏览器中明确地点击URL(http://localhost:8080/mavenWebApp/getAllCountries)时也会发生相同的事情:
然而,当我点击Tomcat默认页面(http://localhost:8080)时,它可以正常工作。
我的控制器类
@RequestMapping(value="/getAllCountries", method = RequestMethod.GET, headers="Accept=application/json")
public String getCountries(Model model) {
List listofCountries = countryService.getAllCountries();
model.addAttribute("Country", new Country());
model.addAttribute("listOfCountries", listofCountries);
return "countryDetails";
}
弹簧servlet.xml中
<beans:bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<beans:property name="prefix" value="/WEB-INF/views/" />
<beans:property name="suffix" value=".jsp" />
</beans:bean>
我在WEB-INF / views /文件夹中有countryDetails.jsp。
我的完整web.xml
<web-app>
<display-name>Archetype Created Web Application</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationcontext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
我在spring-servlet.xml中完成了bean配置,因此在这种情况下applicationcontext.xml是我为此创建的空文件。
如果您要我粘贴我的代码的任何其他部分,请告诉我。 哦,并没有在通常的Tomcat-Installation-Folder / logs中更新服务器日志。我不知道为什么。
P.S。我试过,切换服务器属性 - &gt;一般 - &gt;工作区元数据到/ Servers / Tomcat v9.0服务器 几乎所有其他解决方案都是先前提供的,但似乎都没有。
答案 0 :(得分:0)
在Eclipse中,如果选项&#34;自动构建&#34;没有设置,servlet可能无法编译。手动构建项目并重新启动服务器可能会解决问题。