Struts - получение NPE при передаче параметров в свойство bean - PullRequest
1 голос
/ 17 декабря 2011

У меня есть свойство bean в моей форме следующим образом (ставки - это HashMap от FleetRateTypeCO до FleetRate []):

public FleetRate[] getRatesByType(int typeID) {
    return this.rates.get(FleetRateTypeCO.getByID(typeID));
}

Затем в моем jsp я хочу сделать следующее:

<c:when test="${not empty DedicatedFleetContractAdminForm.ratesByType[1]}">
  ...
</c:when>

Но я получаю исключение нулевого указателя:

java.lang.NullPointerException
at javax.el.BeanELResolver$BeanProperty.read(BeanELResolver.java:259)
at javax.el.BeanELResolver$BeanProperty.access$000(BeanELResolver.java:209)
at javax.el.BeanELResolver.getValue(BeanELResolver.java:60)
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
at org.apache.el.parser.AstValue.getValue(AstValue.java:97)
at org.apache.el.parser.AstEmpty.getValue(AstEmpty.java:29)

Но что меня действительно смущает, так это то, что если я попробую следующее, все будет работать нормально:

<logic:iterate property="ratesByType[1]" name="DedicatedFleetContractAdminForm" id="overheadRates">
    ...
</logic:iterate>

Почемуони работают по-другому?Любая помощь приветствуется - спасибо заранее.

1 Ответ

0 голосов
/ 30 декабря 2011

В одном вы используете метки стоек, а в другом EL.

Попробуйте использовать тег стоек

...