将 http url 传递到 SAXParser XML

发布于 2024-12-23 22:51:25 字数 758 浏览 0 评论 0原文

我在将 XML 页面作为变量传递到 SAXParser 时遇到问题。我下面的代码获取一个 URL 并尝试将其传递到 SAXParser,但出现错误。

但是,当我显式定义 URL(而不是使用变量)时,效果很好。有人不知道为什么会失败吗?

感谢任何能够提供帮助的人。为了便于查看,我已经修剪了代码。

public class Parser extends DefaultHandler
  private String link;

    public void parseDocument() {

        SAXParserFactory spf = SAXParserFactory.newInstance();
        try {

            SAXParser sp = spf.newSAXParser();

            link = coll.getGcollId(id);  // this successfully gets a string (url) to link to xml page over http string          
            //parse the file and also register this class for call backs
            sp.parse(link, this);  // when I run this code this line gets a "java.io.FileNotFoundException: http://foo.com/foo.xml"

I'm having a problem passing an XML page into the SAXParser as a variable. My code below obtains a URL and tries to pass it into the SAXParser, but I get an error.

However, when I explicitly define the URL (rather than use the variable), if works fine. Does anyone no why this is failing.

Thanks to anyone who may be able to help. I've trimmed the code for viewing purposes.

public class Parser extends DefaultHandler
  private String link;

    public void parseDocument() {

        SAXParserFactory spf = SAXParserFactory.newInstance();
        try {

            SAXParser sp = spf.newSAXParser();

            link = coll.getGcollId(id);  // this successfully gets a string (url) to link to xml page over http string          
            //parse the file and also register this class for call backs
            sp.parse(link, this);  // when I run this code this line gets a "java.io.FileNotFoundException: http://foo.com/foo.xml"

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

他是夢罘是命 2024-12-30 22:51:26

使用以下内容代替

SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
String link = coll.getGcollId(id);
URL linkURL = new URL(link);

sp.parse(new InputSource(url.openStream()));

Use the following instead

SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
String link = coll.getGcollId(id);
URL linkURL = new URL(link);

sp.parse(new InputSource(url.openStream()));
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文