-<?xml version="1.0" encoding="UTF-8"?>\r
-<beans xmlns="http://www.springframework.org/schema/beans"\r
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
- xmlns:tx="http://www.springframework.org/schema/tx"\r
- xmlns:context="http://www.springframework.org/schema/context"\r
- xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd\r
- http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd\r
- http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd\r
- ">\r
-\r
- <bean id="genericApiCardinalityPropertyFilter" class="eu.etaxonomy.cdm.remote.json.util.CardinalityPropertyFilter">\r
- <property name="includeToOneRelations" value="false" />\r
- <property name="includeToManyRelations" value="false" />\r
- <property name="exceptions">\r
- <set>\r
- <!--\r
- the exceptions listed here should be covered by implementations of\r
- eu.etaxonomy.cdm.persistence.dao.AutoPropertyInitializer.\r
- The according configuration files are\r
- - /cdmlib-persistence/src/main/resources/eu/etaxonomy/cdm/persistence_security.xml\r
- - /cdmlib-persistence/src/main/resources/eu/etaxonomy/cdm/persistence.xml\r
- whereas persistence.xml will be removed in the near future.\r
- -->\r
- <value>FeatureTree.root</value>\r
- <value>FeatureNode.children</value>\r
- <value>FeatureNode.feature</value>\r
-\r
- <value>TreeNode.data</value>\r
- <value>TreeNode.data</value>\r
-\r
- <value>PolytomousKey.root</value>\r
- <value>PolytomousKeyNode.children</value>\r
- <value>PolytomousKeyNode.question</value>\r
- <value>PolytomousKeyNode.feature</value>\r
- <value>PolytomousKeyNode.statement</value>\r
- <value>PolytomousKeyNode.modifyingText</value>\r
-\r
- <value>LinkedPolytomousKeyNodeRowDto.childStatement</value>\r
- <value>LinkedPolytomousKeyNodeRowDto.rowQuestion</value>\r
- <value>LinkedPolytomousKeyNodeRowDto.rowFeature</value>\r
- <!-- value>LinkedPolytomousKeyNodeRowDto.keyNode</value-->\r
-\r
- <value>Media.representations</value>\r
- <value>MediaRepresentation.parts</value>\r
-\r
- <value>Sequence.marker</value>\r
- <value>Sequence.genBankAccessionNumber</value>\r
- <value>Sequence.genBankUri</value>\r
-\r
- <value>Annotation.annotationType</value>\r
- <value>Marker.markerType</value>\r
-\r
- <value>DerivationEvent.derivatives</value>\r
- <value>DerivationEvent.originals</value>\r
-\r
- <value>Point.referenceSystem</value>\r
-\r
- <!-- CardinalityPropertyFilter should allow defining exceptions for abstract super classes : -->\r
- <!-- <value>eu.etaxonomy.cdm.model.description.DescriptionElementBase.feature</value> -->\r
-\r
- <value>Synonym.sec</value>\r
- <value>Taxon.sec</value>\r
-\r
- <value>StateData.state</value>\r
- <value>StateData.modifiers</value>\r
- <value>StateData.modifyingText</value>\r
-\r
- <value>TextData.feature</value>\r
- <value>CategoricalData.feature</value>\r
- <value>CommonTaxonName.feature</value>\r
- <value>Distribution.feature</value>\r
- <value>IndividualsAssociation.feature</value>\r
- <value>QuantitativeData.feature</value>\r
- <value>TaxonInteraction.feature</value>\r
- <value>TextData.feature</value>\r
- <value>IdentifiableSource.citation</value>\r
-\r
- <value>SearchResult.entity</value>\r
- </set>\r
- </property>\r
- </bean>\r
-\r
- <bean id="nameCatalogueApiCardinalityPropertyFilter" class="eu.etaxonomy.cdm.remote.json.util.CardinalityPropertyFilter">\r
- <property name="includeToOneRelations" value="true" />\r
- <property name="includeToManyRelations" value="true" />\r
- <property name="exceptions">\r
- <set>\r
- </set>\r
- </property>\r
- </bean>\r
-\r
- <!--\r
- =================================================\r
- default configuration for RESTful read(/write) service\r
- =================================================\r
- -->\r
- <bean name="jsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"\r
- init-method="init">\r
- <property name="jsonBeanProcessorMatcher">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmProxyBeanProcessorMatcher" />\r
- </property>\r
- <property name="jsonBeanProcessors">\r
- <map>\r
- <entry key="org.hibernate.proxy.HibernateProxy">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.common.TermBase">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TermBaseBeanProcessor">\r
- <property name="excludes">\r
- <set value-type="java.lang.String">\r
- <value>partOf</value><!-- FIXME exclude partOf to avoid lazy loading exceptions -->\r
- <value>kindOf</value><!-- FIXME exclude kindOf to avoid lazy loading exceptions -->\r
- <value>infraGenericMarker</value><!-- FIXME leads to IllegalStateException if not excluded -->\r
- </set>\r
- </property>\r
- </bean>\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.description.TextData">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TextDataBeanProcessor" />\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeBeanProcessor" />\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.reference.Reference">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.ReferenceBaseBeanProcessor"/>\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.name.TypeDesignationBase">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TypeDesignationBaseBeanProcessor"/>\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.description.KeyStatement">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.KeyStatementBeanProcessor" />\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.agent.TeamOrPersonBase">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TeamOrPersonBaseBeanProcessor" />\r
- </entry>\r
- <entry key="org.apache.lucene.document.Document">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.LuceneDocumentBeanProcessor" />\r
- </entry>\r
- </map>\r
- </property>\r
- <property name="jsonPropertyFilter">\r
- <bean class="net.sf.json.filters.OrPropertyFilter">\r
- <constructor-arg>\r
- <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />\r
- </constructor-arg>\r
- <constructor-arg ref="genericApiCardinalityPropertyFilter">\r
- </constructor-arg>\r
- </bean>\r
- </property>\r
- <property name="jsonValueProcessors">\r
- <map>\r
- <entry key="org.hibernate.proxy.HibernateProxy">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.UUID">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />\r
- </entry>\r
- <entry key="org.joda.time.DateTime">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.Calendar">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />\r
- </entry>\r
- <entry key="org.joda.time.Partial">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.lang.Class">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.Map">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.net.URI">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>\r
- </entry>\r
- </map>\r
- </property>\r
- <property name="ignoreDefaultExcludes" value="true" />\r
- <property name="excludes">\r
- <list value-type="java.lang.String">\r
- <value>declaringClass</value><!-- DefaultExclude -->\r
- <value>metaClass</value><!-- DefaultExclude -->\r
- <value>id</value>\r
- <value>cacheStrategy</value>\r
- <value>createdBy</value>\r
- <value>updatedBy</value>\r
- </list>\r
- </property>\r
- </bean>\r
-\r
- <!--\r
- =================================================\r
- configuration for RESTful classification service\r
- =================================================\r
- -->\r
- <bean name="jsonConfigClassification" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"\r
- init-method="init">\r
- <property name="jsonBeanProcessorMatcher">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.matcher.HibernateProxyBeanProcessorMatcher" />\r
- </property>\r
- <property name="jsonBeanProcessors">\r
- <map>\r
- <entry key="org.hibernate.proxy.HibernateProxy">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeDaoBeanProcessor" />\r
- </entry>\r
- </map>\r
- </property>\r
- <property name="jsonPropertyFilter">\r
- <bean class="net.sf.json.filters.OrPropertyFilter">\r
- <constructor-arg>\r
- <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />\r
- </constructor-arg>\r
- <constructor-arg ref="genericApiCardinalityPropertyFilter">\r
- </constructor-arg>\r
- </bean>\r
- </property>\r
- <property name="jsonValueProcessors">\r
- <map>\r
- <entry key="org.hibernate.proxy.HibernateProxy">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.UUID">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />\r
- </entry>\r
- <entry key="org.joda.time.DateTime">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.Calendar">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />\r
- </entry>\r
- <entry key="org.joda.time.Partial">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.lang.Class">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.Map">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.net.URI">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>\r
- </entry>\r
- </map>\r
- </property>\r
- <property name="ignoreDefaultExcludes" value="true" />\r
- <property name="excludes">\r
- <list value-type="java.lang.String">\r
- <value>declaringClass</value><!-- DefaultExclude -->\r
- <value>metaClass</value><!-- DefaultExclude -->\r
- <value>id</value>\r
- <value>cacheStrategy</value>\r
- <value>createdBy</value>\r
- <value>updatedBy</value>\r
- </list>\r
- </property>\r
- </bean>\r
-\r
- <!--\r
- =================================================\r
- configuration for RESTful portal service\r
- =================================================\r
- -->\r
-\r
- <bean name="jsonConfigPortal" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"\r
- init-method="init">\r
- <property name="jsonBeanProcessorMatcher">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmProxyBeanProcessorMatcher" />\r
- </property>\r
- <property name="jsonBeanProcessors">\r
- <map>\r
- <entry key="org.hibernate.proxy.HibernateProxy">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.taxon.Taxon">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonBeanProcessor" />\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.name.TaxonNameBase">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameBaseBeanProcessor" />\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.name.NameRelationship">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.bean.NameRelationshipBeanProcessor" />\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.taxon.TaxonRelationship">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonRelationshipBeanProcessor" />\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.common.TermBase">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.bean.TermBaseBeanProcessor">\r
- <property name="replaceRepresentations" value="true" />\r
- <property name="excludes">\r
- <set value-type="java.lang.String">\r
- <value>infraGenericMarker</value><!-- FIXME leads to IllegalStateException if not excluded -->\r
- <value>partOf</value><!-- DefinedTermBase -->\r
- <value>kindOf</value><!-- DefinedTermBase -->\r
- <value>includes</value><!-- DefinedTermBase -->\r
- <value>generalizationOf</value><!-- DefinedTermBase -->\r
- <value>vocabulary</value><!-- DefinedTermBase -->\r
- <!--\r
- FIXME must exclude partOf, kindOf, includes, generalizationOf .. to\r
- avoid class cast or lazy loading exceptions in TDWG Areas\r
- -->\r
- </set>\r
- </property>\r
- </bean>\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.description.TextData">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.bean.TextDataBeanProcessor">\r
- <property name="replaceMultilanguageText" value="true" />\r
- </bean>\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.media.Media">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.MediaBeanProcessor">\r
- <property name="replaceTitle" value="true" />\r
- <property name="replaceDescription" value="true" />\r
- </bean>\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.reference.Reference">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.ReferenceBaseBeanProcessor"/>\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.description.TaxonNameDescription">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameDescriptionBeanProcessor">\r
- <property name="excludes">\r
- <set value-type="java.lang.String">\r
- <value>taxonName</value>\r
- </set>\r
- </property>\r
- </bean>\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.api.facade.DerivedUnitFacade">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DerivedUnitFacadeBeanProcessor"/>\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.location.Point">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.PointBeanProcessor"/>\r
- </entry>\r
- <entry key="eu.etaxonomy.cdm.model.agent.TeamOrPersonBase">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TeamOrPersonBaseBeanProcessor" />\r
- </entry>\r
- <entry key="org.apache.lucene.document.Document">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.LuceneDocumentBeanProcessor" />\r
- </entry>\r
- </map>\r
- </property>\r
- <property name="jsonPropertyFilter">\r
- <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />\r
- </property>\r
- <property name="jsonValueProcessors">\r
- <map>\r
- <entry key="org.hibernate.proxy.HibernateProxy">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.UUID">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />\r
- </entry>\r
- <entry key="org.joda.time.DateTime">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.Calendar">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />\r
- </entry>\r
- <entry key="org.joda.time.Partial">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.lang.Class">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.Map">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.net.URI">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>\r
- </entry>\r
- </map>\r
- </property>\r
- <property name="ignoreDefaultExcludes" value="true" />\r
- <property name="excludes">\r
- <list value-type="java.lang.String">\r
- <value>declaringClass</value><!-- DefaultExclude -->\r
- <value>metaClass</value><!-- DefaultExclude -->\r
- <value>id</value>\r
- <!--\r
- commented out,\r
- see #3347 (services and REST service controller for molecular classes implemented)\r
- <value>annotations</value>\r
- <value>markers</value>\r
- -->\r
- <value>cacheStrategy</value>\r
- <value>createdBy</value>\r
- <value>updatedBy</value>\r
- <value>inDescription</value>\r
- </list>\r
- </property>\r
- </bean>\r
-\r
- <!--\r
- =================================================\r
- default configuration name catalogue service\r
- =================================================\r
- -->\r
- <bean name="nameCatalogueJsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"\r
- init-method="init">\r
- <property name="jsonPropertyFilter">\r
- <bean class="net.sf.json.filters.OrPropertyFilter">\r
- <constructor-arg>\r
- <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />\r
- </constructor-arg>\r
- <constructor-arg ref="nameCatalogueApiCardinalityPropertyFilter">\r
- </constructor-arg>\r
- </bean>\r
- </property>\r
- <property name="jsonValueProcessors">\r
- <map>\r
- <entry key="org.hibernate.proxy.HibernateProxy">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.UUID">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />\r
- </entry>\r
- <entry key="org.joda.time.DateTime">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.Calendar">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />\r
- </entry>\r
- <entry key="org.joda.time.Partial">\r
- <bean\r
- class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.util.Map">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />\r
- </entry>\r
- <entry key="java.net.URI">\r
- <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>\r
- </entry>\r
-\r
- </map>\r
- </property>\r
- <property name="ignoreDefaultExcludes" value="true" />\r
- <property name="excludes">\r
- <list value-type="java.lang.String">\r
- <value>class</value>\r
- <value>declaringClass</value><!-- DefaultExclude -->\r
- <value>metaClass</value><!-- DefaultExclude -->\r
- <value>id</value>\r
- <value>cacheStrategy</value>\r
- <value>createdBy</value>\r
- <value>updatedBy</value>\r
- </list>\r
- </property>\r
- </bean>\r
-\r
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:tx="http://www.springframework.org/schema/tx"
+ xmlns:context="http://www.springframework.org/schema/context"
+ xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
+ http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd
+ http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.3.xsd
+ ">
+
+ <bean id="genericApiCardinalityPropertyFilter" class="eu.etaxonomy.cdm.remote.json.util.CardinalityPropertyFilter">
+ <property name="includeToOneRelations" value="false" />
+ <property name="includeToManyRelations" value="false" />
+ <property name="exceptions">
+ <set>
+ <!--
+ the exceptions listed here should be covered by implementations of
+ eu.etaxonomy.cdm.persistence.dao.initializer.AutoPropertyInitializer.
+ The according configuration files are
+ - /cdmlib-persistence/src/main/resources/eu/etaxonomy/cdm/persistence_security.xml
+ - /cdmlib-persistence/src/main/resources/eu/etaxonomy/cdm/persistence.xml
+ whereas persistence.xml will be removed in the near future.
+ -->
+ <value>TermTree.root</value>
+ <value>TermNode.children</value>
+ <value>TermNode.feature</value>
+
+ <value>NomenclaturalStatus.source</value>
+ <value>DescriptionElementSource.citation</value>
+
+ <value>TreeNode.data</value>
+ <value>TreeNode.data</value>
+
+ <value>PolytomousKey.root</value>
+ <value>PolytomousKeyNode.children</value>
+ <value>PolytomousKeyNode.question</value>
+ <value>PolytomousKeyNode.feature</value>
+ <value>PolytomousKeyNode.statement</value>
+ <value>PolytomousKeyNode.modifyingText</value>
+ <value>PolytomousKeyNode.otherNode</value>
+
+ <value>LinkedPolytomousKeyNodeRowDto.childStatement</value>
+ <value>LinkedPolytomousKeyNodeRowDto.rowQuestion</value>
+ <value>LinkedPolytomousKeyNodeRowDto.rowFeature</value>
+ <!-- value>LinkedPolytomousKeyNodeRowDto.keyNode</value-->
+
+ <value>Media.representations</value>
+ <value>MediaRepresentation.parts</value>
+
+ <value>Sequence.marker</value>
+ <value>Sequence.genBankAccessionNumber</value>
+ <value>Sequence.genBankUri</value>
+
+ <value>Annotation.annotationType</value>
+ <value>Marker.markerType</value>
+
+ <value>DerivationEvent.derivatives</value>
+ <value>DerivationEvent.originals</value>
+
+ <value>Point.referenceSystem</value>
+
+ <!-- CardinalityPropertyFilter should allow defining exceptions for abstract super classes : -->
+ <!-- <value>eu.etaxonomy.cdm.model.description.DescriptionElementBase.feature</value> -->
+
+ <value>Synonym.sec</value>
+ <value>Taxon.sec</value>
+
+ <value>StateData.state</value>
+ <value>StateData.modifiers</value>
+ <value>StateData.modifyingText</value>
+
+ <value>TextData.feature</value>
+ <value>CategoricalData.feature</value>
+ <value>CommonTaxonName.feature</value>
+ <value>Distribution.feature</value>
+ <value>IndividualsAssociation.feature</value>
+ <value>QuantitativeData.feature</value>
+ <value>TaxonInteraction.feature</value>
+ <value>TextData.feature</value>
+ <value>IdentifiableSource.citation</value>
+
+ <value>Registration.name</value>
+ <value>Registration.typeDesignations</value>
+ <value>Registration.institution</value>
+
+ <value>SearchResult.entity</value>
+
+ <value>CdmEntity.entity</value>
+ </set>
+ </property>
+ </bean>
+
+ <bean id="nameCatalogueApiCardinalityPropertyFilter" class="eu.etaxonomy.cdm.remote.json.util.CardinalityPropertyFilter">
+ <property name="includeToOneRelations" value="true" />
+ <property name="includeToManyRelations" value="true" />
+ <property name="exceptions">
+ <set>
+ </set>
+ </property>
+ </bean>
+
+ <!--
+ =================================================
+ default configuration for RESTful read(/write) service
+ =================================================
+ -->
+ <bean name="jsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
+ init-method="init">
+ <property name="jsonBeanProcessorMatcher">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmProxyBeanProcessorMatcher" />
+ </property>
+ <property name="defaultValueProcessorMatcher">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmDefaultValueProcessorMatcher" />
+ </property>
+ <property name="defaultValueProcessorMap">
+ <map>
+ <entry key="java.lang.Number">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.CdmDefaultValueProcessor" />
+ </entry>
+ </map>
+ </property>
+ <property name="jsonBeanProcessors">
+ <map>
+ <entry key="org.hibernate.proxy.HibernateProxy">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.term.TermBase">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TermBaseBeanProcessor">
+ <property name="excludes">
+ <set value-type="java.lang.String">
+ <value>partOf</value><!-- FIXME exclude partOf to avoid lazy loading exceptions -->
+ <value>kindOf</value><!-- FIXME exclude kindOf to avoid lazy loading exceptions -->
+ <value>infraGenericMarker</value><!-- FIXME leads to IllegalStateException if not excluded -->
+ </set>
+ </property>
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.term.Representation">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.RepresentationBeanProcessor"/>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.media.Media">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.MediaBeanProcessor">
+ <property name="replaceTitle" value="true" />
+ <property name="replaceDescription" value="true" />
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeDtoBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.location.Point">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.PointBeanProcessor"/>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.reference.Reference">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.ReferenceBaseBeanProcessor"/>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.name.TaxonName">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameBeanProcessor">
+ <property name="skipTaggedName" value="true" />
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.name.TypeDesignationBase">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TypeDesignationBaseBeanProcessor"/>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.description.KeyStatement">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.KeyStatementBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.agent.TeamOrPersonBase">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TeamOrPersonBaseBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.description.DescriptionElementBase">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DescriptionElementBeanProcessor" />
+ </entry>
+ <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
+ <entry key="eu.etaxonomy.cdm.model.reference.CdmLinkSource">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.CdmLinkSourceBeanProcessor" />
+ </entry>
+ -->
+ <entry key="eu.etaxonomy.cdm.model.description.StateData">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.StateDataBeanProcessor" />
+ </entry>
+ <entry key="org.apache.lucene.document.Document">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.LuceneDocumentBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.api.service.dto.RegistrationDTO">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.RegistrationDtoBeanProcessor" />
+ </entry>
+ </map>
+ </property>
+ <property name="jsonPropertyFilter">
+ <bean class="net.sf.json.filters.OrPropertyFilter">
+ <constructor-arg>
+ <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
+ </constructor-arg>
+ <constructor-arg ref="genericApiCardinalityPropertyFilter">
+ </constructor-arg>
+ </bean>
+ </property>
+ <property name="jsonValueProcessorsByClass">
+ <map>
+ <entry key="org.hibernate.proxy.HibernateProxy">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.UUID">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
+ </entry>
+ <entry key="org.joda.time.DateTime">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.Calendar">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
+ </entry>
+ <entry key="org.joda.time.Partial">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
+ </entry>
+ <entry key="java.lang.Class">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.Map">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.LinkedHashMap">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.api.service.name.TypeDesignationWorkingSet">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.common.URI">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNodeStatus">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor"/>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor"/>
+ </entry>
+ </map>
+ </property>
+ <property name="ignoreDefaultExcludes" value="true" />
+ <property name="excludes">
+ <list value-type="java.lang.String">
+ <value>declaringClass</value><!-- DefaultExclude -->
+ <value>metaClass</value><!-- DefaultExclude -->
+ <value>id</value>
+ <value>cacheStrategy</value>
+ <value>createdBy</value>
+ <value>updatedBy</value>
+ <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
+ <value>cdmSourceTarget</value><! - - OriginalSourceBase.getCdmSourceTarget() -->
+ </list>
+ </property>
+ </bean>
+
+ <!--
+ =================================================
+ configuration for RESTful classification service
+ =================================================
+ -->
+ <bean name="jsonConfigClassification" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
+ init-method="init">
+ <property name="jsonBeanProcessorMatcher">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.matcher.HibernateProxyBeanProcessorMatcher" />
+ </property>
+ <property name="jsonBeanProcessors">
+ <map>
+ <entry key="org.hibernate.proxy.HibernateProxy">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNode2DtoBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeDtoBeanProcessor" />
+ </entry>
+ </map>
+ </property>
+ <property name="jsonPropertyFilter">
+ <bean class="net.sf.json.filters.OrPropertyFilter">
+ <constructor-arg>
+ <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
+ </constructor-arg>
+ <constructor-arg ref="genericApiCardinalityPropertyFilter">
+ </constructor-arg>
+ </bean>
+ </property>
+ <property name="jsonValueProcessorsByClass">
+ <map>
+ <entry key="org.hibernate.proxy.HibernateProxy">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.UUID">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
+ </entry>
+ <entry key="org.joda.time.DateTime">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.Calendar">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
+ </entry>
+ <entry key="org.joda.time.Partial">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
+ </entry>
+ <entry key="java.lang.Class">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.Map">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.common.URI">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNodeStatus">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor"/>
+ </entry>
+ </map>
+ </property>
+ <property name="ignoreDefaultExcludes" value="true" />
+ <property name="excludes">
+ <list value-type="java.lang.String">
+ <value>declaringClass</value><!-- DefaultExclude -->
+ <value>metaClass</value><!-- DefaultExclude -->
+ <value>id</value>
+ <value>cacheStrategy</value>
+ <value>createdBy</value>
+ <value>updatedBy</value>
+ </list>
+ </property>
+ </bean>
+
+ <!--
+ =================================================
+ configuration for RESTful portal service
+ =================================================
+ -->
+
+ <bean name="jsonConfigPortal" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
+ init-method="init">
+ <property name="jsonBeanProcessorMatcher">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmProxyBeanProcessorMatcher" />
+ </property>
+ <property name="defaultValueProcessorMatcher">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmDefaultValueProcessorMatcher" />
+ </property>
+ <property name="defaultValueProcessorMap">
+ <map>
+ <entry key="java.lang.Number">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.CdmDefaultValueProcessor" />
+ </entry>
+ </map>
+ </property>
+ <property name="jsonBeanProcessors">
+ <map>
+ <entry key="org.hibernate.proxy.HibernateProxy">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.bean.HibernateProxyBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.taxon.TaxonBase">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonBaseBeanProcessor">
+ <property name="excludes">
+ <set value-type="java.lang.String">
+ <value>acceptedTaxon</value><!-- #6211 to avoid infinite loops in the synonymy -->
+ </set>
+ </property>
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.name.TaxonName">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameBeanProcessor">
+ <property name="excludes">
+ <set value-type="java.lang.String">
+ <value>homotypicalGroup</value>
+ </set>
+ </property>
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeBeanProcessor">
+ <property name="replaceMultilanguageText" value="true" />
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNodeDtoBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.name.TypeDesignationBase">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TypeDesignationBaseBeanProcessor">
+ <property name="replaceMultilanguageText" value="true" />
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.name.NameRelationship">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.bean.NameRelationshipBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.taxon.TaxonRelationship">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonRelationshipBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.term.TermBase">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.bean.TermBaseBeanProcessor">
+ <property name="replaceRepresentations" value="true" />
+ <property name="excludes">
+ <set value-type="java.lang.String">
+ <value>infraGenericMarker</value><!-- FIXME leads to IllegalStateException if not excluded -->
+ <value>partOf</value><!-- DefinedTermBase -->
+ <value>kindOf</value><!-- DefinedTermBase -->
+ <value>includes</value><!-- DefinedTermBase -->
+ <value>generalizationOf</value><!-- DefinedTermBase -->
+ <value>vocabulary</value><!-- DefinedTermBase -->
+ <!--
+ FIXME must exclude partOf, kindOf, includes, generalizationOf .. to
+ avoid class cast or lazy loading exceptions in TDWG Areas
+ -->
+ </set>
+ </property>
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.media.Media">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.MediaBeanProcessor">
+ <property name="replaceTitle" value="true" />
+ <property name="replaceDescription" value="true" />
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.reference.Reference">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.ReferenceBaseBeanProcessor"/>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.description.TaxonNameDescription">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TaxonNameDescriptionBeanProcessor">
+ <property name="excludes">
+ <set value-type="java.lang.String">
+ <value>taxonName</value>
+ </set>
+ </property>
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.api.facade.DerivedUnitFacade">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DerivedUnitFacadeBeanProcessor"/>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.location.Point">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.PointBeanProcessor"/>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.agent.TeamOrPersonBase">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TeamOrPersonBaseBeanProcessor" />
+ </entry>
+ <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
+ <entry key="eu.etaxonomy.cdm.model.reference.CdmLinkSource">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.CdmLinkSourceBeanProcessor" />
+ </entry>
+ -->
+ <entry key="org.apache.lucene.document.Document">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.LuceneDocumentBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.common.TreeNode">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.TreeNodeBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.description.DescriptionElementBase">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.DescriptionElementBeanProcessor">
+ <property name="replaceMultilanguageText" value="true" />
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.description.StateData">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.StateDataBeanProcessor">
+ <property name="replaceMultilanguageText" value="true" />
+ </bean>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.description.KeyStatement">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.KeyStatementBeanProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.api.service.dto.RegistrationDTO">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.bean.RegistrationDtoBeanProcessor" />
+ </entry>
+ </map>
+ </property>
+ <property name="jsonPropertyFilter">
+ <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
+ </property>
+ <property name="jsonValueProcessorsByClass">
+ <map>
+ <entry key="org.hibernate.proxy.HibernateProxy">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.UUID">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
+ </entry>
+ <entry key="org.joda.time.DateTime">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.Calendar">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
+ </entry>
+ <entry key="org.joda.time.Partial">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
+ </entry>
+ <entry key="java.lang.Class">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.ClassJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.Map">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.LinkedHashMap">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.api.service.name.TypeDesignationWorkingSet">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.common.URI">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNodeStatus">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.KeyTermValueProcessor"/>
+ </entry>
+ </map>
+ </property>
+ <property name="ignoreDefaultExcludes" value="true" />
+ <property name="excludes">
+ <list value-type="java.lang.String">
+ <value>declaringClass</value><!-- DefaultExclude -->
+ <value>metaClass</value><!-- DefaultExclude -->
+ <value>id</value>
+ <!--
+ commented out,
+ see #3347 (services and REST service controller for molecular classes implemented)
+ <value>annotations</value>
+ <value>markers</value>
+ -->
+ <value>cacheStrategy</value>
+ <value>createdBy</value>
+ <value>updatedBy</value>
+ <value>inDescription</value>
+ <!-- TODO this bean processor is unused but preserved for the time when the REST API will be revised (#8637)
+ <value>cdmSourceTarget</value>< !- - OriginalSourceBase.getCdmSourceTarget() -->
+ </list>
+ </property>
+ </bean>
+
+ <!--
+ =================================================
+ default configuration name catalogue service
+ =================================================
+ -->
+ <bean name="nameCatalogueJsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
+ init-method="init">
+ <property name="jsonPropertyFilter">
+ <bean class="net.sf.json.filters.OrPropertyFilter">
+ <constructor-arg>
+ <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
+ </constructor-arg>
+ <constructor-arg ref="nameCatalogueApiCardinalityPropertyFilter">
+ </constructor-arg>
+ </bean>
+ </property>
+ <property name="jsonValueProcessorsByClass">
+ <map>
+ <entry key="org.hibernate.proxy.HibernateProxy">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.UUID">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
+ </entry>
+ <entry key="org.joda.time.DateTime">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.Calendar">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
+ </entry>
+ <entry key="org.joda.time.Partial">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.Map">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.common.URI">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
+ </entry>
+ </map>
+ </property>
+ <property name="ignoreDefaultExcludes" value="true" />
+ <property name="excludes">
+ <list value-type="java.lang.String">
+ <value>class</value>
+ <value>declaringClass</value><!-- DefaultExclude -->
+ <value>metaClass</value><!-- DefaultExclude -->
+ <value>id</value>
+ <value>cacheStrategy</value>
+ <value>createdBy</value>
+ <value>updatedBy</value>
+ </list>
+ </property>
+ </bean>
+
+ <bean name="occurrenceCatalogueJsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
+ init-method="init">
+ <property name="jsonPropertyFilter">
+ <bean class="net.sf.json.filters.OrPropertyFilter">
+ <constructor-arg>
+ <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
+ </constructor-arg>
+ <constructor-arg ref="nameCatalogueApiCardinalityPropertyFilter">
+ </constructor-arg>
+ </bean>
+ </property>
+ <property name="jsonValueProcessorsByClass">
+ <map>
+ <entry key="org.hibernate.proxy.HibernateProxy">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.HibernateJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.UUID">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.UUIDJSONValueProcessor" />
+ </entry>
+ <entry key="org.joda.time.DateTime">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.DateTimeJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.Calendar">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.CalendarJSONValueProcessor" />
+ </entry>
+ <entry key="org.joda.time.Partial">
+ <bean
+ class="eu.etaxonomy.cdm.remote.json.processor.value.PartialJSONValueProcessor" />
+ </entry>
+ <entry key="java.util.Map">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.MapJSONValueProcessor" />
+ </entry>
+ <entry key="eu.etaxonomy.cdm.common.URI">
+ <bean class="eu.etaxonomy.cdm.remote.json.processor.value.URIJSONValueProcessor"/>
+ </entry>
+
+ </map>
+ </property>
+ <property name="ignoreDefaultExcludes" value="true" />
+ <property name="excludes">
+ <list value-type="java.lang.String">
+ <value>class</value>
+ <value>declaringClass</value><!-- DefaultExclude -->
+ <value>metaClass</value><!-- DefaultExclude -->
+ <value>id</value>
+ <value>cacheStrategy</value>
+ <value>createdBy</value>
+ <value>updatedBy</value>
+ </list>
+ </property>
+ </bean>
+
+