Strony HTML i Spring.

0

Witam. Stworzyłem sobie według gotowego szablonu projekt MVC Springa i tam domyślnie strona startowa to była strona jsp. Więc postanowiłem podmienić ją na html:

<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> 

zamieniłem na:

<beans:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <beans:property name="prefix" value="/WEB-INF/views/" />
    <beans:property name="suffix" value=".html" />
</beans:bean>

i podmieniłem stronę jsp na html i niestety po tych zmianach dostaję błąd:
WARN : org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/myapp/WEB-INF/views/home.html] in DispatcherServlet with name 'appServlet'

Czemu dostaję ten błąd? Chciałem tylko zamienić stronę na html.

0

A przebudowałeś wara na pewno?

0

Tak na pewno. Nawet parę razy projekt tworzyłem i za każdym razem to samo.

0

A możesz pokazać jak wygląda kontroler?

0
@RequestMapping(value = "/", method = RequestMethod.GET)
    public String home(Locale locale, Model model) {
        logger.info("Welcome home! The client locale is {}.", locale);
 
        Date date = new Date();
        DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, locale);
 
        String formattedDate = dateFormat.format(date);
 
        model.addAttribute("serverTime", formattedDate );
 
        return "home";
    }

Taki mi się wygenerował od razu się z projektem.

0

A co masz w web.xml? Tzn jaki pattern jest ustawiony dla springowego servletu? Najlepiej jakbyś mial to na jakimś githubie bo pewnie błąd banalny a trudno go wyłapać ze szczątków kodu ;]

0

Nic nie zmieniałem. Dałem po prostu twórz nowy projekt w Eclipse -> Spring MVC Project i jedyn co zmieniałem to co dałem w 1 poście:

web.xml wygenerowany:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

	<!-- The definition of the Root Spring Container shared by all Servlets and Filters -->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>/WEB-INF/spring/root-context.xml</param-value>
	</context-param>
	
	<!-- Creates the Spring Container shared by all Servlets and Filters -->
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>

	<!-- Processes application requests -->
	<servlet>
		<servlet-name>appServlet</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
		
	<servlet-mapping>
		<servlet-name>appServlet</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>

</web-app>
0

Ja nie widzę w takim razie gdzie jest problem. Domyślam się ze gdzieś jeszcze jest zahardkodowana informacja o tym .jsp i stąd cały problem.

0

Weź sobie załóż projekt archetypem maven do spring -mvc

0

Tak też zrobiłem. W Spring Tools Suite, dałem nowy MavenProject i wybrałem SpringMVC jako archetyp.

1 użytkowników online, w tym zalogowanych: 0, gości: 1