Reputation: 1
My Controller code
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@Controller
public class HomeController {
@RequestMapping(value = "/index", method = {RequestMethod.GET, RequestMethod.POST})
public String mainPage(ModelMap model, HttpServletResponse response, HttpServletRequest request) throws ServletException, IOException {
if(request.getMethod().equals("GET")){
model.addAttribute("test", "test");
model.addAttribute("var", "Hello");
return "index";
}
return "";
}
}
My AppCondig code:
import org.springframework.beans.factory.annotation.Configurable;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.EnableAspectJAutoProxy;
import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.view.InternalResourceViewResolver;
@Configuration
@EnableWebMvc
public class AppConfig extends WebMvcConfigurerAdapter{
@Bean
public InternalResourceViewResolver internalResourceViewResolver(){
InternalResourceViewResolver internalResourceViewResolver = new InternalResourceViewResolver();
internalResourceViewResolver.setPrefix("/");
internalResourceViewResolver.setPrefix(".jsp");
return internalResourceViewResolver;
}
@Override
public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer){
configurer.enable();
}
}
My index.jsp where i get " Cannot resolve variable 'var'
<head>
<%@ page isELIgnored="false" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
</head>
<body>
<h2>Hello World! </h2>
<td>${var}</td>
</body>
</html>
I use version 3 in my web.xml as follows
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
And I don't know why my variable isn't recognize in ".jsp" file because I follow all de information I read about this topic. I use the latest version of IntelliJ IDEA
Upvotes: 0
Views: 111
Reputation: 44
internalResourceViewResolver.setPrefix(".jsp");
Should be :
internalResourceViewResolver.setSuffix(".jsp");
Upvotes: 1