当前位置: 首页 > 面试题库 >

无法呈现不是字符串的属性,toString返回:SPRING MVC中的null错误

伏星汉
2023-03-14
问题内容

我试图通过遵循此教程为我的spring mvc项目创建一个通用错误处理程序:http : //www.mkyong.com/spring-
mvc/spring-mvc-exceptionhandler-example/

但是在我的项目中,我正在使用tile-defs,并且在浏览器中访问错误页面时遇到此错误:

org.apache.tiles.request.render.CannotRenderException: Cannot render an attribute that is not a string, toString returns: null
at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:255)
at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:397)
at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:238)
at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:221)
at org.apache.tiles.renderer.DefinitionRenderer.render(DefinitionRenderer.java:59)
at org.springframework.web.servlet.view.tiles3.TilesView.renderMergedOutputModel(TilesView.java:114)
at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:267)
at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1217)
at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1005)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:952)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:870)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:961)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:852)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:837)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

这是我的tile-defs配置:

    <definition name="/error/generic_error">
    <put-attribute name="body" value="/WEB-INF/views/error/generic_error.jsp" />
    <put-attribute name="browserTitle" value="Error Screen" />
    </definition>

我找不到原因,也没有解决此问题的方法,因此,我们将不胜感激。


问题答案:

您需要在图块定义中添加基本模板。它应该扩展模板,或者您必须在定义时提及路径属性 <definition name="/error/generic_error" path= "{your-path}">



 类似资料:
  • 本文向大家介绍JavaScript中用toString()方法返回时间为字符串,包括了JavaScript中用toString()方法返回时间为字符串的使用技巧和注意事项,需要的朋友参考一下  此方法返回表示指定日期对象的字符串。 语法 下面是参数的详细信息:     NA 返回值: 返回表示指定日期对象的字符串 例子: 这将产生以下结果:

  • 问题内容: 我正在开发一个使用JSON进行服务器通信的Android应用,当我尝试解析json文件时遇到了一个奇怪的问题。 这是我来自服务器的json 我通过调用地址Json-object 获得City的价值。对于这种情况,我期望为空(这是optString的意思吗?),但实际上它包含字符串“ null”。因此,进一步的null或isEmpty- checks将返回false,因为String包含

  • 我们有一个基于泽西的web应用程序。我们将Apache Freemarker用于前端网页。我已经创建了一个servlet过滤器,并将其添加到web.xml中。这个过滤器拦截所有的http请求。在该过滤器的doFilter方法中,我从请求对象获取HTTPSession并设置一个属性值。说“Myval”。 尝试了以下访问MyVal的方法: ${request.myval} ${myVal}

  • 在控制台中获得以下结果: 添加项:null 因此,我希望通过将addedItemName字符串与“null”字符串进行比较来知道何时单击了close按钮。这似乎永远不会奏效,而且让我很沮丧,因为我真的不明白。下面是我做的一些其他测试,以展示我如何尝试各种不同的方法,但仍然不起作用。 假的 假的 因此,基本上,console向我显示,当单击关闭按钮时,addedItemName是“null”,但当我

  • 我正在开发一个使用JSON进行服务器通信的Android应用程序,当我试图解析我的json文件时,我遇到了一个奇怪的问题。 这是来自服务器的json 我通过调用字符串City=address来获取City的值。我的地址Json对象上的optString(“city”,“”)。对于这种情况,我希望城市是空的(这就是optString在这里的目的,不是吗?)但实际上它包含字符串“null”。因此,进一

  • 问题内容: 我有一个带有参数的方法。 在这种方法中,我完全知道在“ o”中存在一个不为空的值。无需检查或执行其他操作。我必须把它当作一个对象来对待。 只是好奇-什么便宜?将其投放或使用?还是按时间/ CPU /内存价格相同? 更新:该方法可以接受,因为它是接口的实现。无法更改参数类型。 而且根本不可能。我只是想说我不需要检查它是否为空或为空。就我而言,总是有一个非空字符串。 问题答案: 强制转换为

  • 问题内容: 我一直很高兴从ASP.NET中的控制器返回JsonResult对象或部分ASP.NET视图。 我想将呈现的部分视图作为JSON对象的属性返回。例如 要求 会回来 当我使用JavaScript处理响应时,这将使我知道PostId。有关最佳方法的任何提示? 问题答案: 这是一些将起作用的代码,因为我今天需要这样做。原始代码在这里描述。 然后,您可以使用它来执行RJS样式的json结果 并且