5

このエラーが発生しましたが、問題がどこにあるのかわかりません。「userid」列はデータベースにあり、Beanにあります。誰かが何か考えを持っていますか?

org.apache.jasper.JasperException: An exception occurred processing JSP page /user.jsp     at line 24  

21:   
22:     <form method="POST" action="AdminServlet" name="frmAddUser">  
23:         User ID : <input type="text" readonly="readonly" name="userid"  
24:             value="<c:out value="${user.userid}" />" />   
Username : <input  
25:             type="text" name="firstName"  
26:             value="<c:out value="${user.firstName}" />" />   
LastName : <input  
27:             type="text" name="lastName"  

root cause   

javax.el.PropertyNotFoundException: Property 'userid' not found on type java.lang.String 

ありがとうございました。

4

3 に答える 3

4

例外は、基本的にそれ${user}が普通のjava.lang.String. javadocによると、実際にはプロパティgetUserid()を表すメソッドはありません。userid

Userプレーンなバニラではなく、目的のスコープに具体的なインスタンスを設定していることを確認してくださいString。スコープ変数をどのように準備しているかを質問のどこにも示していないため、それについて的を絞った答えを出すことはできませんが、少なくとも次のようになるはずです。

User user = userService.find(id);
request.setAttribute("user", user); // and thus not e.g. setAttribute("user", "user") or something.
于 2012-12-10T19:31:40.553 に答える
0

私によると、次のいずれかが当てはまるはずです

  • useridデータ型が Bean で対応するものと一致しません。integerそれはdbにあるかもしれません。

  • プロパティが Bean クラスで定義されていません。名前は異なる場合があり、userid.

于 2012-12-10T19:26:02.960 に答える