2017-03-31 8 views
0

私はこのエラーが発生しました。 これは、これは使用して私の残りのコールのコードでXMLレスポンス改造のSimpleXMLConverterを使用してXMLレスポンスをPOJOに変換する

<rss xmlns:content="http://purl.org/rss/1.0/modules/content/"  xmlns:dcterms="http://purl.org/dc/terms/" xmlns:media="http://search.yahoo.com/mrss/" version="2.0"> 
    <channel> 
     <title>SnagFilms Recent Additions</title> 
     <item> 
      <media:title>Sink or Swim - Trailer</media:title> 
      <title>Sink or Swim - Trailer</title> 
      <media:description> Jon Bowermaster's documentary on a learn-to-swim camp for third graders and their moms on the island-nation of the Maldives 
      </media:description> 
      <media:credit role="Director" scheme="urn:ebu">Jon Bowermaster</media:credit> 
      <media:thumbnail type="landscape" url="http://snagfilms-a.akamaihd.net/sinkorswim-video.jpg"/> 
      <media:content duration="117" height="323" width="500"/> 
      <media:rights status="official"/> 
      <media:player height="323" url="http://embed.snagfilms.com/embed/player?filmId=00000158-b20c-d8f9-affd-b32ce8700000" width="500"/> 
     </item> 
    </channel> 
</rss> 

で観測可能

rx.Observable<Rss> videosObservable = RetrofitHelper.createListObs(); 
    videosObservable.subscribeOn(Schedulers.io()) 
      .observeOn(AndroidSchedulers.mainThread()) 
      .subscribe(new Subscriber<Rss>() { 
       @Override 
       public void onCompleted() { 

        Log.d(TAG, "onCompleted: "); 
       } 

       @Override 
       public void onError(Throwable e) { 
        Log.d(TAG, "onError: " + e.toString()); 
       } 

       @Override 
       public void onNext(Rss rss) { 
        Log.d(TAG, "onNext: "); 

       } 
      }); 

これは私が私のRSSクラス

onError: java.lang.RuntimeException: org.simpleframework.xml.core.ElementException: Element 'item' does not have a match in class com.example.singh.xmlParser.model.Channel at line 12 

を取得していますエラーです

@Root(strict = false) 
public class Rss { 

public Channel getChannel() { 
    return channel; 
} 
@Element 
public Channel channel; 

} 

My Channelクラス

JavaのXML用に適切なPOJOを作成する手助けが必要です。私は誰かが与えられたフォーマットのためにすべてのPOJOを作ることができたら本当に感謝します。応答リンクhttp://www.snagfilms.com/feeds/。コンバータのドキュメントhttp://simple.sourceforge.net/home.php

+0

RetrofitHelperクラスも共有してください。 –

答えて

0

itemのリストは、channelオブジェクト内のインラインリストです。あなたはannotaionであることを指定する必要があります。

@ElementList(inline=true) 
List<Item> items; 

official documentationを確認してください。

+0

はい、私はそれを理解しました。とにかくありがとう。 –