У меня есть отдельное приложение, которое использует JPA. Я хочу настроить его как в разделе 13.5 руководства. Эта часть руководства является простой, когда речь заходит о том, что должно быть в файле конфигурации .xml. Я справился с несколькими проблемами, но теперь я заблокирован исключением, приведенным ниже, с жалобой на LoadTimeWeaver, который я указал в руководстве.
Исключение и мой файл конфигурации приведены ниже.
Кто-нибудь получил пример в разделе 13.5, настроенный и работающий?
Кроме того, есть ли пример кода, который будет сопровождать руководство? Это очень помогло бы.
Спасибо.
Исключение в потоке "main" org.springframework.beans.factory.BeanCreationExce ption: Ошибка создания компонента с именем loadTimeWeaver: Ошибка инициализации компонента; вложенное исключение - java.lang.IllegalStateException: ClassLoader [sun.misc.Launcher $ AppClassLoader] НЕ предоставляет метод addTransformer (ClassFileTransformer). Укажите пользовательский LoadTimeWeaver или запустите виртуальную машину Java с агентом Spring: -javaagent: spring-agent.jar
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
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.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">
<context:annotation-config/>
<context:load-time-weaver/>
<bean id="emf" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean" >
<property name="loadTimeWeaver">
<bean class="org.springframework.instrument.classloading.ReflectiveLoadTimeWeaver"/>
</property>
</bean>
<bean id="appraisalBusiness" class="business.AppraisalBusiness">
</bean>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="org.postgresql.Driver"/>
<property name="url" value="jdbc:postgresql:eqg"/>
<property name="username" value="eqg"/>
<property name="password" value="eqg"/>
</bean>
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
<aop:config>
<aop:pointcut id="allServiceMethods" expression="execution(* business.*.*(..))"/>
<aop:advisor advice-ref="defaultTransactionAdvice" pointcut-ref="allServiceMethods"/>
</aop:config>
<tx:advice id="defaultTransactionAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method
name="*"
isolation="DEFAULT"
propagation="REQUIRED"
no-rollback-for="java.lang.RuntimeException"
timeout="100"/>
<tx:method
name="get*"
read-only="true"/>
</tx:attributes>
</tx:advice>
</beans>