Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用工具正确解析RSS XML?_Java_Xml_Rss - Fatal编程技术网

Java 如何使用工具正确解析RSS XML?

Java 如何使用工具正确解析RSS XML?,java,xml,rss,Java,Xml,Rss,我正在尝试使用rometools解析RSS XML文件,但未能使其正常工作。下面的Product类包含以下RSS XML文件中的所有元素。但我似乎无法正确地将文件映射到实体 RSS XML文件: <?xml version="1.0"?> <rss xmlns:g="http://base.google.com/ns/1.0" version="2.0"> <channel> <title>Test Store</title> <

我正在尝试使用
rometools
解析RSS XML文件,但未能使其正常工作。下面的
Product
类包含以下RSS XML文件中的所有元素。但我似乎无法正确地将文件映射到实体

RSS XML文件:

<?xml version="1.0"?>
<rss xmlns:g="http://base.google.com/ns/1.0" version="2.0">
<channel>
<title>Test Store</title>
<link>http://www.example.com</link>
<description>An example item from the feed</description>
<item>
<g:id>DB_1</g:id>
<g:title>Dog Bowl In Blue</g:title>
<g:description>Solid plastic Dog Bowl in marine blue color</g:description>
<g:link>http://www.example.com/bowls/db-1.html</g:link>
<g:image_link>http://images.example.com/DB_1.png</g:image_link>
<g:brand>Example</g:brand>
<g:condition>new</g:condition>
<g:availability>in stock</g:availability>
<g:price>9.99 GBP</g:price>
<g:shipping>
<g:country>UK</g:country>
<g:service>Standard</g:service>
<g:price>4.95 GBP</g:price>
</g:shipping>
<g:google_product_category>Animals &gt; Pet Supplies</g:google_product_category>
<g:custom_label_0>Made in Waterford, IE</g:custom_label_0>
</item>
</channel>
</rss>
带有
/**id
注释的部分返回NullPointerException


这里怎么了?如何使其工作?

使其工作!不需要
名称空间
部分,for如下所示:

for (SyndEntry entry : feed.getEntries()) {
    for (Element element : entry.getForeignMarkup()) {
        if (element.getQualifiedName().equalsIgnoreCase("g:id")) {
                product.setId(element.getValue());
        }
    }
}
for (SyndEntry entry : feed.getEntries()) {
    for (Element element : entry.getForeignMarkup()) {
        if (element.getQualifiedName().equalsIgnoreCase("g:id")) {
                product.setId(element.getValue());
        }
    }
}