【发布时间】:2014-06-27 03:23:51
【问题描述】:
我正在尝试将属性文件读入 confluence 插件中的 spring 上下文。我已将以下上下文文件添加到 META-INF/spring:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:atlassian-spring="http://www.atlassian.com/schema/atlassian-spring"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.atlassian.com/schema/atlassian-spring http://www.atlassian.com/schema/atlassian-spring/atlassian.xsd">
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="db.properties"/>
</bean>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="url" value="${db.url}" />
<property name="driverClassName" value="${db.driver}" />
<property name="username" value="${db.user}" />
<property name="password" value="${db.password}" />
</bean></beans>
我还在 pom.xml 中添加了以下依赖项:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>2.5.6.SEC02</version>
<scope>provided</scope>
</dependency>
不幸的是,我不断收到 PropertyPlaceholderConfigurer 的 ClassNotFoundException。 据我所知,这是一个 OSGi 问题——因为该类不是从代码中引用的,它不是由 OSGi 添加的。 在这里:https://developer.atlassian.com/display/DOCS/ClassNotFoundException 我发现我应该在 atlassian-plugin.xml 中的 spring beans 包中添加 Import-Package 但添加:
<bundle-instructions>
<Import-Package>org.springframework.beans*</Import-Package>
</bundle-instructions>
没有帮助。 有什么建议吗?
【问题讨论】:
-
查看您提供的链接和您拥有的链接,您似乎缺少
,。我猜它应该是<Import-Package>org.springframework.beans,*</Import-Package>
标签: spring maven osgi confluence