Spring @Autowired не работает с DWR

#dwr #spring-3

#dwr #spring-3

Вопрос:

Вот мой уровень обслуживания:

 @Service
@RemoteProxy
public class ReturnToDWR{

    @Autowired
    private DAOLayer daoLayer;    

    @RemoteMethod
    public List<String> returnRecord(String id){
        List<String> list = daoLayer.returnPendingRecords(id);
        return list;
    }    
}
  

Настройка конфигурации DWR в applicationContext.xml файл:

 <dwr:configuration />
    <dwr:controller id="dwrController" debug="true" />

    <bean id="returnToDWR" class="com.service.ReturnToDWR">     
        <dwr:remote javascript="returnToDWR">
            <dwr:include method="returnRecord" />
        </dwr:remote>
    </bean>
  

Когда я вызываю returnRecord() со своего контроллера, он работает. Но когда я вызываю тот же метод из jsp, используя DWR, он показывает мне NullPointerException on List<String> list = daoLayer.returnPendingRecords(id); line.

Я думаю, что spring не может выполнить автоматическое подключение private DAOLayer daoLayer; в случае DWR.
Пожалуйста, скажите мне, как я могу исправить свой код для работы с DWR?
Спасибо
, мошенники

Ответ №1:

Когда вы помещаете точку торможения в эту строку, можете ли вы увидеть в отладчике, что значение daoLayer действительно равно null? Возможно ли, что значение id равно null и это вызывает исключение NullPointerException внутри метода returnPendingRecords?

Комментарии:

1. Да, вы правы. это было значение null. Теперь это работает. Я устранил проблему. это была какая-то проблема с конфигурацией. Я скоро опубликую свое исправление.