1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<!--NewPage--> 3<HTML> 4<HEAD> 5<!-- Generated by javadoc (build 1.6.0_35) on Fri Oct 05 20:53:29 PDT 2012 --> 6<META http-equiv="Content-Type" content="text/html; charset=UTF-8"> 7<TITLE> 8JsonCreator (Jackson-annotations 2.1.0 API) 9</TITLE> 10 11<META NAME="date" CONTENT="2012-10-05"> 12 13<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style"> 14 15<SCRIPT type="text/javascript"> 16function windowTitle() 17{ 18 if (location.href.indexOf('is-external=true') == -1) { 19 parent.document.title="JsonCreator (Jackson-annotations 2.1.0 API)"; 20 } 21} 22</SCRIPT> 23<NOSCRIPT> 24</NOSCRIPT> 25 26</HEAD> 27 28<BODY BGCOLOR="white" onload="windowTitle();"> 29<HR> 30 31 32<!-- ========= START OF TOP NAVBAR ======= --> 33<A NAME="navbar_top"><!-- --></A> 34<A HREF="#skip-navbar_top" title="Skip navigation links"></A> 35<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> 36<TR> 37<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> 38<A NAME="navbar_top_firstrow"><!-- --></A> 39<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> 40 <TR ALIGN="center" VALIGN="top"> 41 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../com/fasterxml/jackson/annotation/package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> 42 <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> 43 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/JsonCreator.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD> 44 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> 45 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> 46 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> 47 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> 48 </TR> 49</TABLE> 50</TD> 51<TD ALIGN="right" VALIGN="top" ROWSPAN=3><script type="text/javascript"><!-- 52google_ad_client = "pub-1467773697956887"; 53/* Jackson-ad-small */ 54google_ad_slot = "6699487946"; 55google_ad_width = 234; 56google_ad_height = 60; 57//--> 58</script> 59<script type="text/javascript" 60src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> 61</script> 62</TD> 63</TR> 64 65<TR> 66<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> 67 <A HREF="../../../../com/fasterxml/jackson/annotation/JsonBackReference.html" title="annotation in com.fasterxml.jackson.annotation"><B>PREV CLASS</B></A> 68 <A HREF="../../../../com/fasterxml/jackson/annotation/JsonFilter.html" title="annotation in com.fasterxml.jackson.annotation"><B>NEXT CLASS</B></A></FONT></TD> 69<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> 70 <A HREF="../../../../index.html?com/fasterxml/jackson/annotation/JsonCreator.html" target="_top"><B>FRAMES</B></A> 71 <A HREF="JsonCreator.html" target="_top"><B>NO FRAMES</B></A> 72 <SCRIPT type="text/javascript"> 73 <!-- 74 if(window==top) { 75 document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); 76 } 77 //--> 78</SCRIPT> 79<NOSCRIPT> 80 <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A> 81</NOSCRIPT> 82 83 84</FONT></TD> 85</TR> 86<TR> 87<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> 88 SUMMARY: REQUIRED | OPTIONAL</FONT></TD> 89<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> 90DETAIL: ELEMENT</FONT></TD> 91</TR> 92</TABLE> 93<A NAME="skip-navbar_top"></A> 94<!-- ========= END OF TOP NAVBAR ========= --> 95 96<HR> 97<!-- ======== START OF CLASS DATA ======== --> 98<H2> 99<FONT SIZE="-1"> 100com.fasterxml.jackson.annotation</FONT> 101<BR> 102Annotation Type JsonCreator</H2> 103<HR> 104<DL> 105<DT><PRE><FONT SIZE="-1"><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/annotation/Target.html?is-external=true" title="class or interface in java.lang.annotation">@Target</A>(<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/annotation/Target.html?is-external=true#value()" title="class or interface in java.lang.annotation">value</A>={<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/annotation/ElementType.html?is-external=true#ANNOTATION_TYPE" title="class or interface in java.lang.annotation">ANNOTATION_TYPE</A>,<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/annotation/ElementType.html?is-external=true#METHOD" title="class or interface in java.lang.annotation">METHOD</A>,<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/annotation/ElementType.html?is-external=true#CONSTRUCTOR" title="class or interface in java.lang.annotation">CONSTRUCTOR</A>}) 106<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/annotation/Retention.html?is-external=true" title="class or interface in java.lang.annotation">@Retention</A>(<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/annotation/Retention.html?is-external=true#value()" title="class or interface in java.lang.annotation">value</A>=<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/annotation/RetentionPolicy.html?is-external=true#RUNTIME" title="class or interface in java.lang.annotation">RUNTIME</A>) 107</FONT>public @interface <B>JsonCreator</B></DL> 108</PRE> 109 110<P> 111Marker annotation that can be used to define constructors and factory 112 methods as one to use for instantiating new instances of the associated 113 class. 114<p> 115 NOTE: when annotating creator methods (constructors, factory methods), 116 method must either be: 117<ul> 118 <li>Single-argument constructor/factory method without <A HREF="../../../../com/fasterxml/jackson/annotation/JsonProperty.html" title="annotation in com.fasterxml.jackson.annotation"><CODE>JsonProperty</CODE></A> 119 annotation for the argument: if so, this is so-called "delegate creator", 120 in which case Jackson first binds JSON into type of the argument, and 121 then calls creator 122 </li> 123 <li>Constructor/factory method where <b>every argument</b> is annotated with 124 either <A HREF="../../../../com/fasterxml/jackson/annotation/JsonProperty.html" title="annotation in com.fasterxml.jackson.annotation"><CODE>JsonProperty</CODE></A> or <A HREF="../../../../com/fasterxml/jackson/annotation/JacksonInject.html" title="annotation in com.fasterxml.jackson.annotation"><CODE>JacksonInject</CODE></A>, to indicate name 125 of property to bind to 126 </li> 127 </ul> 128 Also note that all <A HREF="../../../../com/fasterxml/jackson/annotation/JsonProperty.html" title="annotation in com.fasterxml.jackson.annotation"><CODE>JsonProperty</CODE></A> annotations MUST use actual name 129 (NOT empty String for "default"): this because Java bytecode does not 130 retain names of method or constructor arguments. 131<P> 132 133<P> 134 135<P> 136 137<P> 138<!-- ========= END OF CLASS DATA ========= --> 139<HR> 140 141 142<!-- ======= START OF BOTTOM NAVBAR ====== --> 143<A NAME="navbar_bottom"><!-- --></A> 144<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A> 145<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> 146<TR><td rowspan='3'><script type="text/javascript"><!-- 147google_ad_client = "pub-1467773697956887"; 148/* Jackson-ad-small */ 149google_ad_slot = "6699487946"; 150google_ad_width = 234; 151google_ad_height = 60; 152//--> 153</script> 154<script type="text/javascript" 155src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> 156</script> 157<!-- GA --> 158<script type="text/javascript"> 159var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); 160document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); 161</script> 162<script type="text/javascript"> 163try { 164var pageTracker = _gat._getTracker("UA-140287-6"); 165pageTracker._trackPageview(); 166} catch(err) {} 167</script> 168</td> 169<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> 170<A NAME="navbar_bottom_firstrow"><!-- --></A> 171<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> 172 <TR ALIGN="center" VALIGN="top"> 173 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../com/fasterxml/jackson/annotation/package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> 174 <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> 175 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/JsonCreator.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD> 176 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> 177 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> 178 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> 179 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> 180 </TR> 181</TABLE> 182</TD> 183<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> 184</EM> 185</TD> 186</TR> 187 188<TR> 189<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> 190 <A HREF="../../../../com/fasterxml/jackson/annotation/JsonBackReference.html" title="annotation in com.fasterxml.jackson.annotation"><B>PREV CLASS</B></A> 191 <A HREF="../../../../com/fasterxml/jackson/annotation/JsonFilter.html" title="annotation in com.fasterxml.jackson.annotation"><B>NEXT CLASS</B></A></FONT></TD> 192<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> 193 <A HREF="../../../../index.html?com/fasterxml/jackson/annotation/JsonCreator.html" target="_top"><B>FRAMES</B></A> 194 <A HREF="JsonCreator.html" target="_top"><B>NO FRAMES</B></A> 195 <SCRIPT type="text/javascript"> 196 <!-- 197 if(window==top) { 198 document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); 199 } 200 //--> 201</SCRIPT> 202<NOSCRIPT> 203 <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A> 204</NOSCRIPT> 205 206 207</FONT></TD> 208</TR> 209<TR> 210<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> 211 SUMMARY: REQUIRED | OPTIONAL</FONT></TD> 212<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> 213DETAIL: ELEMENT</FONT></TD> 214</TR> 215</TABLE> 216<A NAME="skip-navbar_bottom"></A> 217<!-- ======== END OF BOTTOM NAVBAR ======= --> 218 219<HR> 220Copyright © 2012 <a href="http://fasterxml.com/">FasterXML</a>. All Rights Reserved. 221</BODY> 222</HTML> 223