首页 > 解决方案 > 带有 BaseX 错误的 Java 连接:连接被拒绝:没有更多信息

问题描述

我正在尝试运行以下代码:

package practicaXML;
import javax.xml.xquery.*;
import org.w3c.dom.Node;
import net.xqj.basex.BaseXXQDataSource;

public class App {
    public static void main(String[] args) {
        try {
            XQDataSource xqs = new BaseXXQDataSource();
            xqs.setProperty("serverName", "localhost");
            xqs.setProperty("port", "1984");
            xqs.setProperty("databaseName", "facts");
            XQConnection conn = xqs.getConnection("admin", "admin");

            String xqueryString = "//province[contains(@name, 'x')]";
            XQExpression xqe = conn.createExpression();
            XQResultSequence rs = xqe.executeQuery(xqueryString);

            Node n;
            while(rs.next()) {
                n = rs.getNode();
                System.out.println(n.getAttributes().getNamedItem("name").getNodeValue());
            }

            conn.close();
        } catch (Exception e) {
            System.out.println("Error: " + e.getMessage());
        }
    }
}

我得到这个错误:

Error: Connection refused: no further information

这是我第一次使用 BaseX,我没有更改任何凭据,所以所有值都应该是默认值。可能是什么原因造成的?

另外,我假设 admin admin 是默认凭据,如果我不习惯请纠正我。有什么我应该记住的细节吗?例如,我是否需要在尝试建立连接时关闭 BaseX?

标签: javaxmlxpathbasex

解决方案


推荐阅读