Project

General

Profile

« Previous | Next » 

Revision 892efc69

Added by Andreas Kohlbecker almost 14 years ago

merging /branches/cdmlib/SPRINT-Chichorieae1/ to trunk

View differences:

cdmlib-remote/src/main/webapp/WEB-INF/jsonConfigurations.xml
7 7
    http://www.springframework.org/schema/context   http://www.springframework.org/schema/context/spring-context-2.5.xsd
8 8
    http://www.springframework.org/schema/tx   http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
9 9
    ">
10
	   
11
     <!-- default configuration for RESTful read(/write) service -->
12
    <bean name="jsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean" init-method="init">
13
        <property name="jsonBeanProcessorMatcher">
14
            <bean class="eu.etaxonomy.cdm.remote.json.processor.CdmProxyBeanProcessorMatcher" />
15
        </property>
16
        <property name="jsonBeanProcessors">
10

  
11
	<!-- default configuration for RESTful read(/write) service -->
12
	<bean name="jsonConfig" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
13
		init-method="init">
14
		<property name="jsonBeanProcessorMatcher">
15
			<bean
16
				class="eu.etaxonomy.cdm.remote.json.processor.CdmProxyBeanProcessorMatcher" />
17
		</property>
18
		<property name="jsonBeanProcessors">
17 19
			<map>
18 20
				<entry key="org.hibernate.proxy.HibernateProxy">
19
	                    <bean class="eu.etaxonomy.cdm.remote.json.processor.HibernateProxyBeanProcessor"/>
20
	            </entry>
21
	            <entry key="eu.etaxonomy.cdm.model.common.TermBase">
22
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.TermBaseBeanProcessor" />
23
                </entry>
24
                <entry key="eu.etaxonomy.cdm.model.description.TextData">
25
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.TextDataBeanProcessor" />
26
                </entry>
27
            </map>
28
        </property>
29
        <property name="jsonPropertyFilters">
30
            <list>
31
                <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter"/>
32
            </list>
33
        </property>
34
        <property name="jsonValueProcessors">
35
            <map>
36
            	<entry key="org.hibernate.proxy.HibernateProxy">
37
            		<bean class="eu.etaxonomy.cdm.remote.json.processor.HibernateJSONValueProcessor" />
38
            	</entry>
39
                <entry key="java.util.UUID">
40
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.UUIDJSONValueProcessor"/>
41
                </entry>
42
                <entry key="org.joda.time.DateTime">
43
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.DateTimeJSONValueProcessor"/>
44
                </entry>
45
                <entry key="java.util.Calendar">
46
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.CalendarJSONValueProcessor"/>
47
                </entry>
48
                <entry key="org.joda.time.Partial">
49
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.PartialJSONValueProcessor"/>
50
                </entry>
51
                <entry key="java.lang.Class">
52
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.ClassJSONValueProcessor"/>
53
                </entry>
54
            </map>
21
					<bean class="eu.etaxonomy.cdm.remote.json.processor.HibernateProxyBeanProcessor" />
22
				</entry>
23
				<entry key="eu.etaxonomy.cdm.model.common.TermBase">
24
					<bean class="eu.etaxonomy.cdm.remote.json.processor.TermBaseBeanProcessor" />
25
				</entry>
26
				<entry key="eu.etaxonomy.cdm.model.description.TextData">
27
					<bean class="eu.etaxonomy.cdm.remote.json.processor.TextDataBeanProcessor" />
28
				</entry>
29
				<entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
30
					<bean class="eu.etaxonomy.cdm.remote.json.processor.TaxonNodeBeanProcessor" />
31
				</entry>
32
			  <entry key="eu.etaxonomy.cdm.model.reference.ReferenceBase">
33
          <bean class="eu.etaxonomy.cdm.remote.json.processor.ReferenceBaseBeanProcessor"/>
34
        </entry>
35
			</map>
36
		</property>
37
		<property name="jsonPropertyFilter">
38
            <bean class="net.sf.json.filters.OrPropertyFilter">
39
              <constructor-arg>
40
                  <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
41
              </constructor-arg>
42
              <constructor-arg>
43
                  <bean class="eu.etaxonomy.cdm.remote.json.util.CardinalityPropertyFilter">
44
                      <property name="includeToOneRelations" value="false" />
45
                      <property name="includeToManyRelations" value="false" />
46
                      <property name="exceptions">
47
                        <set>
48
                            <value>FeatureTree.root</value>
49
                            <value>FeatureNode.children</value>
50
                            <value>FeatureNode.feature</value>
51
                            <value>TreeNode.data</value>
52
                        </set>
53
                      </property>
54
                    </bean>
55
              </constructor-arg>
56
            </bean>
55 57
        </property>
56
        <property name="ignoreDefaultExcludes" value="true" />
57
        <property name="excludes">
58
            <list value-type="java.lang.String">
58
		<property name="jsonValueProcessors">
59
			<map>
60
				<entry key="org.hibernate.proxy.HibernateProxy">
61
					<bean
62
						class="eu.etaxonomy.cdm.remote.json.processor.HibernateJSONValueProcessor" />
63
				</entry>
64
				<entry key="java.util.UUID">
65
					<bean
66
						class="eu.etaxonomy.cdm.remote.json.processor.UUIDJSONValueProcessor" />
67
				</entry>
68
				<entry key="org.joda.time.DateTime">
69
					<bean
70
						class="eu.etaxonomy.cdm.remote.json.processor.DateTimeJSONValueProcessor" />
71
				</entry>
72
				<entry key="java.util.Calendar">
73
					<bean
74
						class="eu.etaxonomy.cdm.remote.json.processor.CalendarJSONValueProcessor" />
75
				</entry>
76
				<entry key="org.joda.time.Partial">
77
					<bean
78
						class="eu.etaxonomy.cdm.remote.json.processor.PartialJSONValueProcessor" />
79
				</entry>
80
				<entry key="java.lang.Class">
81
					<bean
82
						class="eu.etaxonomy.cdm.remote.json.processor.ClassJSONValueProcessor" />
83
				</entry>
84
			</map>
85
		</property>
86
		<property name="ignoreDefaultExcludes" value="true" />
87
		<property name="excludes">
88
			<list value-type="java.lang.String">
59 89
				<value>declaringClass</value><!-- DefaultExclude -->
60 90
				<value>metaClass</value><!-- DefaultExclude -->
61 91
				<value>id</value>
62
                <value>cacheStrategy</value>
92
				<value>cacheStrategy</value>
63 93
			</list>
64 94
		</property>
65
    </bean>
66
    
67
    <!-- configuration for RESTful taxonomy service -->
68
    <bean name="jsonConfigTaxonomy" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean" init-method="init">
69
        <property name="jsonBeanProcessorMatcher">
70
            <bean class="eu.etaxonomy.cdm.remote.json.processor.HibernateProxyBeanProcessorMatcher"/>
71
        </property>
72
          <property name="jsonBeanProcessors">
73
            <map>
74
                <entry key="org.hibernate.proxy.HibernateProxy">
75
                        <bean class="eu.etaxonomy.cdm.remote.json.processor.HibernateProxyBeanProcessor"/>
76
                </entry>
77
                <entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
78
                        <bean class="eu.etaxonomy.cdm.remote.json.processor.TaxonNodeBeanProcessor"/>
79
                </entry>
80
            </map>
81
        </property>
82
        <property name="jsonPropertyFilters">
83
            <list>
84
                <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter"/>
85
            </list>
86
        </property>
87
        <property name="jsonValueProcessors">
88
            <map>
89
                <entry key="org.hibernate.proxy.HibernateProxy">
90
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.HibernateJSONValueProcessor" />
91
                </entry>
92
                <entry key="java.util.UUID">
93
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.UUIDJSONValueProcessor"/>
94
                </entry>
95
                <entry key="org.joda.time.DateTime">
96
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.DateTimeJSONValueProcessor"/>
97
                </entry>
98
                <entry key="java.util.Calendar">
99
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.CalendarJSONValueProcessor"/>
100
                </entry>
101
                <entry key="org.joda.time.Partial">
102
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.PartialJSONValueProcessor"/>
103
                </entry>
104
                <entry key="java.lang.Class">
105
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.ClassJSONValueProcessor"/>
106
                </entry>
107
            </map>
95
	</bean>
96

  
97
	<!-- configuration for RESTful taxonomy service -->
98
	<bean name="jsonConfigTaxonomy" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
99
		init-method="init">
100
		<property name="jsonBeanProcessorMatcher">
101
			<bean
102
				class="eu.etaxonomy.cdm.remote.json.processor.HibernateProxyBeanProcessorMatcher" />
103
		</property>
104
		<property name="jsonBeanProcessors">
105
			<map>
106
				<entry key="org.hibernate.proxy.HibernateProxy">
107
					<bean
108
						class="eu.etaxonomy.cdm.remote.json.processor.HibernateProxyBeanProcessor" />
109
				</entry>
110
				<entry key="eu.etaxonomy.cdm.model.taxon.TaxonNode">
111
					<bean
112
						class="eu.etaxonomy.cdm.remote.json.processor.TaxonNodeDaoBeanProcessor" />
113
				</entry>
114
			</map>
115
		</property>
116
		<property name="jsonPropertyFilter">
117
            <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
108 118
        </property>
119
		<property name="jsonValueProcessors">
120
			<map>
121
				<entry key="org.hibernate.proxy.HibernateProxy">
122
					<bean
123
						class="eu.etaxonomy.cdm.remote.json.processor.HibernateJSONValueProcessor" />
124
				</entry>
125
				<entry key="java.util.UUID">
126
					<bean
127
						class="eu.etaxonomy.cdm.remote.json.processor.UUIDJSONValueProcessor" />
128
				</entry>
129
				<entry key="org.joda.time.DateTime">
130
					<bean
131
						class="eu.etaxonomy.cdm.remote.json.processor.DateTimeJSONValueProcessor" />
132
				</entry>
133
				<entry key="java.util.Calendar">
134
					<bean
135
						class="eu.etaxonomy.cdm.remote.json.processor.CalendarJSONValueProcessor" />
136
				</entry>
137
				<entry key="org.joda.time.Partial">
138
					<bean
139
						class="eu.etaxonomy.cdm.remote.json.processor.PartialJSONValueProcessor" />
140
				</entry>
141
				<entry key="java.lang.Class">
142
					<bean
143
						class="eu.etaxonomy.cdm.remote.json.processor.ClassJSONValueProcessor" />
144
				</entry>
145
			</map>
146
		</property>
109 147
		<property name="ignoreDefaultExcludes" value="true" />
110
        <property name="excludes">
111
            <list value-type="java.lang.String">
148
		<property name="excludes">
149
			<list value-type="java.lang.String">
112 150
				<value>declaringClass</value><!-- DefaultExclude -->
113 151
				<value>metaClass</value><!-- DefaultExclude -->
114
                <value>id</value>
115
                <value>cacheStrategy</value>
116
            </list>
117
        </property>
118
    </bean> 
119
    
120
    <!-- configuration for RESTful portal service -->
121
    
122
    <bean name="jsonConfigPortal" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean" init-method="init">
123
        <property name="jsonBeanProcessorMatcher">
124
            <bean class="eu.etaxonomy.cdm.remote.json.processor.CdmProxyBeanProcessorMatcher"/>
125
        </property>
126
          <property name="jsonBeanProcessors">
127
            <map>
128
                <entry key="org.hibernate.proxy.HibernateProxy">
129
                        <bean class="eu.etaxonomy.cdm.remote.json.processor.HibernateProxyBeanProcessor"/>
130
                </entry>
131
                <entry key="eu.etaxonomy.cdm.model.taxon.Taxon">
132
                        <bean class="eu.etaxonomy.cdm.remote.json.processor.TaxonBeanProcessor"/>
133
                </entry>
134
                <entry key="eu.etaxonomy.cdm.model.name.TaxonNameBase">
135
                        <bean class="eu.etaxonomy.cdm.remote.json.processor.TaxonNameBaseBeanProcessor"/>
136
                </entry>
137
                <entry key="eu.etaxonomy.cdm.model.name.NameRelationship">
138
                        <bean class="eu.etaxonomy.cdm.remote.json.processor.NameRelationshipBeanProcessor"/>
139
                </entry>
140
                <entry key="eu.etaxonomy.cdm.model.taxon.TaxonRelationship">
141
                        <bean class="eu.etaxonomy.cdm.remote.json.processor.TaxonRelationshipBeanProcessor"/>
142
                </entry> 
143
                <entry key="eu.etaxonomy.cdm.model.common.TermBase">
144
                        <bean class="eu.etaxonomy.cdm.remote.json.processor.TermBaseBeanProcessor">
145
                        	<property name="replaceRepresentations" value="true" />
146
                        </bean>
147
                </entry>
148
                <entry key="eu.etaxonomy.cdm.model.description.TextData">
149
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.TextDataBeanProcessor">
150
                    	<property name="replaceMultilanguageText" value="true" />
151
                    </bean>
152
                </entry>
153
                <entry key="eu.etaxonomy.cdm.model.media.Media">
154
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.MediaBeanProcessor">
155
                    	<property name="replaceTitle" value="true" />
156
                    	<property name="replaceDescription" value="true" />
157
                    </bean>
158
                </entry>
159
            </map>
160
        </property>
161
        <property name="jsonPropertyFilters">
162
            <list>
163
                <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter"/>
164
            </list>
165
        </property>
166
        <property name="jsonValueProcessors">
167
            <map>
168
                <entry key="org.hibernate.proxy.HibernateProxy">
169
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.HibernateJSONValueProcessor" />
170
                </entry>
171
                <entry key="java.util.UUID">
172
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.UUIDJSONValueProcessor"/>
173
                </entry>
174
                <entry key="org.joda.time.DateTime">
175
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.DateTimeJSONValueProcessor"/>
176
                </entry>
177
                <entry key="java.util.Calendar">
178
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.CalendarJSONValueProcessor"/>
179
                </entry>
180
                <entry key="org.joda.time.Partial">
181
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.PartialJSONValueProcessor"/>
182
                </entry>
183
                <entry key="java.lang.Class">
184
                    <bean class="eu.etaxonomy.cdm.remote.json.processor.ClassJSONValueProcessor"/>
185
                </entry>
186
            </map>
152
				<value>id</value>
153
				<value>cacheStrategy</value>
154
			</list>
155
		</property>
156
	</bean>
157

  
158
	<!-- configuration for RESTful portal service -->
159

  
160
	<bean name="jsonConfigPortal" class="eu.etaxonomy.cdm.remote.json.JsonConfigFactoryBean"
161
		init-method="init">
162
		<property name="jsonBeanProcessorMatcher">
163
			<bean
164
				class="eu.etaxonomy.cdm.remote.json.processor.CdmProxyBeanProcessorMatcher" />
165
		</property>
166
		<property name="jsonBeanProcessors">
167
			<map>
168
				<entry key="org.hibernate.proxy.HibernateProxy">
169
					<bean
170
						class="eu.etaxonomy.cdm.remote.json.processor.HibernateProxyBeanProcessor" />
171
				</entry>
172
				<entry key="eu.etaxonomy.cdm.model.taxon.Taxon">
173
					<bean class="eu.etaxonomy.cdm.remote.json.processor.TaxonBeanProcessor" />
174
				</entry>
175
				<entry key="eu.etaxonomy.cdm.model.name.TaxonNameBase">
176
					<bean
177
						class="eu.etaxonomy.cdm.remote.json.processor.TaxonNameBaseBeanProcessor" />
178
				</entry>
179
				<entry key="eu.etaxonomy.cdm.model.name.NameRelationship">
180
					<bean
181
						class="eu.etaxonomy.cdm.remote.json.processor.NameRelationshipBeanProcessor" />
182
				</entry>
183
				<entry key="eu.etaxonomy.cdm.model.taxon.TaxonRelationship">
184
					<bean
185
						class="eu.etaxonomy.cdm.remote.json.processor.TaxonRelationshipBeanProcessor" />
186
				</entry>
187
				<entry key="eu.etaxonomy.cdm.model.common.TermBase">
188
					<bean
189
						class="eu.etaxonomy.cdm.remote.json.processor.TermBaseBeanProcessor">
190
						<property name="replaceRepresentations" value="true" />
191
					</bean>
192
				</entry>
193
				<entry key="eu.etaxonomy.cdm.model.description.TextData">
194
					<bean
195
						class="eu.etaxonomy.cdm.remote.json.processor.TextDataBeanProcessor">
196
						<property name="replaceMultilanguageText" value="true" />
197
					</bean>
198
				</entry>
199
				<entry key="eu.etaxonomy.cdm.model.media.Media">
200
					<bean class="eu.etaxonomy.cdm.remote.json.processor.MediaBeanProcessor">
201
						<property name="replaceTitle" value="true" />
202
						<property name="replaceDescription" value="true" />
203
					</bean>
204
				</entry>
205
			  <entry key="eu.etaxonomy.cdm.model.reference.ReferenceBase">
206
                <bean class="eu.etaxonomy.cdm.remote.json.processor.ReferenceBaseBeanProcessor"/>
207
              </entry>
208
			</map>
209
		</property>
210
        <property name="jsonPropertyFilter">
211
            <bean class="eu.etaxonomy.cdm.remote.json.util.InitializedHibernatePropertyFilter" />
187 212
        </property>
188
        <property name="ignoreDefaultExcludes" value="true" />
189
        <property name="excludes">
190
            <list value-type="java.lang.String">
213
		<property name="jsonValueProcessors">
214
			<map>
215
				<entry key="org.hibernate.proxy.HibernateProxy">
216
					<bean
217
						class="eu.etaxonomy.cdm.remote.json.processor.HibernateJSONValueProcessor" />
218
				</entry>
219
				<entry key="java.util.UUID">
220
					<bean
221
						class="eu.etaxonomy.cdm.remote.json.processor.UUIDJSONValueProcessor" />
222
				</entry>
223
				<entry key="org.joda.time.DateTime">
224
					<bean
225
						class="eu.etaxonomy.cdm.remote.json.processor.DateTimeJSONValueProcessor" />
226
				</entry>
227
				<entry key="java.util.Calendar">
228
					<bean
229
						class="eu.etaxonomy.cdm.remote.json.processor.CalendarJSONValueProcessor" />
230
				</entry>
231
				<entry key="org.joda.time.Partial">
232
					<bean
233
						class="eu.etaxonomy.cdm.remote.json.processor.PartialJSONValueProcessor" />
234
				</entry>
235
				<entry key="java.lang.Class">
236
					<bean
237
						class="eu.etaxonomy.cdm.remote.json.processor.ClassJSONValueProcessor" />
238
				</entry>
239
			</map>
240
		</property>
241
		<property name="ignoreDefaultExcludes" value="true" />
242
		<property name="excludes">
243
			<list value-type="java.lang.String">
191 244
				<value>declaringClass</value><!-- DefaultExclude -->
192 245
				<value>metaClass</value><!-- DefaultExclude -->
193
                <value>id</value>
194
                <value>annotations</value>
195
                <value>cacheStrategy</value>
196
                <value>markers</value>
197
                <!--  FIXME must exclude partOf, kindOf, includes, generalizationOf .. to avoid class cast or lazy loading exceptions in TDWG Areas -->
198
                <value>partOf</value>
199
                <value>kindOf</value>
200
                <value>includes</value>
201
                <value>generalizationOf</value>
202
            </list>
203
        </property>
204
    </bean> 
246
				<value>id</value>
247
				<value>annotations</value>
248
				<value>cacheStrategy</value>
249
				<value>markers</value>
250
				<!--
251
					FIXME must exclude partOf, kindOf, includes, generalizationOf .. to
252
					avoid class cast or lazy loading exceptions in TDWG Areas
253
				-->
254
				<value>partOf</value>
255
				<value>kindOf</value>
256
				<value>includes</value>
257
				<value>generalizationOf</value>
258
			</list>
259
		</property>
260
	</bean> 
205 261
</beans>

Also available in: Unified diff