Ошибка поиска свойства JSP - PullRequest
0 голосов
/ 11 марта 2010

Я получаю следующую ошибку в наших журналах:

Ошибка при поиске свойства "foo" в тип объекта "foo.bar". Причина: ноль java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor363.invoke (Неизвестно Источник) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) в java.lang.reflect.Method.invoke (Method.java:597) в org.apache.commons.beanutils.PropertyUtilsBean.invokeMethod (PropertyUtilsBean.java:1773)

Я не могу на всю жизнь воссоздать его, мне было интересно, есть ли у кого-нибудь опыт работы с такого рода проблемами с JSP / Java Bean. Я хотел знать, не помешает ли это пользователю отобразить веб-страницу?

Я знаю, что это не очень много информации, но любой совет может помочь.

Ответы [ 3 ]

1 голос
/ 11 марта 2010

Что-то на какой-то странице пытается «перейти» к экземпляру компонента (то есть объекту Java) и пытается получить свойство, которого нет в рассматриваемом компоненте.

 <span id='name'>${fn:escapeXml(someBean.user.fullName)}</span>

Если bean-компонент "someBean" не имеет свойства "user", если пользовательский объект не имеет свойства "fullName", вы получите такое исключение.

0 голосов
/ 11 марта 2010

Java вызывает метод get для bean-компонента, предоставляя свойство, которое, в свою очередь, вызывает исключение. Если вы видите целевое исключение - это целевое значение InvocationTargetException, вы будете знать, что приводит к сбою.

0 голосов
/ 11 марта 2010

Из того, что вы здесь даете, единственное, что я предлагаю, - убедиться, что у вас действительно есть свойство с именем "foo", и не иметь точки в "foo.bar". Вы не можете назвать свои переменные / объекты, используя точку в имени. JSP автоматически перейдет к поиску свойства "bar" в "foo". Назовите это вместо "fooBar".

...