All Downloads are FREE. Search and download functionalities are using the official Maven repository.

META-INF.spring.module-context.xml Maven / Gradle / Ivy

The newest version!
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:osgi-compendium="http://www.springframework.org/schema/osgi-compendium"
	xsi:schemaLocation="
			http://www.springframework.org/schema/beans
				http://www.springframework.org/schema/beans/spring-beans.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	
			http://www.springframework.org/schema/osgi-compendium
    			http://www.springframework.org/schema/osgi-compendium/spring-osgi-compendium.xsd
    		http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">

	<!-- general business specific -->

	<context:property-placeholder
		properties-ref="net.nan21.dnet.properties"/>

	<!-- Default properties -->
	<osgi-compendium:cm-properties id="net.nan21.dnet.properties"
		persistent-id="net.nan21.dnet">
		<prop key="emf.persistenceUnitName">net.nan21.dnet</prop>
		<prop key="eclipselink.ddl-generation">create-tables</prop>
		<prop key="eclipselink.application-location"></prop>
		<prop key="eclipselink.ddl-generation.output-mode">database</prop>
		<prop key="eclipselink.logging.level">FINEST</prop>
		<prop key="eclipselink.logging.timestamp">true</prop>
		<prop key="eclipselink.logging.session">true</prop>
		<prop key="eclipselink.logging.thread">true</prop>
		<prop key="eclipselink.logging.exceptions">true</prop>
				 
		<prop key="eclipselink.cache.type.default">SoftWeak</prop>
		<prop key="eclipselink.cache.size.default">1000</prop>
		<prop key="eclipselink.cache.shared.default">false</prop>
		<prop key="eclipselink.flush-clear.cache">DropInvalidate</prop>
	</osgi-compendium:cm-properties>

	<context:annotation-config />

	<!-- Based on the -Ddnet.emf.type system property import the proper xml files 
		to configure the entity-manager-factory and transaction manager beans. It 
		is recommended to use the 'shared' value to have one global application level 
		entity manager factory. See the nan21.dnet.modules_oss.jpa_all bundle for 
		more details. -->

    <import resource="emf/mc-emf-${dnet.emf.type}.xml"/>

  	<bean id="serviceLocator" 
  		class="net.nan21.dnet.core.business.service.ServiceLocatorBusiness"/>

	<bean id="baseAsgnTxService" scope="prototype"
	  	class="net.nan21.dnet.core.business.service.asgn.DefaultAsgnTxService"/>

	<bean id="entityServiceFactory" 
		class="net.nan21.dnet.core.business.service.entity.EntityServiceFactory"/>

	<bean id="asgnTxServiceFactory" class="net.nan21.dnet.core.business.service.asgn.AsgnTxServiceFactory">
		<property name="name" value="nan21.dnet.module.md.business"/>
	</bean> 

	<tx:annotation-driven mode="aspectj"/>

	<!-- Transaction manager configuration. -->

	<!-- The insert, update, delete and doSomething() methods of the entity 
	services are transactional. -->

	<tx:advice id="txAdvice" transaction-manager="transactionManager">
		<tx:attributes>
			<tx:method name="insert" read-only="false" rollback-for="BusinessException"/>
			<tx:method name="update" read-only="false" rollback-for="BusinessException"/>
			<tx:method name="delete*" read-only="false" rollback-for="BusinessException"/>
			<tx:method name="do*" read-only="false" rollback-for="BusinessException"/>
		</tx:attributes>
	</tx:advice>

	<!-- The assignment business service has the following transactional methods. -->

	<tx:advice id="txAdviceAsgn" transaction-manager="transactionManager">
		<tx:attributes>
			<tx:method name="setup" read-only="false" rollback-for="BusinessException"/>
			<tx:method name="reset" read-only="false" rollback-for="BusinessException"/>
			<tx:method name="save" read-only="false" rollback-for="BusinessException"/>
			<tx:method name="move*" read-only="false" rollback-for="BusinessException"/>
		</tx:attributes>
	</tx:advice>

	<tx:advice id="txAdviceSetupParticipant" transaction-manager="transactionManager">
		<tx:attributes>
			<tx:method name="execute" read-only="false"/>
		</tx:attributes>
	</tx:advice>

	<aop:config>
		<aop:pointcut id="entityServiceMethods" expression="bean(*Service)"/>
		<aop:pointcut id="asgnTxServiceMethods" expression="bean(baseAsgnTxService)"/>
		<aop:pointcut id="setupParticipantRun" expression="bean(setupParticipant)"/>

		<aop:advisor advice-ref="txAdvice" pointcut-ref="entityServiceMethods"/>
		<aop:advisor advice-ref="txAdviceAsgn" pointcut-ref="asgnTxServiceMethods"/>
		<aop:advisor advice-ref="txAdviceSetupParticipant" pointcut-ref="setupParticipantRun"/>
	</aop:config>

	<bean id="setupParticipant" class="net.nan21.dnet.module.md._businessdelegates.Setup_MD" scope="singleton">
		<property name="ranking" value="80"></property>
	</bean>

	<!-- module business specific -->


	<!-- Entity services -->

	<import resource="beans/acc.xml"/>
	<import resource="beans/activity.xml"/>
	<import resource="beans/base.tx.xml"/>
	<import resource="beans/base.tax.xml"/>
	<import resource="beans/base.period.xml"/>
	<import resource="beans/bp.xml"/>
	<import resource="beans/mm.price.xml"/>
	<import resource="beans/mm.prod.xml"/>
	<import resource="beans/org.xml"/>
	<import resource="beans/res.xml"/>
	<import resource="beans/tx.acc.xml"/>
	<import resource="beans/tx.fin.xml"/>
	<import resource="beans/tx.inventory.xml"/>
</beans>




© 2015 - 2025 Weber Informatics LLC | Privacy Policy