Используя сессию определил объем боба Spring с DWR

Spring: 2.5.6. SEC01

DWR: 2.0.5

Я хотел бы использовать ограниченный по объему боб сессии от DWR. Это хорошо работает, когда я настраиваю боб, чтобы быть одиночным элементом. Я прочитал эту обучающую программу: (http://directwebremoting.org/dwr/server/integration/spring.html) и измененный мой applicationContext.xml, но это все еще неправильно где-нибудь.

Мой applicationContext.xml:

http://pastebin.com/m8d57f18

Она Оркни хорошо, но когда я использую функцию Ajax, я получаю это исключение:

11:31:09  593 ИНФОРМАЦИИ [DefaultRemoter] Должностное лицо: DBTestAjaxFunc.testJNDI () 11:31:09  609 ПРЕДУПРЕЖДАЮТ отказавшее осуществление Метода [DefaultRemoter]: org.springframework.beans.factory. BeanCreationException: Ошибка, создающая боб с именем 'scopedTarget.dbtestajax': Объем 'сессия' не активен для текущего потока; рассмотрите определение ограниченного по объему прокси для этого боба, если Вы намереваетесь обратиться к нему от одиночного элемента; вложенная исключительная ситуация является java.lang. IllegalStateException: Никакой ограниченный потоком запрос не нашел: Вы относитесь для запроса атрибутов за пределами фактического веб-запроса или обрабатываете запрос за пределами первоначально получающего потока? Если Вы на самом деле действуете в рамках веб-запроса и все еще получаете это сообщение, Ваш код, вероятно, работает за пределами DispatcherServlet/DispatcherPortlet: В этом случае используйте RequestContextListener или RequestContextFilter для представления текущего запроса.

Это кажется, что прокси aop не был создан, но я не знаю почему.

Освобождает в пути к классу:

  • aspectjrt.jar
  • aspectjweaver.jar
  • cglib-nodep-2.2.jar
  • dwr.jar
  • spring.jar
  • пружина-aop.jar
  • spring-dwr-2.0.xsd
  • пружина-web.jar
  • пружина-webmvc.jar

Какая-либо идея? (Спасибо!)

5
задан skaffman 26 January 2010 в 11:09
поделиться

1 ответ

Для того, чтобы в весеннем порядке, или запрашиваемые запрашиваемые фасоли для работы, что-то должно связать текущий запрос и сеанс с текущим потоком. Обычно это будет сделано DispatcherServlevled , но если вы не используете это, то вам нужна альтернатива.

Альтернатива в этом случае составляет requestextListener или RequestContextFilter , любой из которых вы можете подключить к вашему Web.xml , и оба ОС, который позволит Вы используете запросы и сессионные бобы. Просто убедитесь, что вы настраиваете их в web.xml , чтобы запросы DWR проходят через них.

7
ответ дан 14 December 2019 в 04:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: