2012-05-03 8 views
1

私は2つのJavaBeansを持っています。JSP、JSTL、Bean継承、PropertyNotFoundException

  1. ユーザー
  2. エンジニア

エンジニアは、ユーザーが拡張されます。

ユーザーは、このプロパティが含まれています

public String getName() { return name; } 

私のJSPが含まれています

<c:forEach var="engineer" items="${engineers}" > 
    <c:out value="${engineer.Name}" /> 
</c:forEach> 

スローされる例外は次のとおりです。JSTLが継承を見つけることができませんので

javax.el.PropertyNotFoundException: Property 'Name' not found on type Engineer 

はこれですプロパティ? UserからgetNameを継承しても、エンジニアの別のgetNameプロパティを明示的に宣言する必要がありますか?

+2

'$ {engineer.name}'を試しましたか?代わりに小文字ですか? – evanwong

+0

私は気が気になりません。明らかに '$ {engineer.name}'はプロパティの最初の文字を大文字にし、 "get"を追加します。私はJavaBeansの仕様を読むことにします。私はあなたに信用を与えることができるようにこれを答えとして入れてください。 –

+0

クール!ちょうど答えとしてそれを追加しました。 :) – evanwong

答えて

1

${engineer.name} 

nameは小文字であるべきであるべきです。