<bean id="compass" class="org.compass.spring.LocalCompassBean">
<property name="resourceLocations">
<list>
<value>classpath:org/compass/sample/petclinic/petclinic.cmd.xml</value>
<value>classpath:petclinic.cpm.xml</value>
</list>
</property>
<property name="compassSettings">
<props>
<prop key="compass.engine.connection">file://${user.home}/compass/petclinic</prop>
<propkey="compass.transaction.factory">org.compass.spring.transaction.SpringSyncTransactionFactory</prop>
</props>
</property>
<property name="transactionManager">
<ref local="transactionManager" />
</property>
</bean>
<prop key="compass.engine.connection">file://${user.home}/compass/petclinic</prop>
为 <prop key="compass.engine.connection">/compass/petclinic</prop>
这样是不行的。刚开始我也是这样修改的。其实我们看一下LocalCompassBean的源代码就知道怎么做了。 if (this.compassSettings != null) {
config.getSettings().addSettings(this.compassSettings);
}
......
if (config.getSettings().getSetting(CompassEnvironment.CONNECTION) == null && connection != null) {
config.getSettings().setSetting(CompassEnvironment.CONNECTION, connection.getFile().getAbsolutePath());
}
<bean id="compass" class="org.compass.spring.LocalCompassBean">
<property name="resourceDirectoryLocations">
<list>
<value>classpath:com/jdkcn/compass</value>
</list>
</property>
<property name="connection">
<value>/lucene/indexes</value>
</property>
<property name="compassSettings">
<props>
<prop key="compass.transaction.factory">
org.compass.spring.transaction.SpringSyncTransactionFactory
</prop>
</props>
</property>
<property name="transactionManager">
<ref bean="transactionManager" />
</property>
</bean>
联系客服