#spring #web-services #wso2 #apache-commons-logging #wso2as
#spring #веб-службы #wso2 #apache-commons-ведение журнала #wso2-как
Вопрос:
Я пытаюсь развернуть службу Spring в службе приложений WSO2. Я выполнил ЭТО руководство, и приложение отлично работает в Eclipse, но когда я пытаюсь развернуть его на WSO2, я получаю эту ошибку:
Не удается загрузить компоненты Spring. Пожалуйста, проверьте файл конфигурации контекста Spring и убедитесь, что определенные компоненты Spring существуют в файле .jar.
Я .jar
разархивировал файл, и JdbcCustomerDAO
класс находится там со всеми остальными.
Контекст Spring:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="customerDAO" class="com.mkyong.customer.dao.impl.JdbcCustomerDAO">
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="url" />
<property name="username" value="username" />
<property name="password" value="password" />
</bean>
</beans>
Я также попытался включить банки spring и mysql-connector-java в / repository/components / extensions, как сказано ЗДЕСЬ .
Редактировать:
ОШИБКА {org.wso2.carbon.springservices.ui.SpringServiceMaker} — Не удается загрузить компоненты Spring. Пожалуйста, проверьте файл конфигурации контекста Spring и убедитесь, что определенные компоненты Spring существуют в файле .jar. {org.wso2.carbon.springservices.ui.SpringServiceMaker} org.springframework.beans.factory.Исключение CannotLoadBeanClassException: не удается найти класс [org.springframework.jdbc.datasource.DriverManagerDataSource] для компонента с именем ‘DataSource’, определенным в ресурсе, загружаемом через InputStream; вложенным исключением является java.lang.Исключение ClassNotFoundException: org.springframework.jdbc.datasource.DriverManagerDataSource
Похоже, он не смог найти spring-jdbc, поэтому я добавил jar
расширения to, но теперь я получаю эту ошибку:
ОШИБКА {org.wso2.carbon.springservices.ui.SpringServiceMaker} — Не удается загрузить компоненты Spring. Пожалуйста, проверьте файл конфигурации контекста Spring и убедитесь, что определенные компоненты Spring существуют в файле .jar. {org.wso2.carbon.springservices.ui.SpringServiceMaker} org.springframework.beans.factory.Исключение BeanCreationException: ошибка при создании компонента с именем ‘DataSource’, определенным в ресурсе, загруженном через InputStream: не удалось создать экземпляр компонента; вложенным исключением является org.springframework.beans.Исключение BeanInstantiationException: не удалось создать экземпляр класса bean [org.springframework.jdbc.datasource.DriverManagerDataSource]: Конструктор вызвал исключение; вложенным исключением является java.lang.Ошибка NoClassDefFoundError: org/apache/commons/logging/LogFactory
Я понимаю, что это достояние.ведение журнала также отсутствует, но когда я пытаюсь добавить его в расширения, WSO2 не запускается. Я получаю много
Log4j: не удалось создать экземпляр ОШИБКИ…
Комментарии:
1. Какую версию сервера приложений вы использовали? проверьте, добавив mysql connector jar в каталог repository / components / lib.
2. Я использую версию 5.3.0, и я попытался добавить туда соединитель, и я получаю ту же ошибку.
3. какую среду загрузки классов вы используете? Вы упаковываете всю необходимую jar в веб-приложение ur?
4. Что вы подразумеваете под средой загрузки классов? Я просто добавляю jar, который Maven создает для моего проекта. Проблема заключается в том, что когда я пытаюсь добавить сторонние библиотеки, которые нужны моему jar, commons. ведение журнала, чтобы быть более конкретным.
5. Я имею в виду среду загрузки классов, о которой вы упомянули в META-INF/webapp-classloading.xml вашего веб-приложения