2017-10-15 5 views
0

あるBeanから別のBeanにBean/Pojo値をコピーしています。Beanutilsクラスの不明なプロパティ:pinkyMoreAndMore works pMoreAndMoreなし

Beanutilsはうまく機能します。

今朝は

Unknown property on class 

例外を発生させたプロパティにぶつかりました。

は、プロパティの名前は「pMoreAndMore」で、ゲッターとセッターは、私は、次のプロパティ名「pMoreAndMore」を用いて値をコピーしようとgetPMoreAndMoreような信頼できるロンボク()

によって生成されたが、これは例外上に生じました。

オンラインで検索していませんでしたが、見つからなかったので、getPinkyMoreAndMore()などのゲッターを生成してプロパティを「pinkyMoreAndMore」に変更し、プロパティ名「pinkyMoreAndMore」を使用してbeanutilsで値をコピーしました。

ここに問題はありません。

「pinkyMoreAndMore」は動作しますが、「pMoreAndMore」はエラーを引き起こすのはなぜですか? キャメルケースなどについては、これは端的なケースでしょうか?

+1

あなたは 'PMoreAndMore'でテストできますか?私はロンボクゲッターのデフォルト名が、いくつかのBeanユーティリティが期待しているものではないという状況にどこかでぶつかりました。あるいは、 'getpMoreAndMore'、' getPmoreAndMore'のようなセッターを生成するようlombokに指示しますか?それが事実であるかどうかだけを確認する。 – pirho

+0

@pirho私は "PMoreAndMore"にショットを与えて、それが動作するようにしました。奇妙なことに、私はあなたが正しいと思うのは、これらの場合にロンボクとボーヌチルの間に互換性がないということです。知っておいてよかった! –

答えて

1

のJava Beanの仕様は少しより多くの人々がcommongly考えること特有のものである:

property - getter 
----------------- 
     aa - getaa() 
     aA - getaA() 
     Aa - getaa() 
     AA - getAA() 

pMoreAndMoreためのゲッターがgetpMoreAndMore()名前を付ける必要がありspecificationによります。これはBeanUtilsが期待するものです。ロンボクがプロパティアクセサーの名前付けに関するいくつかの一般的な妄想に従うという事実は、バグとみなされるべきです。

詳細および詳細については、次の記事Java Tip #6 - Don't capitalize first two letters of a bean property nameを参照してください。

+0

乾杯@アレ。私はロンボクgithubで問題を作りました:https://github.com/rzwitserloot/lombok/issues/1496 –

関連する問題