1

ROME を使用して GML ベースのポイント リファレンスを作成する際に問題が発生します。私のコードは、(願わくば!) 私が改善しようとしていることを説明します:

public static void geoRSSTest() {
    SyndFeed feed = new SyndFeedImpl();
    feed.setFeedType("rss_2.0");

    // Set some simple fields
    feed.setTitle("Sample Feed");
    feed.setLink("http://example.com");
    feed.setDescription("This is a sample RSS feed");

    // Create list of entries
    List entries = new ArrayList();
    SyndEntry entry;

    // Create entry
    entry = new SyndEntryImpl();
    entry.setTitle("Sample Entry");
    entry.setPublishedDate(new Date());

    // Add positional information
    GeoRSSModule geoRSSModule = new GMLModuleImpl();
    geoRSSModule.setPosition(new Position(54.2, 12.4));
    entry.getModules().add(geoRSSModule);

    // Add entry to the list
    entries.add(entry);

    // Add entry to the feed
    feed.setEntries(entries);

    // Write to console
    SyndFeedOutput sfo = new SyndFeedOutput();
    try {
        System.out.println(sfo.outputString(feed));
    } catch (FeedException ex) {
        System.err.println(ex);
    }
}

上記のコードを使用すると、次の XML がコンソールに出力されます。

<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>Sample Feed</title>
    <link>http://example.com</link>
    <description>This is a sample RSS feed</description>
    <item>
      <title>Sample Entry</title>
      <pubDate>Tue, 26 May 2015 12:57:50 GMT</pubDate>
      <dc:date>2015-05-26T12:57:50Z</dc:date>
    </item>
  </channel>
</rss>

ご覧のとおり、位置情報はありません。

ただし、に変更GMLModuleImpl()するとSimpleModuleImpl()、次のようになります。

<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:georss="http://www.georss.org/georss" version="2.0">
  <channel>
    <title>Sample Feed</title>
    <link>http://example.com</link>
    <description>This is a sample RSS feed</description>
    <item>
      <title>Sample Entry</title>
      <pubDate>Tue, 26 May 2015 12:57:50 GMT</pubDate>
      <dc:date>2015-05-26T12:57:50Z</dc:date>
      <georss:point>54.2 12.4</georss:point>
    </item>
  </channel>
</rss>

ご覧のとおり、<georss:point>要素があります。

Netbeans 8.0.2 までの Rome モジュール 1.5.0 で Rome 1.5.0 を使用しています。

を使用して位置情報を作成しようとして、何かを見逃していGMLModuleImpl()ませんか?

4

0 に答える 0