fa22293b3d859078dc0ef259d1e3d3d3a016676a
[JavaForFun] /
1 <?xml version="1.0" encoding="UTF-8"?>
2 <beans xmlns="http://www.springframework.org/schema/beans"
3   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4   xmlns:context="http://www.springframework.org/schema/context"
5   xmlns:util="http://www.springframework.org/schema/util"
6   xmlns:task="http://www.springframework.org/schema/task"
7
8   xsi:schemaLocation="http://www.springframework.org/schema/beans 
9                       http://www.springframework.org/schema/beans/spring-beans.xsd
10                       http://www.springframework.org/schema/context 
11                       http://www.springframework.org/schema/context/spring-context.xsd
12                       http://www.springframework.org/schema/util 
13                       http://www.springframework.org/schema/util/spring-util.xsd
14                       http://www.springframework.org/schema/task
15                                   http://www.springframework.org/schema/task/spring-task-3.0.xsd">
16
17     <!--
18         Searches for beans in packages (instead of XML configuration we can use
19         in this way annotations like @Service, @Endpoint, etc, etc)
20     -->
21     <context:component-scan base-package="de.spring.emails"/>
22     
23     
24     <!--  Enable Asynchronous Spring Tasks -->
25         <task:annotation-driven />
26         <task:executor id="asyncEmailSender" pool-size="0-2" keep-alive="60"
27                 queue-capacity="2" rejection-policy="CALLER_RUNS" />
28         
29
30         <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
31                 <property name="host" value="smtp.gumartinm.name"/>
32                 <property name="port" value="25"/>
33                 <property name="defaultEncoding" value="UTF-8"/>
34         </bean>
35
36         <bean id="mailVelocityEngine"
37                 class="org.springframework.ui.velocity.VelocityEngineFactoryBean">
38                 <property name="velocityProperties">                    
39                         <props>
40                     <prop key="resource.loader">class</prop>
41                     <prop key="class.resource.loader.class">
42                         org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
43                     </prop>
44                     <prop key="velocimacro.library">email/macro.vm</prop>            
45                 </props>        
46                 </property>
47         </bean>
48
49         <bean name="mailMessageSource" class="org.springframework.context.support.ResourceBundleMessageSource"> 
50             <property name="basename"> 
51                 <value>email.email-messages</value> 
52             </property> 
53             <property name="defaultEncoding" value="UTF-8"/>
54         </bean>
55         
56         <bean id="emailService"
57                 class="de.spring.emails.services.impl.EmailServiceImpl">
58                 <constructor-arg ref="mailSender" />
59         </bean>
60         
61         <bean id="emailMakerService"
62                 class="de.spring.emails.services.impl.EmailMakerServiceImpl">
63                 <constructor-arg ref="mailVelocityEngine" />
64                 <constructor-arg ref="mailMessageSource" />
65         </bean>
66         
67 </beans>