Есть ли хороший способ диагностировать проблему создания Spring bean / service? - PullRequest
2 голосов
/ 06 августа 2011

Мой проект использует spring и spring-dm для конфигурации bean / service.Когда я пытаюсь импортировать старый проект, который также использует spring для DI, bean не будет создан.

Пример для пояснения:

Сначала я определяю URL-псевдоним в spring-appContext.xml

<bean name="xxxx" class="XRegistry" init-method="init">
    <property name="webRoot" value="/WebContent"></property>
    <property name="alias" value="/test"></property>
    <property name="cAliasPattern" value="/test/*.do" />
    <property name="conConfigFile" value="ddd.xml"/>
</bean>

в ddd.xml, я определяю некоторый компонент контроллерас URL-адресом, как /test/abc.do

При запуске как среды OSGi в eclipse ошибок не возникает.Но когда я пытаюсь получить доступ к URL (/test/abc.do)) " Неизвестный OSGi URL :" встречается.

Проблема действительно смущает меня, я не понимаю, гдеНачните.Мой пакет зависит от весенних пакетов и имеет appContext.xml и dispatcher.xml.Просто нормальный сценарий использования весны.

Поскольку весна кажется мне черным ящиком, я могу попробовать только некоторые другие возможные причины, которые я могу придумать, но до сих пор не исправил это.Кто-нибудь знает, как контролировать процесс запуска весной или полезные журналы?

Спасибо.

Редактировать при использовании spring-dm вам необходимо создать новый фрагмент, включающий log4j.properties, чтобы включить ведение журнала.Это может помочь вам отследить ошибку запуска пружины.

Как я объясняю в 1-м ответе, найдена основная причина, два варианта,

  1. Для этих пакетов существуют как в рабочей области, так и вцелевая платформа, увеличьте версию пакета в текущей рабочей области.При возникновении ошибки вы также должны просмотреть пакеты зависимостей
  2. Удалить пакеты высокой версии на целевой платформе.

1 Ответ

3 голосов
/ 10 августа 2011

Вы пытались установить уровень журнала для платформы Spring для отладки?

Например:

log4j.rootLogger=WARN, stdout
[...]
log4j.logger.org.springframework=DEBUG

Это всегда моя первая отправная точка при попытке диагностировать проблемы с созданием bean-компонента.

...