Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Date 如何解决;转换错误设置值';2013-10-26';对于';空转换器'&引用;在h中:输入带有日期值的文本?_Date_Jsf_Converter - Fatal编程技术网

Date 如何解决;转换错误设置值';2013-10-26';对于';空转换器'&引用;在h中:输入带有日期值的文本?

Date 如何解决;转换错误设置值';2013-10-26';对于';空转换器'&引用;在h中:输入带有日期值的文本?,date,jsf,converter,Date,Jsf,Converter,当我按下插入按钮时,我得到标题上指示的错误 “空转换器”的转换错误设置值“2013-10-26” 对象标准AAA: import java.sql.Date; @Table(name = "criterio_aaa", schema = "", catalog = "ciclos_calidad") @Entity public class CriterioAaa extends Entidad implements Serializable { private Date plazo

当我按下插入按钮时,我得到标题上指示的错误

“空转换器”的转换错误设置值“2013-10-26”

对象标准AAA:

import java.sql.Date;

@Table(name = "criterio_aaa", schema = "", catalog = "ciclos_calidad")
@Entity
public class CriterioAaa extends Entidad implements Serializable {

    private Date plazo;

    public Date getPlazo() {
        return plazo;
    }

    public void setPlazo(Date plazo) {
        this.plazo = plazo;
    }

}

您应该导入相应的
日期
包:

import java.util.Date;

您应该导入相应的
日期
包:

import java.util.Date;

您当前的方法存在两个问题:

  • 您应该使用
    java.util.Date
    而不是
    java.sql.Date
    。JSF和其他框架使用这种类型。另外,
    java.sql.Date
    扩展了
    java.util.Date
    ,但其目的基本上是为了JDBC的使用。更多信息:

  • 需要一个
    字符串
    作为值,当将数据发送到托管bean时,它还需要class字段也是from
    字符串
    类型。在这种情况下,您需要使用一个转换器来告诉JSF这个
    字符串
    实际上代表一个
    日期
    。为此,您可以使用标签组件

    <h:inputText id="date" required="true" requiredMessage="Campo Obligatorio"
        value="#{aaaNewDetalles.criterioAaa.plazo}">
        <f:convertDateTime pattern="yyyy-MM-dd" />
    </h:inputText>
    
    
    

  • 作为建议,您可以使用PrimeFaces或RichFaces等第三方库中的日历组件,其分别提供和组件。

    当前方法存在两个问题:

  • 您应该使用
    java.util.Date
    而不是
    java.sql.Date
    。JSF和其他框架使用这种类型。另外,
    java.sql.Date
    扩展了
    java.util.Date
    ,但其目的基本上是为了JDBC的使用。更多信息:

  • 需要一个
    字符串
    作为值,当将数据发送到托管bean时,它还需要class字段也是from
    字符串
    类型。在这种情况下,您需要使用一个转换器来告诉JSF这个
    字符串
    实际上代表一个
    日期
    。为此,您可以使用标签组件

    <h:inputText id="date" required="true" requiredMessage="Campo Obligatorio"
        value="#{aaaNewDetalles.criterioAaa.plazo}">
        <f:convertDateTime pattern="yyyy-MM-dd" />
    </h:inputText>
    
    
    

  • 作为建议,您可以使用第三方库(如PrimeFaces或RichFaces)中的日历组件,它们分别提供和组件。

    在托管Bean中,您应该使用java.util.Date。并指定转换器。 e、 g

    
    

    您可以指定DateTimeConverter的模式,也可以使用dateStyle、timeStyle、type

    在托管Bean中,应该使用java.util.Date。并指定转换器。 e、 g

    
    

    您可以指定DateTimeConverter的模式,也可以使用dateStyle、timeStyle、type

    这只是答案的一部分。这只是答案的一部分。你到底为什么要重复一个已经给出的答案?如果你同意一个答案,就投上一票,而不是重复。Stack Overflow不是一个老式的讨论论坛,每个人都会在(dis)一致的基础上重复彼此,形成一个无法想象的混乱。Stack Overflow是一个干净的问答网站,每个人都可以就(dis)协议进行投票。你到底为什么要重复已经给出的答案?如果你同意一个答案,就投上一票,而不是重复。Stack Overflow不是一个老式的讨论论坛,每个人都会在(dis)一致的基础上重复彼此,形成一个无法想象的混乱。Stack Overflow是一个干净的问答网站,每个人都可以就(dis)协议进行投票。RichFaces已经达成,因此使用不同的框架是明智的。RichFaces已经达成,因此使用不同的框架是明智的。
    <h:inputText id="date" required="true" requiredMessage="Hire Date"
    value="#{empBean.empDetail.hireDate}">
    <f:convertDateTime pattern="yyyy-MM-dd" />
    </h:inputText>