Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

cdmlib / cdmlib-remote / src / main / resources / eu / etaxonomy / cdm / remote / json / jsonConfigurations.xml @ 36fc6b9d

History | View | Annotate | Download (26.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.citation</value>
29

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

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

    
40
             <value>LinkedPolytomousKeyNodeRowDto.childStatement</value>
41
             <value>LinkedPolytomousKeyNodeRowDto.rowQuestion</value>
42
             <value>LinkedPolytomousKeyNodeRowDto.rowFeature</value>
43
             <!-- value>LinkedPolytomousKeyNodeRowDto.keyNode</value-->
44

    
45
             <value>Media.representations</value>
46
             <value>MediaRepresentation.parts</value>
47

    
48
             <value>Sequence.marker</value>
49
             <value>Sequence.genBankAccessionNumber</value>
50
             <value>Sequence.genBankUri</value>
51

    
52
             <value>Annotation.annotationType</value>
53
             <value>Marker.markerType</value>
54

    
55
             <value>DerivationEvent.derivatives</value>
56
             <value>DerivationEvent.originals</value>
57

    
58
             <value>Point.referenceSystem</value>
59

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

    
63
             <value>Synonym.sec</value>
64
             <value>Taxon.sec</value>
65

    
66
             <value>StateData.state</value>
67
             <value>StateData.modifiers</value>
68
             <value>StateData.modifyingText</value>
69

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

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

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

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

    
242
  <!--
243
         =================================================
244
            configuration for RESTful classification service
245
         =================================================
246
    -->
247
  <bean name="jsonConfigClassification" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
248
    init-method="init">
249
    <property name="jsonBeanProcessorMatcher">
250
      <bean
251
        class="eu.etaxonomy.cdm.remote.json.processor.matcher.HibernateProxyBeanProcessorMatcher" />
252
    </property>
253
    <property name="jsonBeanProcessors">
254
      <map>
255
        <entry key="org.hibernate.proxy.HibernateProxy">
256
          <bean
257
            class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />
258
        </entry>
259
        <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
260
          <bean
261
            class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeDtoBeanProcessor" />
262
        </entry>
263
      </map>
264
    </property>
265
    <property name="jsonPropertyFilter">
266
      <bean class="net.sf.json.filters.OrPropertyFilter">
267
        <constructor-arg>
268
            <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
269
        </constructor-arg>
270
        <constructor-arg ref="genericApiCardinalityPropertyFilter">
271
        </constructor-arg>
272
      </bean>
273
    </property>
274
    <property name="jsonValueProcessorsByClass">
275
      <map>
276
        <entry key="org.hibernate.proxy.HibernateProxy">
277
          <bean
278
            class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
279
        </entry>
280
        <entry key="java.util.UUID">
281
          <bean
282
            class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
283
        </entry>
284
        <entry key="org.joda.time.DateTime">
285
          <bean
286
            class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
287
        </entry>
288
        <entry key="java.util.Calendar">
289
          <bean
290
            class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
291
        </entry>
292
        <entry key="org.joda.time.Partial">
293
          <bean
294
            class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
295
        </entry>
296
        <entry key="java.lang.Class">
297
          <bean
298
            class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />
299
        </entry>
300
        <entry key="java.util.Map">
301
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
302
        </entry>
303
        <entry key="java.net.URI">
304
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
305
        </entry>
306
      </map>
307
    </property>
308
    <property name="ignoreDefaultExcludes" value="true" />
309
    <property name="excludes">
310
      <list value-type="java.lang.String">
311
        <value>declaringClass</value><!-- DefaultExclude -->
312
        <value>metaClass</value><!-- DefaultExclude -->
313
        <value>id</value>
314
        <value>cacheStrategy</value>
315
        <value>createdBy</value>
316
        <value>updatedBy</value>
317
      </list>
318
    </property>
319
  </bean>
320

    
321
  <!--
322
       =================================================
323
         configuration for RESTful portal service
324
       =================================================
325
  -->
326

    
327
  <bean name="jsonConfigPortal" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
328
    init-method="init">
329
    <property name="jsonBeanProcessorMatcher">
330
      <bean
331
        class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmProxyBeanProcessorMatcher" />
332
    </property>
333
    <property name="defaultValueProcessorMatcher">
334
      <bean
335
        class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmDefaultValueProcessorMatcher" />
336
    </property>
337
    <property name="defaultValueProcessorMap">
338
        <map>
339
          <entry key="java.lang.Number">
340
            <bean
341
              class="eu.etaxonomy.cdm.remote.json.processor.value.CdmDefaultValueProcessor" />
342
          </entry>
343
        </map>
344
    </property>
345
    <property name="jsonBeanProcessors">
346
      <map>
347
        <entry key="org.hibernate.proxy.HibernateProxy">
348
          <bean
349
            class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />
350
        </entry>
351
        <entry key="eu.etaxonomy.cdm.model.taxon.TaxonBase">
352
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonBaseBeanProcessor">
353
          <property name="excludes">
354
             <set value-type="java.lang.String">
355
                 <value>acceptedTaxon</value><!-- #6211 to avoid infinite loops in the synonymy -->
356
             </set>
357
          </property>
358
         </bean>  
359
        </entry>
360
        <entry key="eu.etaxonomy.cdm.model.name.TaxonName">
361
          <bean
362
            class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameBeanProcessor" />
363
        </entry>
364
        <entry key="eu.etaxonomy.cdm.model.name.NameRelationship">
365
          <bean
366
            class="eu.etaxonomy.cdm.remote.json.processor.bean.NameRelationshipBeanProcessor" />
367
        </entry>
368
        <entry key="eu.etaxonomy.cdm.model.taxon.TaxonRelationship">
369
          <bean
370
            class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonRelationshipBeanProcessor" />
371
        </entry>
372
        <entry key="eu.etaxonomy.cdm.model.term.TermBase">
373
          <bean
374
            class="eu.etaxonomy.cdm.remote.json.processor.bean.TermBaseBeanProcessor">
375
            <property name="replaceRepresentations" value="true" />
376
            <property name="excludes">
377
                <set value-type="java.lang.String">
378
                  <value>infraGenericMarker</value><!-- FIXME leads to IllegalStateException if not excluded  -->
379
                  <value>partOf</value><!-- DefinedTermBase -->
380
                  <value>kindOf</value><!-- DefinedTermBase -->
381
                  <value>includes</value><!-- DefinedTermBase -->
382
                  <value>generalizationOf</value><!-- DefinedTermBase -->
383
                  <value>vocabulary</value><!-- DefinedTermBase -->
384
                  <!--
385
                      FIXME must exclude partOf, kindOf, includes, generalizationOf .. to
386
                      avoid class cast or lazy loading exceptions in TDWG Areas
387
                  -->
388
                </set>
389
            </property>
390
          </bean>
391
        </entry>
392
        <entry key="eu.etaxonomy.cdm.model.media.Media">
393
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.MediaBeanProcessor">
394
            <property name="replaceTitle" value="true" />
395
            <property name="replaceDescription" value="true" />
396
          </bean>
397
        </entry>
398
        <entry key="eu.etaxonomy.cdm.model.reference.Reference">
399
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.ReferenceBaseBeanProcessor"/>
400
        </entry>
401
        <entry key="eu.etaxonomy.cdm.model.description.TaxonNameDescription">
402
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameDescriptionBeanProcessor">
403
              <property name="excludes">
404
                <set value-type="java.lang.String">
405
                  <value>taxonName</value>
406
                </set>
407
              </property>
408
          </bean>
409
        </entry>
410
        <entry key="eu.etaxonomy.cdm.api.facade.DerivedUnitFacade">
411
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DerivedUnitFacadeBeanProcessor"/>
412
        </entry>
413
        <entry key="eu.etaxonomy.cdm.model.location.Point">
414
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.PointBeanProcessor"/>
415
        </entry>
416
        <entry key="eu.etaxonomy.cdm.model.agent.TeamOrPersonBase">
417
          <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TeamOrPersonBaseBeanProcessor" />
418
        </entry>
419
        <entry key="org.apache.lucene.document.Document">
420
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.LuceneDocumentBeanProcessor" />
421
        </entry>
422
        <entry key="eu.etaxonomy.cdm.common.TreeNode">
423
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TreeNodeBeanProcessor" />
424
        </entry>
425
        <entry key="eu.etaxonomy.cdm.model.description.DescriptionElementBase">
426
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DescriptionElementBeanProcessor">
427
                <property name="replaceMultilanguageText" value="true" />
428
            </bean>
429
        </entry>
430
        <entry key="eu.etaxonomy.cdm.model.description.StateData">
431
            <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.StateDataBeanProcessor">
432
                <property name="replaceMultilanguageText" value="true" />
433
            </bean>
434
        </entry>
435
      </map>
436
    </property>
437
        <property name="jsonPropertyFilter">
438
            <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
439
        </property>
440
    <property name="jsonValueProcessorsByClass">
441
      <map>
442
        <entry key="org.hibernate.proxy.HibernateProxy">
443
          <bean
444
            class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
445
        </entry>
446
        <entry key="java.util.UUID">
447
          <bean
448
            class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
449
        </entry>
450
        <entry key="org.joda.time.DateTime">
451
          <bean
452
            class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
453
        </entry>
454
        <entry key="java.util.Calendar">
455
          <bean
456
            class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
457
        </entry>
458
        <entry key="org.joda.time.Partial">
459
          <bean
460
            class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
461
        </entry>
462
        <entry key="java.lang.Class">
463
          <bean
464
            class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />
465
        </entry>
466
        <entry key="java.util.Map">
467
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
468
        </entry>
469
        <entry key="java.net.URI">
470
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
471
        </entry>
472
      </map>
473
    </property>
474
    <property name="ignoreDefaultExcludes" value="true" />
475
    <property name="excludes">
476
      <list value-type="java.lang.String">
477
        <value>declaringClass</value><!-- DefaultExclude -->
478
        <value>metaClass</value><!-- DefaultExclude -->
479
        <value>id</value>
480
        <!--
481
            commented out,
482
            see  #3347 (services and REST service controller for molecular classes implemented)
483
        <value>annotations</value>
484
        <value>markers</value>
485
        -->
486
        <value>cacheStrategy</value>
487
        <value>createdBy</value>
488
        <value>updatedBy</value>
489
        <value>inDescription</value>
490
      </list>
491
    </property>
492
  </bean>
493

    
494
   <!--
495
         =================================================
496
            default configuration name catalogue service
497
         =================================================
498
    -->
499
  <bean name="nameCatalogueJsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
500
    init-method="init">
501
    <property name="jsonPropertyFilter">
502
        <bean class="net.sf.json.filters.OrPropertyFilter">
503
          <constructor-arg>
504
              <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
505
          </constructor-arg>
506
          <constructor-arg ref="nameCatalogueApiCardinalityPropertyFilter">
507
          </constructor-arg>
508
        </bean>
509
    </property>
510
    <property name="jsonValueProcessorsByClass">
511
      <map>
512
        <entry key="org.hibernate.proxy.HibernateProxy">
513
          <bean
514
            class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
515
        </entry>
516
        <entry key="java.util.UUID">
517
          <bean
518
            class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
519
        </entry>
520
        <entry key="org.joda.time.DateTime">
521
          <bean
522
            class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
523
        </entry>
524
        <entry key="java.util.Calendar">
525
          <bean
526
            class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
527
        </entry>
528
        <entry key="org.joda.time.Partial">
529
          <bean
530
            class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
531
        </entry>
532
        <entry key="java.util.Map">
533
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
534
        </entry>
535
          <entry key="java.net.URI">
536
              <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
537
          </entry>
538

    
539
      </map>
540
    </property>
541
    <property name="ignoreDefaultExcludes" value="true" />
542
    <property name="excludes">
543
      <list value-type="java.lang.String">
544
        <value>class</value>
545
        <value>declaringClass</value><!-- DefaultExclude -->
546
        <value>metaClass</value><!-- DefaultExclude -->
547
        <value>id</value>
548
        <value>cacheStrategy</value>
549
        <value>createdBy</value>
550
        <value>updatedBy</value>
551
      </list>
552
    </property>
553
  </bean>
554

    
555
  <bean name="occurrenceCatalogueJsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
556
    init-method="init">
557
    <property name="jsonPropertyFilter">
558
        <bean class="net.sf.json.filters.OrPropertyFilter">
559
          <constructor-arg>
560
              <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
561
          </constructor-arg>
562
          <constructor-arg ref="nameCatalogueApiCardinalityPropertyFilter">
563
          </constructor-arg>
564
        </bean>
565
    </property>
566
    <property name="jsonValueProcessorsByClass">
567
      <map>
568
        <entry key="org.hibernate.proxy.HibernateProxy">
569
          <bean
570
            class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
571
        </entry>
572
        <entry key="java.util.UUID">
573
          <bean
574
            class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
575
        </entry>
576
        <entry key="org.joda.time.DateTime">
577
          <bean
578
            class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
579
        </entry>
580
        <entry key="java.util.Calendar">
581
          <bean
582
            class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
583
        </entry>
584
        <entry key="org.joda.time.Partial">
585
          <bean
586
            class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
587
        </entry>
588
        <entry key="java.util.Map">
589
            <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
590
        </entry>
591
          <entry key="java.net.URI">
592
              <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
593
          </entry>
594

    
595
      </map>
596
    </property>
597
    <property name="ignoreDefaultExcludes" value="true" />
598
    <property name="excludes">
599
      <list value-type="java.lang.String">
600
        <value>class</value>
601
        <value>declaringClass</value><!-- DefaultExclude -->
602
        <value>metaClass</value><!-- DefaultExclude -->
603
        <value>id</value>
604
        <value>cacheStrategy</value>
605
        <value>createdBy</value>
606
        <value>updatedBy</value>
607
      </list>
608
    </property>
609
  </bean>
610

    
611

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