]> SALOME platform Git repositories - tools/siman.git/blob - Workspace/3dparty_src/spring/schema/spring-tx-3.0.xsd
Salome HOME
398e6f43d409d79c095f6c92bddddd09819f8741
[tools/siman.git] / Workspace / 3dparty_src / spring / schema / spring-tx-3.0.xsd
1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
3 <xsd:schema xmlns="http://www.springframework.org/schema/tx"
4                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
5                 xmlns:beans="http://www.springframework.org/schema/beans"
6                 xmlns:tool="http://www.springframework.org/schema/tool"
7                 targetNamespace="http://www.springframework.org/schema/tx"
8                 elementFormDefault="qualified"
9                 attributeFormDefault="unqualified">
10
11         <xsd:import namespace="http://www.springframework.org/schema/beans" schemaLocation="http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"/>
12         <xsd:import namespace="http://www.springframework.org/schema/tool" schemaLocation="http://www.springframework.org/schema/tool/spring-tool-3.0.xsd"/>
13
14         <xsd:annotation>
15                 <xsd:documentation><![CDATA[
16         Defines the elements used in the Spring Framework's declarative
17         transaction management infrastructure.
18                 ]]></xsd:documentation>
19         </xsd:annotation>
20
21         <xsd:element name="advice">
22                 <xsd:complexType>
23                         <xsd:annotation>
24                                 <xsd:documentation source="java:org.springframework.transaction.interceptor.TransactionInterceptor"><![CDATA[
25         Defines the transactional semantics of the AOP advice that is to be
26         executed.
27         
28         That is, this advice element is where the transactional semantics of
29         any     number of methods are defined (where transactional semantics
30         includes the propagation settings, the isolation level, the rollback
31         rules, and suchlike).
32                                 ]]></xsd:documentation>
33                                 <xsd:appinfo>
34                                         <tool:annotation>
35                                                 <tool:exports type="org.springframework.transaction.interceptor.TransactionInterceptor"/>
36                                         </tool:annotation>
37                                 </xsd:appinfo>
38                         </xsd:annotation>
39                         <xsd:complexContent>
40                                 <xsd:extension base="beans:identifiedType">
41                                         <xsd:sequence>
42                                                 <xsd:element name="attributes" type="attributesType" minOccurs="0" maxOccurs="1"/>
43                                         </xsd:sequence>
44                                         <xsd:attribute name="transaction-manager" type="xsd:string" default="transactionManager">
45                                                 <xsd:annotation>
46                                                         <xsd:documentation source="java:org.springframework.transaction.PlatformTransactionManager"><![CDATA[
47         The bean name of the PlatformTransactionManager that is to be used
48         to drive transactions.
49         
50         This attribute is not required, and only needs to be specified
51         explicitly if the bean name of the desired PlatformTransactionManager
52         is not 'transactionManager'.
53                                                         ]]></xsd:documentation>
54                                                         <xsd:appinfo>
55                                                                 <tool:annotation kind="ref">
56                                                                         <tool:expected-type type="org.springframework.transaction.PlatformTransactionManager"/>
57                                                                 </tool:annotation>
58                                                         </xsd:appinfo>
59                                                 </xsd:annotation>
60                                         </xsd:attribute>
61                                 </xsd:extension>
62                         </xsd:complexContent>
63                 </xsd:complexType>
64         </xsd:element>
65
66         <xsd:element name="annotation-driven">
67                 <xsd:complexType>
68                         <xsd:annotation>
69                                 <xsd:documentation source="java:org.springframework.transaction.annotation.AnnotationTransactionAttributeSource"><![CDATA[
70         Indicates that transaction configuration is defined by Java 5
71         annotations on bean classes, and that proxies are automatically
72         to be created for the relevant annotated beans.
73
74         The default annotations supported are Spring's @Transactional
75         and EJB3's @TransactionAttribute (if available).
76
77         Transaction semantics such as propagation settings, the isolation level,
78         the rollback rules, etc are all defined in the annotation metadata.
79                                 ]]></xsd:documentation>
80                         </xsd:annotation>
81                         <xsd:attribute name="transaction-manager" type="xsd:string" default="transactionManager">
82                                 <xsd:annotation>
83                                         <xsd:documentation source="java:org.springframework.transaction.PlatformTransactionManager"><![CDATA[
84         The bean name of the PlatformTransactionManager that is to be used
85         to drive transactions.
86         
87         This attribute is not required, and only needs to be specified
88         explicitly if the bean name of the desired PlatformTransactionManager
89         is not 'transactionManager'.
90                                         ]]></xsd:documentation>
91                                         <xsd:appinfo>
92                                                 <tool:annotation kind="ref">
93                                                         <tool:expected-type type="org.springframework.transaction.PlatformTransactionManager"/>
94                                                 </tool:annotation>
95                                         </xsd:appinfo>
96                                 </xsd:annotation>
97                         </xsd:attribute>
98                         <xsd:attribute name="mode" default="proxy">
99                                 <xsd:annotation>
100                                         <xsd:documentation><![CDATA[
101         Should annotated beans be proxied using Spring's AOP framework,
102         or should they rather be weaved with an AspectJ transaction aspect?
103
104         AspectJ weaving requires spring-aspects.jar on the classpath,
105         as well as load-time weaving (or compile-time weaving) enabled.
106
107         Note: The weaving-based aspect requires the @Transactional annotation to be
108         defined on the concrete class. Annotations in interfaces will not work
109         in that case (they will rather only work with interface-based proxies)!
110                                         ]]></xsd:documentation>
111                                 </xsd:annotation>
112                                 <xsd:simpleType>
113                                         <xsd:restriction base="xsd:string">
114                                                 <xsd:enumeration value="proxy"/>
115                                                 <xsd:enumeration value="aspectj"/>
116                                         </xsd:restriction>
117                                 </xsd:simpleType>
118                         </xsd:attribute>
119                         <xsd:attribute name="proxy-target-class" type="xsd:boolean" default="false">
120                                 <xsd:annotation>
121                                         <xsd:documentation><![CDATA[
122         Are class-based (CGLIB) proxies to be created? By default, standard
123         Java interface-based proxies are created.
124
125         Note: Class-based proxies require the @Transactional annotation to be
126         defined on the concrete class. Annotations in interfaces will not work
127         in that case (they will rather only work with interface-based proxies)!
128                                         ]]></xsd:documentation>
129                                 </xsd:annotation>
130                         </xsd:attribute>
131                         <xsd:attribute name="order" type="xsd:int">
132                                 <xsd:annotation>
133                                         <xsd:documentation source="java:org.springframework.core.Ordered"><![CDATA[
134         Controls the ordering of the execution of the transaction advisor
135         when multiple advice executes at a specific joinpoint.
136                                         ]]></xsd:documentation>
137                                 </xsd:annotation>
138                         </xsd:attribute>
139                 </xsd:complexType>
140         </xsd:element>
141
142         <xsd:element name="jta-transaction-manager">
143                 <xsd:annotation>
144                         <xsd:documentation><![CDATA[
145         Creates a default JtaTransactionManager bean with name "transactionManager",
146         matching the default bean name expected by the "annotation-driven" tag.
147         Automatically detects WebLogic, WebSphere and OC4J: creating a WebLogicJtaTransactionManager,
148         WebSphereUowTransactionManager or OC4JJtaTransactionManager, respectively.
149
150         For customization needs, consider defining a JtaTransactionManager bean as a regular
151         Spring bean definition with name "transactionManager", replacing this element.
152                         ]]></xsd:documentation>
153                         <xsd:appinfo>
154                                 <tool:annotation>
155                                         <tool:exports type="org.springframework.transaction.jta.JtaTransactionManager"/>
156                                 </tool:annotation>
157                         </xsd:appinfo>
158                 </xsd:annotation>
159         </xsd:element>
160
161         <xsd:complexType name="attributesType">
162                 <xsd:sequence>
163                         <xsd:element name="method" minOccurs="1" maxOccurs="unbounded">
164                                 <xsd:complexType>
165                                         <xsd:attribute name="name" type="xsd:string" use="required">
166                                                 <xsd:annotation>
167                                                         <xsd:documentation><![CDATA[
168         The method name(s) with which the transaction attributes are to be
169         associated. The wildcard (*) character can be used to associate the
170         same transaction attribute settings with a number of methods; for
171         example, 'get*', 'handle*', '*Order', 'on*Event', etc.
172                                                         ]]></xsd:documentation>
173                                                 </xsd:annotation>
174                                         </xsd:attribute>
175                                         <xsd:attribute name="propagation" default="REQUIRED">
176                                                 <xsd:annotation>
177                                                         <xsd:documentation source="java:org.springframework.transaction.annotation.Propagation"><![CDATA[
178         The transaction propagation behavior.
179                                                         ]]></xsd:documentation>
180                                                 </xsd:annotation>
181                                                 <xsd:simpleType>
182                                                         <xsd:restriction base="xsd:string">
183                                                                 <xsd:enumeration value="REQUIRED"/>
184                                                                 <xsd:enumeration value="SUPPORTS"/>
185                                                                 <xsd:enumeration value="MANDATORY"/>
186                                                                 <xsd:enumeration value="REQUIRES_NEW"/>
187                                                                 <xsd:enumeration value="NOT_SUPPORTED"/>
188                                                                 <xsd:enumeration value="NEVER"/>
189                                                                 <xsd:enumeration value="NESTED"/>
190                                                         </xsd:restriction>
191                                                 </xsd:simpleType>
192                                         </xsd:attribute>
193                                         <xsd:attribute name="isolation" default="DEFAULT">
194                                                 <xsd:annotation>
195                                                         <xsd:documentation source="java:org.springframework.transaction.annotation.Isolation"><![CDATA[
196         The transaction isolation level.
197                                                         ]]></xsd:documentation>
198                                                 </xsd:annotation>
199                                                 <xsd:simpleType>
200                                                         <xsd:restriction base="xsd:string">
201                                                                 <xsd:enumeration value="DEFAULT"/>
202                                                                 <xsd:enumeration value="READ_UNCOMMITTED"/>
203                                                                 <xsd:enumeration value="READ_COMMITTED"/>
204                                                                 <xsd:enumeration value="REPEATABLE_READ"/>
205                                                                 <xsd:enumeration value="SERIALIZABLE"/>
206                                                         </xsd:restriction>
207                                                 </xsd:simpleType>
208                                         </xsd:attribute>
209                                         <xsd:attribute name="timeout" type="xsd:integer" default="-1">
210                                                 <xsd:annotation>
211                                                         <xsd:documentation><![CDATA[
212         The transaction timeout value (in seconds).
213                                                         ]]></xsd:documentation>
214                                                 </xsd:annotation>
215                                         </xsd:attribute>
216                                         <xsd:attribute name="read-only" type="xsd:boolean" default="false">
217                                                 <xsd:annotation>
218                                                         <xsd:documentation><![CDATA[
219         Is this transaction read-only?
220                                                         ]]></xsd:documentation>
221                                                 </xsd:annotation>
222                                         </xsd:attribute>
223                                         <xsd:attribute name="rollback-for" type="xsd:string">
224                                                 <xsd:annotation>
225                                                         <xsd:documentation><![CDATA[
226         The Exception(s) that will trigger rollback; comma-delimited.
227         For example, 'com.foo.MyBusinessException,ServletException'
228                                                         ]]></xsd:documentation>
229                                                 </xsd:annotation>
230                                         </xsd:attribute>
231                                         <xsd:attribute name="no-rollback-for" type="xsd:string">
232                                                 <xsd:annotation>
233                                                         <xsd:documentation><![CDATA[
234         The Exception(s) that will *not* trigger rollback; comma-delimited.
235         For example, 'com.foo.MyBusinessException,ServletException'
236                                                         ]]></xsd:documentation>
237                                                 </xsd:annotation>
238                                         </xsd:attribute>
239                                 </xsd:complexType>
240                         </xsd:element>
241                 </xsd:sequence>
242         </xsd:complexType>
243
244 </xsd:schema>