using TaxonNodeDto instead of TaxonNodeDtoBeanProcessot for multiple webservices...
[cdmlib.git] / cdmlib-remote / src / main / resources / eu / etaxonomy / cdm / remote / json / jsonConfigurations.xml
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 <value>PolytomousKeyNode.otherNode</value>
40
41 <value>LinkedPolytomousKeyNodeRowDto.childStatement</value>
42 <value>LinkedPolytomousKeyNodeRowDto.rowQuestion</value>
43 <value>LinkedPolytomousKeyNodeRowDto.rowFeature</value>
44 <!-- value>LinkedPolytomousKeyNodeRowDto.keyNode</value-->
45
46 <value>Media.representations</value>
47 <value>MediaRepresentation.parts</value>
48
49 <value>Sequence.marker</value>
50 <value>Sequence.genBankAccessionNumber</value>
51 <value>Sequence.genBankUri</value>
52
53 <value>Annotation.annotationType</value>
54 <value>Marker.markerType</value>
55
56 <value>DerivationEvent.derivatives</value>
57 <value>DerivationEvent.originals</value>
58
59 <value>Point.referenceSystem</value>
60
61 <!-- CardinalityPropertyFilter should allow defining exceptions for abstract super classes : -->
62 <!-- <value>eu.etaxonomy.cdm.model.description.DescriptionElementBase.feature</value> -->
63
64 <value>Synonym.sec</value>
65 <value>Taxon.sec</value>
66
67 <value>StateData.state</value>
68 <value>StateData.modifiers</value>
69 <value>StateData.modifyingText</value>
70
71 <value>TextData.feature</value>
72 <value>CategoricalData.feature</value>
73 <value>CommonTaxonName.feature</value>
74 <value>Distribution.feature</value>
75 <value>IndividualsAssociation.feature</value>
76 <value>QuantitativeData.feature</value>
77 <value>TaxonInteraction.feature</value>
78 <value>TextData.feature</value>
79 <value>IdentifiableSource.citation</value>
80
81 <value>Registration.name</value>
82 <value>Registration.typeDesignations</value>
83 <value>Registration.institution</value>
84
85 <value>SearchResult.entity</value>
86
87 <value>CdmEntity.entity</value>
88 </set>
89 </property>
90 </bean>
91
92 <bean id="nameCatalogueApiCardinalityPropertyFilter" class="eu.etaxonomy.cdm.remote.json.util.CardinalityPropertyFilter">
93 <property name="includeToOneRelations" value="true" />
94 <property name="includeToManyRelations" value="true" />
95 <property name="exceptions">
96 <set>
97 </set>
98 </property>
99 </bean>
100
101 <!--
102 =================================================
103 default configuration for RESTful read(/write) service
104 =================================================
105 -->
106 <bean name="jsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
107 init-method="init">
108 <property name="jsonBeanProcessorMatcher">
109 <bean
110 class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmProxyBeanProcessorMatcher" />
111 </property>
112 <property name="defaultValueProcessorMatcher">
113 <bean
114 class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmDefaultValueProcessorMatcher" />
115 </property>
116 <property name="defaultValueProcessorMap">
117 <map>
118 <entry key="java.lang.Number">
119 <bean
120 class="eu.etaxonomy.cdm.remote.json.processor.value.CdmDefaultValueProcessor" />
121 </entry>
122 </map>
123 </property>
124 <property name="jsonBeanProcessors">
125 <map>
126 <entry key="org.hibernate.proxy.HibernateProxy">
127 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />
128 </entry>
129 <entry key="eu.etaxonomy.cdm.model.term.TermBase">
130 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TermBaseBeanProcessor">
131 <property name="excludes">
132 <set value-type="java.lang.String">
133 <value>partOf</value><!-- FIXME exclude partOf to avoid lazy loading exceptions -->
134 <value>kindOf</value><!-- FIXME exclude kindOf to avoid lazy loading exceptions -->
135 <value>infraGenericMarker</value><!-- FIXME leads to IllegalStateException if not excluded -->
136 </set>
137 </property>
138 </bean>
139 </entry>
140 <entry key="eu.etaxonomy.cdm.model.term.Representation">
141 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.RepresentationBeanProcessor"/>
142 </entry>
143 <entry key="eu.etaxonomy.cdm.model.media.Media">
144 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.MediaBeanProcessor">
145 <property name="replaceTitle" value="true" />
146 <property name="replaceDescription" value="true" />
147 </bean>
148 </entry>
149 <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
150 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeBeanProcessor" />
151 </entry>
152 <entry key="eu.etaxonomy.cdm.model.reference.Reference">
153 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.ReferenceBaseBeanProcessor"/>
154 </entry>
155 <entry key="eu.etaxonomy.cdm.model.name.TaxonName">
156 <bean
157 class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameBeanProcessor">
158 <property name="skipTaggedName" value="true" />
159 </bean>
160 </entry>
161 <entry key="eu.etaxonomy.cdm.model.name.TypeDesignationBase">
162 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TypeDesignationBaseBeanProcessor"/>
163 </entry>
164 <entry key="eu.etaxonomy.cdm.model.description.KeyStatement">
165 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.KeyStatementBeanProcessor" />
166 </entry>
167 <entry key="eu.etaxonomy.cdm.model.agent.TeamOrPersonBase">
168 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TeamOrPersonBaseBeanProcessor" />
169 </entry>
170 <entry key="eu.etaxonomy.cdm.model.description.DescriptionElementBase">
171 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DescriptionElementBeanProcessor" />
172 </entry>
173 <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
174 <entry key="eu.etaxonomy.cdm.model.reference.CdmLinkSource">
175 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.CdmLinkSourceBeanProcessor" />
176 </entry>
177 -->
178 <entry key="eu.etaxonomy.cdm.model.description.StateData">
179 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.StateDataBeanProcessor" />
180 </entry>
181 <entry key="org.apache.lucene.document.Document">
182 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.LuceneDocumentBeanProcessor" />
183 </entry>
184 </map>
185 </property>
186 <property name="jsonPropertyFilter">
187 <bean class="net.sf.json.filters.OrPropertyFilter">
188 <constructor-arg>
189 <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
190 </constructor-arg>
191 <constructor-arg ref="genericApiCardinalityPropertyFilter">
192 </constructor-arg>
193 </bean>
194 </property>
195 <property name="jsonValueProcessorsByClass">
196 <map>
197 <entry key="org.hibernate.proxy.HibernateProxy">
198 <bean
199 class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
200 </entry>
201 <entry key="java.util.UUID">
202 <bean
203 class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
204 </entry>
205 <entry key="org.joda.time.DateTime">
206 <bean
207 class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
208 </entry>
209 <entry key="java.util.Calendar">
210 <bean
211 class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
212 </entry>
213 <entry key="org.joda.time.Partial">
214 <bean
215 class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
216 </entry>
217 <entry key="java.lang.Class">
218 <bean
219 class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />
220 </entry>
221 <entry key="java.util.Map">
222 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
223 </entry>
224 <entry key="java.util.LinkedHashMap">
225 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
226 </entry>
227 <entry key="eu.etaxonomy.cdm.api.service.name.TypeDesignationSetManager.TypeDesignationWorkingSet">
228 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
229 </entry>
230 <entry key="java.net.URI">
231 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
232 </entry>
233 <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNodeStatus">
234 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor"/>
235 </entry>
236 </map>
237 </property>
238 <property name="ignoreDefaultExcludes" value="true" />
239 <property name="excludes">
240 <list value-type="java.lang.String">
241 <value>declaringClass</value><!-- DefaultExclude -->
242 <value>metaClass</value><!-- DefaultExclude -->
243 <value>id</value>
244 <value>cacheStrategy</value>
245 <value>createdBy</value>
246 <value>updatedBy</value>
247 <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
248 <value>cdmSourceTarget</value><! - - OriginalSourceBase.getCdmSourceTarget() -->
249 </list>
250 </property>
251 </bean>
252
253 <!--
254 =================================================
255 configuration for RESTful classification service
256 =================================================
257 -->
258 <bean name="jsonConfigClassification" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
259 init-method="init">
260 <property name="jsonBeanProcessorMatcher">
261 <bean
262 class="eu.etaxonomy.cdm.remote.json.processor.matcher.HibernateProxyBeanProcessorMatcher" />
263 </property>
264 <property name="jsonBeanProcessors">
265 <map>
266 <entry key="org.hibernate.proxy.HibernateProxy">
267 <bean
268 class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />
269 </entry>
270 <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
271 <bean
272 class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeDtoBeanProcessor" />
273 </entry>
274 </map>
275 </property>
276 <property name="jsonPropertyFilter">
277 <bean class="net.sf.json.filters.OrPropertyFilter">
278 <constructor-arg>
279 <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
280 </constructor-arg>
281 <constructor-arg ref="genericApiCardinalityPropertyFilter">
282 </constructor-arg>
283 </bean>
284 </property>
285 <property name="jsonValueProcessorsByClass">
286 <map>
287 <entry key="org.hibernate.proxy.HibernateProxy">
288 <bean
289 class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
290 </entry>
291 <entry key="java.util.UUID">
292 <bean
293 class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
294 </entry>
295 <entry key="org.joda.time.DateTime">
296 <bean
297 class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
298 </entry>
299 <entry key="java.util.Calendar">
300 <bean
301 class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
302 </entry>
303 <entry key="org.joda.time.Partial">
304 <bean
305 class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
306 </entry>
307 <entry key="java.lang.Class">
308 <bean
309 class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />
310 </entry>
311 <entry key="java.util.Map">
312 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
313 </entry>
314 <entry key="java.net.URI">
315 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
316 </entry>
317 <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNodeStatus">
318 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor" />
319 </entry>
320 </map>
321 </property>
322 <property name="ignoreDefaultExcludes" value="true" />
323 <property name="excludes">
324 <list value-type="java.lang.String">
325 <value>declaringClass</value><!-- DefaultExclude -->
326 <value>metaClass</value><!-- DefaultExclude -->
327 <value>id</value>
328 <value>cacheStrategy</value>
329 <value>createdBy</value>
330 <value>updatedBy</value>
331 </list>
332 </property>
333 </bean>
334
335 <!--
336 =================================================
337 configuration for RESTful portal service
338 =================================================
339 -->
340
341 <bean name="jsonConfigPortal" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
342 init-method="init">
343 <property name="jsonBeanProcessorMatcher">
344 <bean
345 class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmProxyBeanProcessorMatcher" />
346 </property>
347 <property name="defaultValueProcessorMatcher">
348 <bean
349 class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmDefaultValueProcessorMatcher" />
350 </property>
351 <property name="defaultValueProcessorMap">
352 <map>
353 <entry key="java.lang.Number">
354 <bean
355 class="eu.etaxonomy.cdm.remote.json.processor.value.CdmDefaultValueProcessor" />
356 </entry>
357 </map>
358 </property>
359 <property name="jsonBeanProcessors">
360 <map>
361 <entry key="org.hibernate.proxy.HibernateProxy">
362 <bean
363 class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />
364 </entry>
365 <entry key="eu.etaxonomy.cdm.model.taxon.TaxonBase">
366 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonBaseBeanProcessor">
367 <property name="excludes">
368 <set value-type="java.lang.String">
369 <value>acceptedTaxon</value><!-- #6211 to avoid infinite loops in the synonymy -->
370 </set>
371 </property>
372 </bean>
373 </entry>
374 <entry key="eu.etaxonomy.cdm.model.name.TaxonName">
375 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameBeanProcessor">
376 <property name="excludes">
377 <set value-type="java.lang.String">
378 <value>homotypicalGroup</value>
379 </set>
380 </property>
381 </bean>
382 </entry>
383 <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
384 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeBeanProcessor">
385 <property name="replaceMultilanguageText" value="true" />
386 </bean>
387 </entry>
388 <entry key="eu.etaxonomy.cdm.model.name.TypeDesignationBase">
389 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TypeDesignationBaseBeanProcessor">
390 <property name="replaceMultilanguageText" value="true" />
391 </bean>
392 </entry>
393 <entry key="eu.etaxonomy.cdm.model.name.NameRelationship">
394 <bean
395 class="eu.etaxonomy.cdm.remote.json.processor.bean.NameRelationshipBeanProcessor" />
396 </entry>
397 <entry key="eu.etaxonomy.cdm.model.taxon.TaxonRelationship">
398 <bean
399 class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonRelationshipBeanProcessor" />
400 </entry>
401 <entry key="eu.etaxonomy.cdm.model.term.TermBase">
402 <bean
403 class="eu.etaxonomy.cdm.remote.json.processor.bean.TermBaseBeanProcessor">
404 <property name="replaceRepresentations" value="true" />
405 <property name="excludes">
406 <set value-type="java.lang.String">
407 <value>infraGenericMarker</value><!-- FIXME leads to IllegalStateException if not excluded -->
408 <value>partOf</value><!-- DefinedTermBase -->
409 <value>kindOf</value><!-- DefinedTermBase -->
410 <value>includes</value><!-- DefinedTermBase -->
411 <value>generalizationOf</value><!-- DefinedTermBase -->
412 <value>vocabulary</value><!-- DefinedTermBase -->
413 <!--
414 FIXME must exclude partOf, kindOf, includes, generalizationOf .. to
415 avoid class cast or lazy loading exceptions in TDWG Areas
416 -->
417 </set>
418 </property>
419 </bean>
420 </entry>
421 <entry key="eu.etaxonomy.cdm.model.media.Media">
422 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.MediaBeanProcessor">
423 <property name="replaceTitle" value="true" />
424 <property name="replaceDescription" value="true" />
425 </bean>
426 </entry>
427 <entry key="eu.etaxonomy.cdm.model.reference.Reference">
428 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.ReferenceBaseBeanProcessor"/>
429 </entry>
430 <entry key="eu.etaxonomy.cdm.model.description.TaxonNameDescription">
431 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameDescriptionBeanProcessor">
432 <property name="excludes">
433 <set value-type="java.lang.String">
434 <value>taxonName</value>
435 </set>
436 </property>
437 </bean>
438 </entry>
439 <entry key="eu.etaxonomy.cdm.api.facade.DerivedUnitFacade">
440 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DerivedUnitFacadeBeanProcessor"/>
441 </entry>
442 <entry key="eu.etaxonomy.cdm.model.location.Point">
443 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.PointBeanProcessor"/>
444 </entry>
445 <entry key="eu.etaxonomy.cdm.model.agent.TeamOrPersonBase">
446 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TeamOrPersonBaseBeanProcessor" />
447 </entry>
448 <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
449 <entry key="eu.etaxonomy.cdm.model.reference.CdmLinkSource">
450 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.CdmLinkSourceBeanProcessor" />
451 </entry>
452 -->
453 <entry key="org.apache.lucene.document.Document">
454 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.LuceneDocumentBeanProcessor" />
455 </entry>
456 <entry key="eu.etaxonomy.cdm.common.TreeNode">
457 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TreeNodeBeanProcessor" />
458 </entry>
459 <entry key="eu.etaxonomy.cdm.model.description.DescriptionElementBase">
460 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DescriptionElementBeanProcessor">
461 <property name="replaceMultilanguageText" value="true" />
462 </bean>
463 </entry>
464 <entry key="eu.etaxonomy.cdm.model.description.StateData">
465 <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.StateDataBeanProcessor">
466 <property name="replaceMultilanguageText" value="true" />
467 </bean>
468 </entry>
469 </map>
470 </property>
471 <property name="jsonPropertyFilter">
472 <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
473 </property>
474 <property name="jsonValueProcessorsByClass">
475 <map>
476 <entry key="org.hibernate.proxy.HibernateProxy">
477 <bean
478 class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
479 </entry>
480 <entry key="java.util.UUID">
481 <bean
482 class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
483 </entry>
484 <entry key="org.joda.time.DateTime">
485 <bean
486 class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
487 </entry>
488 <entry key="java.util.Calendar">
489 <bean
490 class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
491 </entry>
492 <entry key="org.joda.time.Partial">
493 <bean
494 class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
495 </entry>
496 <entry key="java.lang.Class">
497 <bean
498 class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />
499 </entry>
500 <entry key="java.util.Map">
501 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
502 </entry>
503 <entry key="java.net.URI">
504 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
505 </entry>
506 <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNodeStatus">
507 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor" />
508 </entry>
509 </map>
510 </property>
511 <property name="ignoreDefaultExcludes" value="true" />
512 <property name="excludes">
513 <list value-type="java.lang.String">
514 <value>declaringClass</value><!-- DefaultExclude -->
515 <value>metaClass</value><!-- DefaultExclude -->
516 <value>id</value>
517 <!--
518 commented out,
519 see #3347 (services and REST service controller for molecular classes implemented)
520 <value>annotations</value>
521 <value>markers</value>
522 -->
523 <value>cacheStrategy</value>
524 <value>createdBy</value>
525 <value>updatedBy</value>
526 <value>inDescription</value>
527 <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
528 <value>cdmSourceTarget</value>< !- - OriginalSourceBase.getCdmSourceTarget() -->
529 </list>
530 </property>
531 </bean>
532
533 <!--
534 =================================================
535 default configuration name catalogue service
536 =================================================
537 -->
538 <bean name="nameCatalogueJsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
539 init-method="init">
540 <property name="jsonPropertyFilter">
541 <bean class="net.sf.json.filters.OrPropertyFilter">
542 <constructor-arg>
543 <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
544 </constructor-arg>
545 <constructor-arg ref="nameCatalogueApiCardinalityPropertyFilter">
546 </constructor-arg>
547 </bean>
548 </property>
549 <property name="jsonValueProcessorsByClass">
550 <map>
551 <entry key="org.hibernate.proxy.HibernateProxy">
552 <bean
553 class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
554 </entry>
555 <entry key="java.util.UUID">
556 <bean
557 class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
558 </entry>
559 <entry key="org.joda.time.DateTime">
560 <bean
561 class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
562 </entry>
563 <entry key="java.util.Calendar">
564 <bean
565 class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
566 </entry>
567 <entry key="org.joda.time.Partial">
568 <bean
569 class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
570 </entry>
571 <entry key="java.util.Map">
572 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
573 </entry>
574 <entry key="java.net.URI">
575 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
576 </entry>
577 </map>
578 </property>
579 <property name="ignoreDefaultExcludes" value="true" />
580 <property name="excludes">
581 <list value-type="java.lang.String">
582 <value>class</value>
583 <value>declaringClass</value><!-- DefaultExclude -->
584 <value>metaClass</value><!-- DefaultExclude -->
585 <value>id</value>
586 <value>cacheStrategy</value>
587 <value>createdBy</value>
588 <value>updatedBy</value>
589 </list>
590 </property>
591 </bean>
592
593 <bean name="occurrenceCatalogueJsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
594 init-method="init">
595 <property name="jsonPropertyFilter">
596 <bean class="net.sf.json.filters.OrPropertyFilter">
597 <constructor-arg>
598 <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
599 </constructor-arg>
600 <constructor-arg ref="nameCatalogueApiCardinalityPropertyFilter">
601 </constructor-arg>
602 </bean>
603 </property>
604 <property name="jsonValueProcessorsByClass">
605 <map>
606 <entry key="org.hibernate.proxy.HibernateProxy">
607 <bean
608 class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
609 </entry>
610 <entry key="java.util.UUID">
611 <bean
612 class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
613 </entry>
614 <entry key="org.joda.time.DateTime">
615 <bean
616 class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
617 </entry>
618 <entry key="java.util.Calendar">
619 <bean
620 class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
621 </entry>
622 <entry key="org.joda.time.Partial">
623 <bean
624 class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
625 </entry>
626 <entry key="java.util.Map">
627 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
628 </entry>
629 <entry key="java.net.URI">
630 <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
631 </entry>
632
633 </map>
634 </property>
635 <property name="ignoreDefaultExcludes" value="true" />
636 <property name="excludes">
637 <list value-type="java.lang.String">
638 <value>class</value>
639 <value>declaringClass</value><!-- DefaultExclude -->
640 <value>metaClass</value><!-- DefaultExclude -->
641 <value>id</value>
642 <value>cacheStrategy</value>
643 <value>createdBy</value>
644 <value>updatedBy</value>
645 </list>
646 </property>
647 </bean>
648
649
650 </beans>