• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<!-- NewPage -->
3<html lang="en">
4<head>
5<!-- Generated by javadoc (version 1.7.0_10-ea) on Sun Jul 14 20:03:26 PDT 2013 -->
6<title>DeserializationProblemHandler (Jackson JSON Processor)</title>
7<meta name="date" content="2013-07-14">
8<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
9</head>
10<body>
11<script type="text/javascript"><!--
12    if (location.href.indexOf('is-external=true') == -1) {
13        parent.document.title="DeserializationProblemHandler (Jackson JSON Processor)";
14    }
15//-->
16</script>
17<noscript>
18<div>JavaScript is disabled on your browser.</div>
19</noscript>
20<!-- ========= START OF TOP NAVBAR ======= -->
21<div class="topNav"><a name="navbar_top">
22<!--   -->
23</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
24<!--   -->
25</a>
26<ul class="navList" title="Navigation">
27<li><a href="../../../../overview-summary.html">Overview</a></li>
28<li><a href="package-summary.html">Package</a></li>
29<li class="navBarCell1Rev">Class</li>
30<li><a href="class-use/DeserializationProblemHandler.html">Use</a></li>
31<li><a href="package-tree.html">Tree</a></li>
32<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
33<li><a href="../../../../index-all.html">Index</a></li>
34<li><a href="../../../../help-doc.html">Help</a></li>
35</ul>
36</div>
37<div class="subNav">
38<ul class="navList">
39<li><a href="../../../../org/codehaus/jackson/map/DeserializationContext.html" title="class in org.codehaus.jackson.map"><span class="strong">Prev Class</span></a></li>
40<li><a href="../../../../org/codehaus/jackson/map/DeserializerFactory.html" title="class in org.codehaus.jackson.map"><span class="strong">Next Class</span></a></li>
41</ul>
42<ul class="navList">
43<li><a href="../../../../index.html?org/codehaus/jackson/map/DeserializationProblemHandler.html" target="_top">Frames</a></li>
44<li><a href="DeserializationProblemHandler.html" target="_top">No Frames</a></li>
45</ul>
46<ul class="navList" id="allclasses_navbar_top">
47<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
48</ul>
49<div>
50<script type="text/javascript"><!--
51  allClassesLink = document.getElementById("allclasses_navbar_top");
52  if(window==top) {
53    allClassesLink.style.display = "block";
54  }
55  else {
56    allClassesLink.style.display = "none";
57  }
58  //-->
59</script>
60</div>
61<div>
62<ul class="subNavList">
63<li>Summary:&nbsp;</li>
64<li>Nested&nbsp;|&nbsp;</li>
65<li>Field&nbsp;|&nbsp;</li>
66<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
67<li><a href="#method_summary">Method</a></li>
68</ul>
69<ul class="subNavList">
70<li>Detail:&nbsp;</li>
71<li>Field&nbsp;|&nbsp;</li>
72<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
73<li><a href="#method_detail">Method</a></li>
74</ul>
75</div>
76<a name="skip-navbar_top">
77<!--   -->
78</a></div>
79<!-- ========= END OF TOP NAVBAR ========= -->
80<!-- ======== START OF CLASS DATA ======== -->
81<div class="header">
82<div class="subTitle">org.codehaus.jackson.map</div>
83<h2 title="Class DeserializationProblemHandler" class="title">Class DeserializationProblemHandler</h2>
84</div>
85<div class="contentContainer">
86<ul class="inheritance">
87<li><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
88<li>
89<ul class="inheritance">
90<li>org.codehaus.jackson.map.DeserializationProblemHandler</li>
91</ul>
92</li>
93</ul>
94<div class="description">
95<ul class="blockList">
96<li class="blockList">
97<hr>
98<br>
99<pre>public abstract class <span class="strong">DeserializationProblemHandler</span>
100extends <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
101<div class="block">This is the class that can be registered (via
102 <a href="../../../../org/codehaus/jackson/map/DeserializationConfig.html" title="class in org.codehaus.jackson.map"><code>DeserializationConfig</code></a> object owner by
103 <a href="../../../../org/codehaus/jackson/map/ObjectMapper.html" title="class in org.codehaus.jackson.map"><code>ObjectMapper</code></a>) to get calledn when a potentially
104 recoverable problem is encountered during deserialization
105 process. Handlers can try to resolve the problem, throw
106 an exception or do nothing.
107<p>
108 Default implementations for all methods implemented minimal
109 "do nothing" functionality, which is roughly equivalent to
110 not having a registered listener at all. This allows for
111 only implemented handler methods one is interested in, without
112 handling other cases.</div>
113<dl><dt><span class="strong">Author:</span></dt>
114  <dd>tatu</dd></dl>
115</li>
116</ul>
117</div>
118<div class="summary">
119<ul class="blockList">
120<li class="blockList">
121<!-- ======== CONSTRUCTOR SUMMARY ======== -->
122<ul class="blockList">
123<li class="blockList"><a name="constructor_summary">
124<!--   -->
125</a>
126<h3>Constructor Summary</h3>
127<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
128<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
129<tr>
130<th class="colOne" scope="col">Constructor and Description</th>
131</tr>
132<tr class="altColor">
133<td class="colOne"><code><strong><a href="../../../../org/codehaus/jackson/map/DeserializationProblemHandler.html#DeserializationProblemHandler()">DeserializationProblemHandler</a></strong>()</code>&nbsp;</td>
134</tr>
135</table>
136</li>
137</ul>
138<!-- ========== METHOD SUMMARY =========== -->
139<ul class="blockList">
140<li class="blockList"><a name="method_summary">
141<!--   -->
142</a>
143<h3>Method Summary</h3>
144<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
145<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
146<tr>
147<th class="colFirst" scope="col">Modifier and Type</th>
148<th class="colLast" scope="col">Method and Description</th>
149</tr>
150<tr class="altColor">
151<td class="colFirst"><code>boolean</code></td>
152<td class="colLast"><code><strong><a href="../../../../org/codehaus/jackson/map/DeserializationProblemHandler.html#handleUnknownProperty(org.codehaus.jackson.map.DeserializationContext, org.codehaus.jackson.map.JsonDeserializer, java.lang.Object, java.lang.String)">handleUnknownProperty</a></strong>(<a href="../../../../org/codehaus/jackson/map/DeserializationContext.html" title="class in org.codehaus.jackson.map">DeserializationContext</a>&nbsp;ctxt,
153                     <a href="../../../../org/codehaus/jackson/map/JsonDeserializer.html" title="class in org.codehaus.jackson.map">JsonDeserializer</a>&lt;?&gt;&nbsp;deserializer,
154                     <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;beanOrClass,
155                     <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propertyName)</code>
156<div class="block">Method called when a Json Map ("Object") entry with an unrecognized
157 name is encountered.</div>
158</td>
159</tr>
160</table>
161<ul class="blockList">
162<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
163<!--   -->
164</a>
165<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
166<code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</a></code></li>
167</ul>
168</li>
169</ul>
170</li>
171</ul>
172</div>
173<div class="details">
174<ul class="blockList">
175<li class="blockList">
176<!-- ========= CONSTRUCTOR DETAIL ======== -->
177<ul class="blockList">
178<li class="blockList"><a name="constructor_detail">
179<!--   -->
180</a>
181<h3>Constructor Detail</h3>
182<a name="DeserializationProblemHandler()">
183<!--   -->
184</a>
185<ul class="blockListLast">
186<li class="blockList">
187<h4>DeserializationProblemHandler</h4>
188<pre>public&nbsp;DeserializationProblemHandler()</pre>
189</li>
190</ul>
191</li>
192</ul>
193<!-- ============ METHOD DETAIL ========== -->
194<ul class="blockList">
195<li class="blockList"><a name="method_detail">
196<!--   -->
197</a>
198<h3>Method Detail</h3>
199<a name="handleUnknownProperty(org.codehaus.jackson.map.DeserializationContext, org.codehaus.jackson.map.JsonDeserializer, java.lang.Object, java.lang.String)">
200<!--   -->
201</a>
202<ul class="blockListLast">
203<li class="blockList">
204<h4>handleUnknownProperty</h4>
205<pre>public&nbsp;boolean&nbsp;handleUnknownProperty(<a href="../../../../org/codehaus/jackson/map/DeserializationContext.html" title="class in org.codehaus.jackson.map">DeserializationContext</a>&nbsp;ctxt,
206                            <a href="../../../../org/codehaus/jackson/map/JsonDeserializer.html" title="class in org.codehaus.jackson.map">JsonDeserializer</a>&lt;?&gt;&nbsp;deserializer,
207                            <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;beanOrClass,
208                            <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propertyName)
209                              throws <a href="http://docs.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
210                                     <a href="../../../../org/codehaus/jackson/JsonProcessingException.html" title="class in org.codehaus.jackson">JsonProcessingException</a></pre>
211<div class="block">Method called when a Json Map ("Object") entry with an unrecognized
212 name is encountered.
213 Content (supposedly) matching the property are accessible via
214 parser that can be obtained from passed deserialization context.
215 Handler can also choose to skip the content; if so, it MUST return
216 true to indicate it did handle property succesfully.
217 Skipping is usually done like so:
218<pre>
219  ctxt.getParser().skipChildren();
220</pre>
221<p>
222 Note: version 1.2 added new deserialization feature
223 (<code>DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES</code>).
224 It will only have effect <b>after</b> handler is called, and only
225 if handler did <b>not</b> handle the problem.</div>
226<dl><dt><span class="strong">Parameters:</span></dt><dd><code>beanOrClass</code> - Either bean instance being deserialized (if one
227   has been instantiated so far); or Class that indicates type that
228   will be instantiated (if no instantiation done yet: for example
229   when bean uses non-default constructors)</dd>
230<dt><span class="strong">Returns:</span></dt><dd>True if the problem was succesfully resolved (and content available
231    used or skipped); false if listen</dd>
232<dt><span class="strong">Throws:</span></dt>
233<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
234<dd><code><a href="../../../../org/codehaus/jackson/JsonProcessingException.html" title="class in org.codehaus.jackson">JsonProcessingException</a></code></dd></dl>
235</li>
236</ul>
237</li>
238</ul>
239</li>
240</ul>
241</div>
242</div>
243<!-- ========= END OF CLASS DATA ========= -->
244<!-- ======= START OF BOTTOM NAVBAR ====== -->
245<div class="bottomNav"><a name="navbar_bottom">
246<!--   -->
247</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
248<!--   -->
249</a>
250<ul class="navList" title="Navigation">
251<li><a href="../../../../overview-summary.html">Overview</a></li>
252<li><a href="package-summary.html">Package</a></li>
253<li class="navBarCell1Rev">Class</li>
254<li><a href="class-use/DeserializationProblemHandler.html">Use</a></li>
255<li><a href="package-tree.html">Tree</a></li>
256<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
257<li><a href="../../../../index-all.html">Index</a></li>
258<li><a href="../../../../help-doc.html">Help</a></li>
259</ul>
260</div>
261<div class="subNav">
262<ul class="navList">
263<li><a href="../../../../org/codehaus/jackson/map/DeserializationContext.html" title="class in org.codehaus.jackson.map"><span class="strong">Prev Class</span></a></li>
264<li><a href="../../../../org/codehaus/jackson/map/DeserializerFactory.html" title="class in org.codehaus.jackson.map"><span class="strong">Next Class</span></a></li>
265</ul>
266<ul class="navList">
267<li><a href="../../../../index.html?org/codehaus/jackson/map/DeserializationProblemHandler.html" target="_top">Frames</a></li>
268<li><a href="DeserializationProblemHandler.html" target="_top">No Frames</a></li>
269</ul>
270<ul class="navList" id="allclasses_navbar_bottom">
271<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
272</ul>
273<div>
274<script type="text/javascript"><!--
275  allClassesLink = document.getElementById("allclasses_navbar_bottom");
276  if(window==top) {
277    allClassesLink.style.display = "block";
278  }
279  else {
280    allClassesLink.style.display = "none";
281  }
282  //-->
283</script>
284</div>
285<div>
286<ul class="subNavList">
287<li>Summary:&nbsp;</li>
288<li>Nested&nbsp;|&nbsp;</li>
289<li>Field&nbsp;|&nbsp;</li>
290<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
291<li><a href="#method_summary">Method</a></li>
292</ul>
293<ul class="subNavList">
294<li>Detail:&nbsp;</li>
295<li>Field&nbsp;|&nbsp;</li>
296<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
297<li><a href="#method_detail">Method</a></li>
298</ul>
299</div>
300<a name="skip-navbar_bottom">
301<!--   -->
302</a></div>
303<!-- ======== END OF BOTTOM NAVBAR ======= -->
304</body>
305</html>
306