Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

cdmlib / cdmlib-remote / src / main / resources / eu / etaxonomy / cdm / remote / json / jsonConfigurations.xml @ 4dee6d44

History | View | Annotate | Download (29.1 KB)

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:tx="http://www.springframework.org/schema/tx"
5
    xmlns:context="http://www.springframework.org/schema/context"
6
    xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
7
    http://www.springframework.org/schema/context   http://www.springframework.org/schema/context/spring-context-2.5.xsd
8
    http://www.springframework.org/schema/tx   http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
9
    ">
10

    
11
    <bean id="genericApiCardinalityPropertyFilter" class="eu.etaxonomy.cdm.remote.json.util.CardinalityPropertyFilter">
12
       <property name="includeToOneRelations" value="false" />
13
       <property name="includeToManyRelations" value="false" />
14
       <property name="exceptions">
15
         <set>
16
           <!--
17
             the exceptions listed here should be covered by implementations of
18
             eu.etaxonomy.cdm.persistence.dao.initializer.AutoPropertyInitializer.
19
             The according configuration files are
20
              - /cdmlib-persistence/src/main/resources/eu/etaxonomy/cdm/persistence_security.xml
21
              - /cdmlib-persistence/src/main/resources/eu/etaxonomy/cdm/persistence.xml
22
             whereas persistence.xml will be removed in the near future.
23
            -->
24
             <value>TermTree.root</value>
25
             <value>TermNode.children</value>
26
             <value>TermNode.feature</value>
27

    
28
             <value>NomenclaturalStatus.source</value>
29
             <value>DescriptionElementSource.citation</value>
30

    
31
             <value>TreeNode.data</value>
32
             <value>TreeNode.data</value>
33

    
34
             <value>PolytomousKey.root</value>
35
             <value>PolytomousKeyNode.children</value>
36
             <value>PolytomousKeyNode.question</value>
37
             <value>PolytomousKeyNode.feature</value>
38
             <value>PolytomousKeyNode.statement</value>
39
             <value>PolytomousKeyNode.modifyingText</value>
40
             <value>PolytomousKeyNode.otherNode</value>
41

    
42
             <value>LinkedPolytomousKeyNodeRowDto.childStatement</value>
43
             <value>LinkedPolytomousKeyNodeRowDto.rowQuestion</value>
44
             <value>LinkedPolytomousKeyNodeRowDto.rowFeature</value>
45
             <!-- value>LinkedPolytomousKeyNodeRowDto.keyNode</value-->
46

    
47
             <value>Media.representations</value>
48
             <value>MediaRepresentation.parts</value>
49

    
50
             <value>Sequence.marker</value>
51
             <value>Sequence.genBankAccessionNumber</value>
52
             <value>Sequence.genBankUri</value>
53

    
54
             <value>Annotation.annotationType</value>
55
             <value>Marker.markerType</value>
56

    
57
             <value>DerivationEvent.derivatives</value>
58
             <value>DerivationEvent.originals</value>
59

    
60
             <value>Point.referenceSystem</value>
61

    
62
             <!-- CardinalityPropertyFilter should allow defining exceptions for abstract super classes : -->
63
             <!-- <value>eu.etaxonomy.cdm.model.description.DescriptionElementBase.feature</value> -->
64

    
65
             <value>Synonym.sec</value>
66
             <value>Taxon.sec</value>
67

    
68
             <value>StateData.state</value>
69
             <value>StateData.modifiers</value>
70
             <value>StateData.modifyingText</value>
71

    
72
             <value>TextData.feature</value>
73
             <value>CategoricalData.feature</value>
74
             <value>CommonTaxonName.feature</value>
75
             <value>Distribution.feature</value>
76
             <value>IndividualsAssociation.feature</value>
77
             <value>QuantitativeData.feature</value>
78
             <value>TaxonInteraction.feature</value>
79
             <value>TextData.feature</value>
80
             <value>IdentifiableSource.citation</value>
81
             
82
             <value>Registration.name</value>
83
             <value>Registration.typeDesignations</value>
84
             <value>Registration.institution</value>
85

    
86
             <value>SearchResult.entity</value>
87
             
88
             <value>CdmEntity.entity</value>
89
         </set>
90
       </property>
91
     </bean>
92

    
93
     <bean id="nameCatalogueApiCardinalityPropertyFilter" class="eu.etaxonomy.cdm.remote.json.util.CardinalityPropertyFilter">
94
       <property name="includeToOneRelations" value="true" />
95
       <property name="includeToManyRelations" value="true" />
96
       <property name="exceptions">
97
         <set>
98
         </set>
99
       </property>
100
     </bean>
101

    
102
  <!--
103
         =================================================
104
            default configuration for RESTful read(/write) service
105
         =================================================
106
    -->
107
  <bean name="jsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
108
    init-method="init">
109
    <property name="jsonBeanProcessorMatcher">
110
      <bean
111
        class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmProxyBeanProcessorMatcher" />
112
    </property>
113
    <property name="defaultValueProcessorMatcher">
114
      <bean
115
        class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmDefaultValueProcessorMatcher" />
116
    </property>
117
    <property name="defaultValueProcessorMap">
118
        <map>
119
          <entry key="java.lang.Number">
120
            <bean
121
              class="eu.etaxonomy.cdm.remote.json.processor.value.CdmDefaultValueProcessor" />
122
          </entry>
123
        </map>
124
    </property>
125
    <property name="jsonBeanProcessors">
126
      <map>
127
        <entry key="org.hibernate.proxy.HibernateProxy">
128
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />
129
        </entry>
130
        <entry key="eu.etaxonomy.cdm.model.term.TermBase">
131
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TermBaseBeanProcessor">
132
             <property name="excludes">
133
               <set value-type="java.lang.String">
134
                   <value>partOf</value><!-- FIXME exclude partOf to avoid  lazy loading exceptions  -->
135
                   <value>kindOf</value><!-- FIXME exclude kindOf to avoid  lazy loading exceptions  -->
136
                   <value>infraGenericMarker</value><!-- FIXME leads to IllegalStateException if not excluded  -->
137
               </set>
138
            </property>
139
           </bean>
140
         </entry>
141
         <entry key="eu.etaxonomy.cdm.model.term.Representation">
142
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.RepresentationBeanProcessor"/>
143
         </entry>
144
         <entry key="eu.etaxonomy.cdm.model.media.Media">
145
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.MediaBeanProcessor">
146
              <property name="replaceTitle" value="true" />
147
              <property name="replaceDescription" value="true" />
148
            </bean>
149
         </entry>
150
         <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
151
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeBeanProcessor" />
152
         </entry>
153
         <entry key="eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto">
154
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeDtoBeanProcessor" />
155
        </entry>
156
         <entry key="eu.etaxonomy.cdm.model.reference.Reference">
157
              <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.ReferenceBaseBeanProcessor"/>
158
         </entry>
159
         <entry key="eu.etaxonomy.cdm.model.name.TaxonName">
160
            <bean
161
              class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameBeanProcessor">
162
              <property name="skipTaggedName" value="true" />
163
            </bean>
164
         </entry>
165
         <entry key="eu.etaxonomy.cdm.model.name.TypeDesignationBase">
166
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TypeDesignationBaseBeanProcessor"/>
167
         </entry>
168
         <entry key="eu.etaxonomy.cdm.model.description.KeyStatement">
169
              <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.KeyStatementBeanProcessor" />
170
         </entry>
171
         <entry key="eu.etaxonomy.cdm.model.agent.TeamOrPersonBase">
172
              <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TeamOrPersonBaseBeanProcessor" />
173
         </entry>
174
         <entry key="eu.etaxonomy.cdm.model.description.DescriptionElementBase">
175
              <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DescriptionElementBeanProcessor" />
176
         </entry>
177
         <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
178
         <entry key="eu.etaxonomy.cdm.model.reference.CdmLinkSource">
179
              <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.CdmLinkSourceBeanProcessor" />
180
         </entry>
181
         -->
182
         <entry key="eu.etaxonomy.cdm.model.description.StateData">
183
              <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.StateDataBeanProcessor" />
184
         </entry>
185
         <entry key="org.apache.lucene.document.Document">
186
              <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.LuceneDocumentBeanProcessor" />
187
         </entry>
188
      </map>
189
    </property>
190
    <property name="jsonPropertyFilter">
191
        <bean class="net.sf.json.filters.OrPropertyFilter">
192
          <constructor-arg>
193
              <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
194
          </constructor-arg>
195
          <constructor-arg ref="genericApiCardinalityPropertyFilter">
196
          </constructor-arg>
197
        </bean>
198
    </property>
199
    <property name="jsonValueProcessorsByClass">
200
      <map>
201
        <entry key="org.hibernate.proxy.HibernateProxy">
202
          <bean
203
            class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
204
        </entry>
205
        <entry key="java.util.UUID">
206
          <bean
207
            class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
208
        </entry>
209
        <entry key="org.joda.time.DateTime">
210
          <bean
211
            class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
212
        </entry>
213
        <entry key="java.util.Calendar">
214
          <bean
215
            class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
216
        </entry>
217
        <entry key="org.joda.time.Partial">
218
          <bean
219
            class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
220
        </entry>
221
        <entry key="java.lang.Class">
222
          <bean
223
            class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />
224
        </entry>
225
        <entry key="java.util.Map">
226
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
227
        </entry>
228
        <entry key="java.util.LinkedHashMap">
229
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
230
        </entry>
231
        <entry key="eu.etaxonomy.cdm.api.service.name.TypeDesignationSetManager.TypeDesignationWorkingSet">
232
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
233
        </entry>
234
        <entry key="java.net.URI">
235
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
236
        </entry>
237
        <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNodeStatus">
238
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor"/>
239
        </entry>
240
      </map>
241
    </property>
242
    <property name="ignoreDefaultExcludes" value="true" />
243
    <property name="excludes">
244
      <list value-type="java.lang.String">
245
        <value>declaringClass</value><!-- DefaultExclude -->
246
        <value>metaClass</value><!-- DefaultExclude -->
247
        <value>id</value>
248
        <value>cacheStrategy</value>
249
        <value>createdBy</value>
250
        <value>updatedBy</value>
251
        <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
252
        <value>cdmSourceTarget</value><! - - OriginalSourceBase.getCdmSourceTarget() -->
253
      </list>
254
    </property>
255
  </bean>
256

    
257
  <!--
258
         =================================================
259
            configuration for RESTful classification service
260
         =================================================
261
    -->
262
  <bean name="jsonConfigClassification" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
263
    init-method="init">
264
    <property name="jsonBeanProcessorMatcher">
265
      <bean
266
        class="eu.etaxonomy.cdm.remote.json.processor.matcher.HibernateProxyBeanProcessorMatcher" />
267
    </property>
268
    <property name="jsonBeanProcessors">
269
      <map>
270
        <entry key="org.hibernate.proxy.HibernateProxy">
271
          <bean
272
            class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />
273
        </entry>
274
        <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
275
          <bean
276
            class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNode2DtoBeanProcessor" />
277
        </entry>
278
        <entry key="eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto">
279
          <bean
280
            class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeDtoBeanProcessor" />
281
        </entry>
282
      </map>
283
    </property>
284
    <property name="jsonPropertyFilter">
285
      <bean class="net.sf.json.filters.OrPropertyFilter">
286
        <constructor-arg>
287
            <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
288
        </constructor-arg>
289
        <constructor-arg ref="genericApiCardinalityPropertyFilter">
290
        </constructor-arg>
291
      </bean>
292
    </property>
293
    <property name="jsonValueProcessorsByClass">
294
      <map>
295
        <entry key="org.hibernate.proxy.HibernateProxy">
296
          <bean
297
            class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
298
        </entry>
299
        <entry key="java.util.UUID">
300
          <bean
301
            class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
302
        </entry>
303
        <entry key="org.joda.time.DateTime">
304
          <bean
305
            class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
306
        </entry>
307
        <entry key="java.util.Calendar">
308
          <bean
309
            class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
310
        </entry>
311
        <entry key="org.joda.time.Partial">
312
          <bean
313
            class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
314
        </entry>
315
        <entry key="java.lang.Class">
316
          <bean
317
            class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />
318
        </entry>
319
        <entry key="java.util.Map">
320
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
321
        </entry>
322
        <entry key="java.net.URI">
323
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
324
        </entry>
325
        <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNodeStatus">
326
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor" />
327
        </entry>
328
      </map>
329
    </property>
330
    <property name="ignoreDefaultExcludes" value="true" />
331
    <property name="excludes">
332
      <list value-type="java.lang.String">
333
        <value>declaringClass</value><!-- DefaultExclude -->
334
        <value>metaClass</value><!-- DefaultExclude -->
335
        <value>id</value>
336
        <value>cacheStrategy</value>
337
        <value>createdBy</value>
338
        <value>updatedBy</value>
339
      </list>
340
    </property>
341
  </bean>
342

    
343
  <!--
344
       =================================================
345
         configuration for RESTful portal service
346
       =================================================
347
  -->
348

    
349
  <bean name="jsonConfigPortal" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
350
    init-method="init">
351
    <property name="jsonBeanProcessorMatcher">
352
      <bean
353
        class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmProxyBeanProcessorMatcher" />
354
    </property>
355
    <property name="defaultValueProcessorMatcher">
356
      <bean
357
        class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmDefaultValueProcessorMatcher" />
358
    </property>
359
    <property name="defaultValueProcessorMap">
360
        <map>
361
          <entry key="java.lang.Number">
362
            <bean
363
              class="eu.etaxonomy.cdm.remote.json.processor.value.CdmDefaultValueProcessor" />
364
          </entry>
365
        </map>
366
    </property>
367
    <property name="jsonBeanProcessors">
368
      <map>
369
        <entry key="org.hibernate.proxy.HibernateProxy">
370
          <bean
371
            class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />
372
        </entry>
373
        <entry key="eu.etaxonomy.cdm.model.taxon.TaxonBase">
374
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonBaseBeanProcessor">
375
          <property name="excludes">
376
             <set value-type="java.lang.String">
377
                 <value>acceptedTaxon</value><!-- #6211 to avoid infinite loops in the synonymy -->
378
             </set>
379
          </property>
380
         </bean>  
381
        </entry>
382
        <entry key="eu.etaxonomy.cdm.model.name.TaxonName">
383
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameBeanProcessor">
384
            <property name="excludes">
385
                <set value-type="java.lang.String">
386
                    <value>homotypicalGroup</value>
387
                </set>
388
            </property>
389
          </bean>
390
        </entry>
391
        <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
392
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeBeanProcessor">
393
                <property name="replaceMultilanguageText" value="true" />
394
            </bean>
395
        </entry>
396
        <entry key="eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto">
397
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeDtoBeanProcessor" />
398
        </entry>
399
        <entry key="eu.etaxonomy.cdm.model.name.TypeDesignationBase">
400
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TypeDesignationBaseBeanProcessor">
401
                <property name="replaceMultilanguageText" value="true" />
402
            </bean>
403
         </entry>
404
        <entry key="eu.etaxonomy.cdm.model.name.NameRelationship">
405
          <bean
406
            class="eu.etaxonomy.cdm.remote.json.processor.bean.NameRelationshipBeanProcessor" />
407
        </entry>
408
        <entry key="eu.etaxonomy.cdm.model.taxon.TaxonRelationship">
409
          <bean
410
            class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonRelationshipBeanProcessor" />
411
        </entry>
412
        <entry key="eu.etaxonomy.cdm.model.term.TermBase">
413
          <bean
414
            class="eu.etaxonomy.cdm.remote.json.processor.bean.TermBaseBeanProcessor">
415
            <property name="replaceRepresentations" value="true" />
416
            <property name="excludes">
417
                <set value-type="java.lang.String">
418
                  <value>infraGenericMarker</value><!-- FIXME leads to IllegalStateException if not excluded  -->
419
                  <value>partOf</value><!-- DefinedTermBase -->
420
                  <value>kindOf</value><!-- DefinedTermBase -->
421
                  <value>includes</value><!-- DefinedTermBase -->
422
                  <value>generalizationOf</value><!-- DefinedTermBase -->
423
                  <value>vocabulary</value><!-- DefinedTermBase -->
424
                  <!--
425
                      FIXME must exclude partOf, kindOf, includes, generalizationOf .. to
426
                      avoid class cast or lazy loading exceptions in TDWG Areas
427
                  -->
428
                </set>
429
            </property>
430
          </bean>
431
        </entry>
432
        <entry key="eu.etaxonomy.cdm.model.media.Media">
433
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.MediaBeanProcessor">
434
            <property name="replaceTitle" value="true" />
435
            <property name="replaceDescription" value="true" />
436
          </bean>
437
        </entry>
438
        <entry key="eu.etaxonomy.cdm.model.reference.Reference">
439
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.ReferenceBaseBeanProcessor"/>
440
        </entry>
441
        <entry key="eu.etaxonomy.cdm.model.description.TaxonNameDescription">
442
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameDescriptionBeanProcessor">
443
              <property name="excludes">
444
                <set value-type="java.lang.String">
445
                  <value>taxonName</value>
446
                </set>
447
              </property>
448
          </bean>
449
        </entry>
450
        <entry key="eu.etaxonomy.cdm.api.facade.DerivedUnitFacade">
451
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DerivedUnitFacadeBeanProcessor"/>
452
        </entry>
453
        <entry key="eu.etaxonomy.cdm.model.location.Point">
454
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.PointBeanProcessor"/>
455
        </entry>
456
        <entry key="eu.etaxonomy.cdm.model.agent.TeamOrPersonBase">
457
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TeamOrPersonBaseBeanProcessor" />
458
        </entry>
459
        <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
460
        <entry key="eu.etaxonomy.cdm.model.reference.CdmLinkSource">
461
              <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.CdmLinkSourceBeanProcessor" />
462
         </entry>
463
         -->
464
        <entry key="org.apache.lucene.document.Document">
465
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.LuceneDocumentBeanProcessor" />
466
        </entry>
467
        <entry key="eu.etaxonomy.cdm.common.TreeNode">
468
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TreeNodeBeanProcessor" />
469
        </entry>
470
        <entry key="eu.etaxonomy.cdm.model.description.DescriptionElementBase">
471
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DescriptionElementBeanProcessor">
472
                <property name="replaceMultilanguageText" value="true" />
473
            </bean>
474
        </entry>
475
        <entry key="eu.etaxonomy.cdm.model.description.StateData">
476
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.StateDataBeanProcessor">
477
                <property name="replaceMultilanguageText" value="true" />
478
            </bean>
479
        </entry>
480
      </map>
481
    </property>
482
        <property name="jsonPropertyFilter">
483
            <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
484
        </property>
485
    <property name="jsonValueProcessorsByClass">
486
      <map>
487
        <entry key="org.hibernate.proxy.HibernateProxy">
488
          <bean
489
            class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
490
        </entry>
491
        <entry key="java.util.UUID">
492
          <bean
493
            class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
494
        </entry>
495
        <entry key="org.joda.time.DateTime">
496
          <bean
497
            class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
498
        </entry>
499
        <entry key="java.util.Calendar">
500
          <bean
501
            class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
502
        </entry>
503
        <entry key="org.joda.time.Partial">
504
          <bean
505
            class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
506
        </entry>
507
        <entry key="java.lang.Class">
508
          <bean
509
            class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />
510
        </entry>
511
        <entry key="java.util.Map">
512
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
513
        </entry>
514
        <entry key="java.net.URI">
515
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
516
        </entry>
517
        <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNodeStatus">
518
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor" />
519
        </entry>
520
      </map>
521
    </property>
522
    <property name="ignoreDefaultExcludes" value="true" />
523
    <property name="excludes">
524
      <list value-type="java.lang.String">
525
        <value>declaringClass</value><!-- DefaultExclude -->
526
        <value>metaClass</value><!-- DefaultExclude -->
527
        <value>id</value>
528
        <!--
529
            commented out,
530
            see  #3347 (services and REST service controller for molecular classes implemented)
531
        <value>annotations</value>
532
        <value>markers</value>
533
        -->
534
        <value>cacheStrategy</value>
535
        <value>createdBy</value>
536
        <value>updatedBy</value>
537
        <value>inDescription</value>
538
        <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
539
        <value>cdmSourceTarget</value>< !- - OriginalSourceBase.getCdmSourceTarget() -->
540
      </list>
541
    </property>
542
  </bean>
543

    
544
   <!--
545
         =================================================
546
            default configuration name catalogue service
547
         =================================================
548
    -->
549
  <bean name="nameCatalogueJsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
550
    init-method="init">
551
    <property name="jsonPropertyFilter">
552
        <bean class="net.sf.json.filters.OrPropertyFilter">
553
          <constructor-arg>
554
              <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
555
          </constructor-arg>
556
          <constructor-arg ref="nameCatalogueApiCardinalityPropertyFilter">
557
          </constructor-arg>
558
        </bean>
559
    </property>
560
    <property name="jsonValueProcessorsByClass">
561
      <map>
562
        <entry key="org.hibernate.proxy.HibernateProxy">
563
          <bean
564
            class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
565
        </entry>
566
        <entry key="java.util.UUID">
567
          <bean
568
            class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
569
        </entry>
570
        <entry key="org.joda.time.DateTime">
571
          <bean
572
            class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
573
        </entry>
574
        <entry key="java.util.Calendar">
575
          <bean
576
            class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
577
        </entry>
578
        <entry key="org.joda.time.Partial">
579
          <bean
580
            class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
581
        </entry>
582
        <entry key="java.util.Map">
583
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
584
        </entry>
585
          <entry key="java.net.URI">
586
              <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
587
          </entry>
588
      </map>
589
    </property>
590
    <property name="ignoreDefaultExcludes" value="true" />
591
    <property name="excludes">
592
      <list value-type="java.lang.String">
593
        <value>class</value>
594
        <value>declaringClass</value><!-- DefaultExclude -->
595
        <value>metaClass</value><!-- DefaultExclude -->
596
        <value>id</value>
597
        <value>cacheStrategy</value>
598
        <value>createdBy</value>
599
        <value>updatedBy</value>
600
      </list>
601
    </property>
602
  </bean>
603

    
604
  <bean name="occurrenceCatalogueJsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
605
    init-method="init">
606
    <property name="jsonPropertyFilter">
607
        <bean class="net.sf.json.filters.OrPropertyFilter">
608
          <constructor-arg>
609
              <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
610
          </constructor-arg>
611
          <constructor-arg ref="nameCatalogueApiCardinalityPropertyFilter">
612
          </constructor-arg>
613
        </bean>
614
    </property>
615
    <property name="jsonValueProcessorsByClass">
616
      <map>
617
        <entry key="org.hibernate.proxy.HibernateProxy">
618
          <bean
619
            class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
620
        </entry>
621
        <entry key="java.util.UUID">
622
          <bean
623
            class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
624
        </entry>
625
        <entry key="org.joda.time.DateTime">
626
          <bean
627
            class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
628
        </entry>
629
        <entry key="java.util.Calendar">
630
          <bean
631
            class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
632
        </entry>
633
        <entry key="org.joda.time.Partial">
634
          <bean
635
            class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
636
        </entry>
637
        <entry key="java.util.Map">
638
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
639
        </entry>
640
          <entry key="java.net.URI">
641
              <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
642
          </entry>
643

    
644
      </map>
645
    </property>
646
    <property name="ignoreDefaultExcludes" value="true" />
647
    <property name="excludes">
648
      <list value-type="java.lang.String">
649
        <value>class</value>
650
        <value>declaringClass</value><!-- DefaultExclude -->
651
        <value>metaClass</value><!-- DefaultExclude -->
652
        <value>id</value>
653
        <value>cacheStrategy</value>
654
        <value>createdBy</value>
655
        <value>updatedBy</value>
656
      </list>
657
    </property>
658
  </bean>
659

    
660

    
661
</beans>
Add picture from clipboard (Maximum size: 40 MB)