2009-04-10 12 views
0

私のXSDファイルが含まれています:XMLBeansのでのXMLBeans - 複合型のセット内容

   <xs:sequence> 
        <xs:element name="Book"> 
         <xs:complexType> 
          <xs:attribute name="author" type="xs:string" /> 
          <xs:attribute name="title" type="xs:string" /> 
         </xs:complexType> 
        </xs:element> 
       </xs:sequence> 

、私が使用して簡単に属性を設定することができます

Book book= books.addNewBook(); 
    book.setTitle("The Lady and a Little Dog"); 

は私がnewCursorを使用できることを知っています()要素の内容を設定するが、これは最善の方法ですか?

object.newCursor().setTextValue(builer.toString()); 

答えて

1

私はあなたの質問をよく理解していません。

は、私はあなたのXSDは次のようにXMLを生成するためにあなたのJavaクラスを与えるだろうと思う:

<book author="Fred" title="The Lady and a Little Dog" /> 

はあなたがあなたのようなXMLで終わるので、XML要素内の「内側」のテキストを設定したいわけですかこの?

Book book= books.addNewBook(); 
book.setAuthor("Fred"); 
book.setTitle("The Lady and a Little Dog"); 

:次に、あなたは、単に行うことができるでしょう

<xs:sequence> 
    <xs:element name="Book"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="author" type="xs:string" /> 
      <xs:element name="title" type="xs:string" /> 
      </xs:sequence> 
     </xs:complexType> 
    </xs:element> 
</xs:sequence> 

:もしそうなら

<book> 
    <author>Fred</author> 
    <title>The Lady and a Little Dog</title> 
</book> 

が、これにあなたのXSDを変更する属性ではなく、ネストされた要素を使用します

更新

OK - わかりました。その後、

<xs:element name="Book" minOccurs="0" maxOccurs="unbounded"> 
    <xs:complexType> 
    <xs:simpleContent> 
     <xs:extension base="xs:string"> 
     <xs:attribute name="author" type="xs:string" /> 
     <xs:attribute name="title" type="xs:string" /> 
     </xs:extension> 
    </xs:simpleContent> 
    </xs:complexType>  
</xs:element> 

そして:

はこれを試してみてください

私はあなたが何をしたいと思い、このようなXMLを与える必要があります
Book book1 = books.addNewBook(); 
    book1.setAuthor("Fred"); 
    book1.setTitle("The Lady and a Little Dog"); 
    book1.setStringValue("This is some text"); 

    Book book2 = books.addNewBook(); 
    book2.setAuthor("Jack"); 
    book2.setTitle("The Man and a Little Cat"); 
    book2.setStringValue("This is some more text"); 

、:

<Book author="Fred" title="The Lady and a Little Dog">This is some text</Book> 
<Book author="Jack" title="The Man and a Little Cat">This is some more text</Book> 
+0

これは私がどうなるかですが私のXMLのように見える: これはテキストです " This is some text "のビットはどうやって入力しますか? ありがとうございました – dogbane

+0

私は答えを更新しました。うまくいけばもっと役立つでしょう。 –

0

私は、これはあなたが求めている正確に何ですが、XMLBeansのを使用して、属性または要素の値を設定する最良の方法は、XMLBeansの-生成ゲッターとセッターを使用することであるかはわかりません。

多分カーソルの質問の文脈が役立つでしょう。

関連する問題