0
votes
     SAXBuilder builder = new SAXBuilder();
     try {
        File f = new File("\\\\bady\\SShare\\mart.xml");
        System.out.println(f.exists());   // Returns False
        System.out.println(f.length());   // Returns 0

        Document document = builder.build(f);  //IOException at this point
        Element root = document.getRootElement();
        Element paragraph = root.getChild("mart_element");
        String content = paragraph.getText();
        System.out.println("content = " + content);
        } catch (JDOMException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

Here mart.xml is a shortcut present in C:\Param\Bin on a windows box. I get the following IOException:

Exception in thread "main" java.net.ConnectException: Connection refused: connect
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
        at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
        at java.net.Socket.connect(Socket.java:524)
        at java.net.Socket.connect(Socket.java:474)
        at sun.net.NetworkClient.doConnect(NetworkClient.java:157)
        at sun.net.NetworkClient.openServer(NetworkClient.java:118)
        at sun.net.ftp.FtpClient.openServer(FtpClient.java:488)
        at sun.net.ftp.FtpClient.openServer(FtpClient.java:475)
        at sun.net.www.protocol.ftp.FtpURLConnection.connect(FtpURLConnection.java:270)
        at sun.net.www.protocol.ftp.FtpURLConnection.getInputStream(FtpURLConnection.java:352)
        at JDOMElementTextContent.parseXml(JDOMElementTextContent.java:36)
        at JDOMElementTextContent.main(JDOMElementTextContent.java:47)

I tried to open Stream from URL using file: protocol but URLConnection.getInputStream throws the same connection refused exception.

Any recommendations would be appreciated?

2
This code does not call parseXml() and therefore cannot possibly have produced this exception.user207421

2 Answers

2
votes

The code in question can't really produce that error message.

First of all, simply creating a File object does not do any checks, so please tell us what you acutally do with that File.

Second, you specify the path with the string literal "\\\\bady\\SShare\\mart.xml". Due to the way string literals work in Java, this boils down to the string \\bady\SShare\mart.xml, however your exception message mentions \\\\bady\\SShare\\mart.xml, which is obviously a wrong path.

So please tell us how you really get that File object and what you do to it.

0
votes

It may be a permissions-related issue: I had this problem in the past. Check that the user from which you run your java code has permissions to access the shared network drive.