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

未在PropertyEditorManager中注册属性编辑器:自定义标签调用错误

滑乐逸
2023-03-14
问题内容

调用我时出现以下错误testtag.jsp

org.apache.jasper.JasperException:无法将字符串“ ”转换为属性“
att1”的类“ javax.servlet.jsp.tagext.JspFragment”:属性编辑器未向PropertyEditorManager

(详细的堆栈跟踪无关紧要)

我正在使用J2EE 1.4服务器(即JSP 2.0)

我的 WEB-INF/testtag.tag

<%@ tag body-content="scriptless" %>
<%@ tag description="Renders some test html" %>
<%@ attribute name="att1" fragment="true" required="true"  %>

<h1><jsp:invoke fragment="att1"/></h1>

testtag.jsp使用此标记的jsp :

<%@page contentType ="text/html" pageEncoding="UTF-8" buffer="none" session="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="t" tagdir="/WEB-INF/tags" %>

<c:set var="myvar" value="hello world"/>
<t:testtag att1="<c:out var='myvar'/>" />

问题答案:

根据JSP 2.0规范的 JSP.7.1.6 (粗体显示),

在转换阶段,将页面的各个部分转换为javax.servlet.jsp.tagext.JspFragment抽象类的实现,然后再传递给标签处理程序。
对于 在TLD中声明为片段或类型的 命名属性 (由定义的 属性) 的主体 中的 任何JSP代码,
此操作都是自动完成的。<jsp:attribute>``JspFragment

也就是说,在testtag.jsp片段中应该以其他方式传递:

<%@page contentType ="text/html" pageEncoding="UTF-8" buffer="none" session="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="t" tagdir="/WEB-INF/tags" %>

<c:set var="myvar" value="hello world"/>
<t:testtag>
    <jsp:attribute name="att1"><c:out value='${myvar}'/></jsp:attribute>
</t:testtag>


 类似资料:
  • 我正在将我的项目从Spring 2.5.6迁移到Spring 4.0.6。下面是我们拥有的客户属性编辑器的xml定义。 但是,当我启动服务器时,我在日志中看到以下异常。 这是我班级里Spring罐子的清单

  • 在 Dreamweaver 的模板中指定可编辑的标签属性。此外,了解如何将可编辑的标签设置为不可编辑。 您可以允许模板用户在根据模板创建的文档中修改指定的标签属性。 例如,您可以在模板文档中设置背景颜色,但仍允许模板用户为他们创建的页面设置不同的背景颜色。用户只能更新您指定为可编辑的属性。 您还可以在页面中设置多个可编辑属性,这样,模板用户就可以在基于模板的文档中修改这些属性。支持的数据类型如下:

  • 问题内容: 我根据以下条件在MANY Spring-MVC控制器中使用以下自定义编辑器: 控制器 其他控制器 另一个控制器 注意注册了相同的自定义编辑器 问题:如何设置像这样的全局自定义编辑器以避免设置每个控制器? 问题答案: 你需要在你的应用程序上下文中声明它:

  • 我是新来的Spring Boot。在我的控制器中,我使用s作为。缺省情况下,在传递无效的时,Spring返回。 当客户端传递一个无效的时,我想抛出一个自定义的,这样我就可以使用这个异常返回一个自定义的错误。 我试图注册一个定制的(实现)。 为了注册这个组件,我将这个转换器添加到springs。使用。 我还尝试使用而不是这里提到的:Spring没有使用mongo定制转换器 我尝试过的其他解决方案是:

  • 在“SQL 编辑器”选项卡,你可以创建和编辑视图的 SELECT 语句 SQL。Navicat Data Modeler 为编辑视图定义提供广泛的高级功能,例如:编辑代码功能、智能自动完成代码、设置 sql 格式及更多。 【提示】当你在视图创建工具创建视图,SELECT 语句将会自动生成。 美化 SQL(仅适用于非 Essentials 版) 若要格式化凌乱的 SQL 代码到一个结构良好的脚本,你

  • 在我的Spring Boot项目中,我创建了一个自定义注释,其中validator扩展了ConstraintValidator,以验证RequestBody中的一些字段。注释对于非嵌套字段可以很好地工作,但对于嵌套字段不调用验证器。 我的注释如下所示: 我的验证类: 它在这样的情况下工作正常: 但是当放在嵌套对象上时,不会调用验证器: 类在我的中的用法: 关于如何解决这个问题有什么想法吗?我已经尝