xmlelementdecl.html

来自「j2ee帮助文档软件设计/软件工程 文件格式」· HTML 代码 · 共 481 行 · 第 1/2 页

HTML
481
字号
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><!--NewPage--><HTML><HEAD><!-- Generated by javadoc (build 1.5.0_14) on Mon Jan 28 05:46:59 PST 2008 --><TITLE>XmlElementDecl (Java EE 5)</TITLE><META NAME="keywords" CONTENT="javax.xml.bind.annotation.XmlElementDecl class"><LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style"><SCRIPT type="text/javascript">function windowTitle(){    parent.document.title="XmlElementDecl (Java EE 5)";}</SCRIPT><NOSCRIPT></NOSCRIPT></HEAD><BODY BGCOLOR="white" onload="windowTitle();"><!-- ========= START OF TOP NAVBAR ======= --><A NAME="navbar_top"><!-- --></A><A HREF="#skip-navbar_top" title="Skip navigation links"></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""><TR><TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_top_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">  <TR ALIGN="center" VALIGN="top">  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>  </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">&nbsp;<A HREF="../../../../javax/xml/bind/annotation/XmlElement.DEFAULT.html" title="class in javax.xml.bind.annotation"><B>PREV CLASS</B></A>&nbsp;&nbsp;<A HREF="../../../../javax/xml/bind/annotation/XmlElementDecl.GLOBAL.html" title="class in javax.xml.bind.annotation"><B>NEXT CLASS</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">  <A HREF="../../../../index.html?javax/xml/bind/annotation/XmlElementDecl.html" target="_top"><B>FRAMES</B></A>  &nbsp;&nbsp;<A HREF="XmlElementDecl.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;&nbsp;<SCRIPT type="text/javascript">  <!--  if(window==top) {    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');  }  //--></SCRIPT><NOSCRIPT>  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A></NOSCRIPT></FONT></TD></TR><TR><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">  SUMMARY:&nbsp;<A HREF="#annotation_type_required_element_summary">REQUIRED</A>&nbsp;|&nbsp;<A HREF="#annotation_type_optional_element_summary">OPTIONAL</A></FONT></TD><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">DETAIL:&nbsp;<A HREF="#annotation_type_element_detail">ELEMENT</A></FONT></TD></TR></TABLE><A NAME="skip-navbar_top"></A><!-- ========= END OF TOP NAVBAR ========= --><HR><!-- ======== START OF CLASS DATA ======== --><H2><FONT SIZE="-1">javax.xml.bind.annotation</FONT><BR>Annotation Type XmlElementDecl</H2><HR><DL><DT><PRE><FONT SIZE="-1"><A HREF="http://java.sun.com/j2se/1.5/docs/api/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation">@Retention</A>(<A HREF="http://java.sun.com/j2se/1.5/docs/api/java/lang/annotation/Retention.html#value()" title="class or interface in java.lang.annotation">value</A>=<A HREF="http://java.sun.com/j2se/1.5/docs/api/java/lang/annotation/RetentionPolicy.html#RUNTIME" title="class or interface in java.lang.annotation">RUNTIME</A>)<A HREF="http://java.sun.com/j2se/1.5/docs/api/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation">@Target</A>(<A HREF="http://java.sun.com/j2se/1.5/docs/api/java/lang/annotation/Target.html#value()" title="class or interface in java.lang.annotation">value</A>=<A HREF="http://java.sun.com/j2se/1.5/docs/api/java/lang/annotation/ElementType.html#METHOD" title="class or interface in java.lang.annotation">METHOD</A>)</FONT>public @interface <B>XmlElementDecl</B></DL></PRE><P>Maps a factory method to a XML element. <p> <b>Usage</b> </p> The annotation creates a mapping between an XML schema element declaration and a <i> element factory method </i> that returns a JAXBElement instance representing the element declaration. Typically, the element factory method is generated (and annotated) from a schema into the ObjectFactory class in a Java package that represents the binding of the element declaration's target namespace. Thus, while the annotation syntax  allows &#64;XmlElementDecl to be used on any method, semantically its use is restricted to annotation of element factory method.  The usage is subject to the following constraints:  <ul>   <li> The class containing the element factory method annotated        with &#64;XmlElementDecl must be marked with <A HREF="../../../../javax/xml/bind/annotation/XmlRegistry.html" title="annotation in javax.xml.bind.annotation"><CODE>XmlRegistry</CODE></A>. </li>    <li> The element factory method must take one parameter        assignable to <A HREF="http://java.sun.com/j2se/1.5/docs/api/java/lang/Object.html" title="class or interface in java.lang"><CODE>Object</CODE></A>.</li>  </ul> <p><b>Example 1: </b>Annotation on a factory method <pre>     // Example: code fragment     &#64;XmlRegistry     class ObjectFactory {         &#64;XmlElementDecl(name="foo")         JAXBElement&lt;String> createFoo(String s) { ... }     } </pre> <pre><xmp>      <!-- XML input -->       <foo>string</foo>     // Example: code fragment corresponding to XML input     JAXBElement<String> o =     (JAXBElement<String>)unmarshaller.unmarshal(aboveDocument);     // print JAXBElement instance to show values     System.out.println(o.getName());   // prints  "{}foo"     System.out.println(o.getValue());  // prints  "string"     System.out.println(o.getValue().getClass()); // prints "java.lang.String"     <!-- Example: XML schema definition -->     <xs:element name="foo" type="xs:string"/> </xmp></pre> <p><b>Example 2: </b> Element declaration with non local scope <p> The following example illustrates the use of scope annotation parameter in binding of element declaration in schema derived code.  <p> The following example may be replaced in a future revision of this javadoc.  <pre><xmp>     <!-- Example: XML schema definition -->     <xs:schema>       <xs:complexType name="pea">         <xs:choice maxOccurs="unbounded">           <xs:element name="foo" type="xs:string"/>           <xs:element name="bar" type="xs:string"/>         </xs:choice>       </xs:complexType>        <xs:element name="foo" type="xs:int"/>     </xs:schema> </xmp></pre>  <pre>     // Example: expected default binding     class Pea {         &#64;XmlElementRefs({             &#64;XmlElementRef(name="foo",type=JAXBElement.class)             &#64;XmlElementRef(name="bar",type=JAXBElement.class)         })         List&lt;JAXBElement&lt;String>> fooOrBar;     }      &#64;XmlRegistry     class ObjectFactory {         &#64;XmlElementDecl(scope=Pea.class,name="foo")         JAXBElement<String> createPeaFoo(String s);          &#64;XmlElementDecl(scope=Pea.class,name="bar")         JAXBElement<String> createPeaBar(String s);          &#64;XmlElementDecl(name="foo")         JAXBElement<Integer> createFoo(Integer i);     }  </pre> Without scope createFoo and createPeaFoo would become ambiguous since both of them map to a XML schema element with the same local name "foo".<P><P><DL><DT><B>Since:</B></DT>  <DD>JAXB 2.0</DD><DT><B>See Also:</B><DD><A HREF="../../../../javax/xml/bind/annotation/XmlRegistry.html" title="annotation in javax.xml.bind.annotation"><CODE>XmlRegistry</CODE></A></DL><HR><P><!-- =========== ANNOTATION TYPE REQUIRED MEMBER SUMMARY =========== --><A NAME="annotation_type_required_element_summary"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"><B>Required Element Summary</B></FONT></TH></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../../javax/xml/bind/annotation/XmlElementDecl.html#name()">name</A></B></CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;local name of the XML element.</TD></TR></TABLE>&nbsp;<!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== --><A NAME="annotation_type_optional_element_summary"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"><B>Optional Element Summary</B></FONT></TH></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../../javax/xml/bind/annotation/XmlElementDecl.html#defaultValue()">defaultValue</A></B></CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default value of this element.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../../javax/xml/bind/annotation/XmlElementDecl.html#namespace()">namespace</A></B></CODE><BR>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?