我需要帮助,请查看我的代码:
@ControllerAdvice
@EnableWebMvc
public class GlobalExceptionController {
@ExceptionHandler(CustomGenericException.class)
public ModelAndView handleCustomException(CustomGenericException ex) {
// create the model and view with the tiles View pointing to error jsp page
ModelAndView model = new ModelAndView("pagina.erro");
model.addObject("errCode", ex.getErrCode());
model.addObject("errMsg", ex.getErrMsg());
return model;
}
...
瓷砖配置:
<definition name="pagina.erro" extends="baseLayout">
<put-attribute name="titlepagina" value="Página de Erro" />
<put-attribute name="body" value="/WEB-INF/jsp/error/erro-generico.jsp" />
</definition>
在我的Spring配置xml中我有:
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/WEB-INF/jsp/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
正在加载页面 erro-generico.jsp ,因为如果我输错了代码,错误将显示在eclipse控制台上。
问题是:页面没有显示,实际页面一直显示在浏览器上,甚至URL都没有显示。
可能出现什么问题?
答案 0 :(得分:0)
问题是正在使用的视图解析器与Tiles不兼容,它只适用于纯JSP。
可以按照以下说明为{Tiles}配置视图解析器 - 14.3.2. How to integrate Tiles:
bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
<property name="definitions">
<list>
<value>/WEB-INF/defs/general.xml</value>
<value>/WEB-INF/defs/widgets.xml</value>
<value>/WEB-INF/defs/administrator.xml</value>
<value>/WEB-INF/defs/customer.xml</value>
<value>/WEB-INF/defs/templates.xml</value>
</list>
</property>
</bean>
<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView"/>
</bean>