8

変数値を null に設定していますが、問題があります。

public class BestObject {
    private Timestamp deliveryDate;
    public void setDeliveryDate(Timestamp deliveryDate) {
         this.deliveryDate = deliveryDate;
    }
}

BeanUtils.setProperty(new BestObject(), "deliveryDate", null); // usually the values are not hardcoded, they come from configuration etc

これはエラーです:

org.apache.commons.beanutils.ConversionException: No value specified
    at org.apache.commons.beanutils.converters.SqlTimestampConverter.convert(SqlTimestampConverter.java:148)
    at org.apache.commons.beanutils.ConvertUtils.convert(ConvertUtils.java:379)
    at org.apache.commons.beanutils.BeanUtils.setProperty(BeanUtils.java:999)

基本的に、java.sql.Timestamp 値を null に設定しようとしていますが、何らかの理由で機能していません。

一方、私はリフレクション ラッパー BeanUtils( http://commons.apache.org/proper/commons-beanutils/ ) を使用していますが、これは単純なリフレクションで可能でしょうか?

4

4 に答える 4

1

同様の苦情 (および回避策) が BeanUtils のバグ トラッカーに投稿されました。https://issues.apache.org/jira/browse/BEANUTILS-387を参照してください。

于 2013-10-08T13:41:02.077 に答える