java - 如何在不设置系统属性的情况下使用 XmlRpc 请求的代理

标签 java proxy xml-rpc

我需要运行 XmlRpc-Request,并且必须使用代理来连接服务器。

连接使用以下代码。

try {
    final XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl();
    config.setServerURL(new URL(url));
    final XmlRpcClient server = new XmlRpcClient();
    server.setConfig(config);
    Object result = null;
    System.setProperty("https.proxyHost", host);
    System.setProperty("https.proxyPort", port);
    result = server.execute("evatrRPC", params);
    return ((String) result);
}catch (final Exception exception) {
    throw new RuntimeException("JavaClient: " + exception);
}

问题是我不允许更改系统属性。因此,我正在寻找另一种方法来为请求设置代理。

感谢您的帮助

最佳答案

您应该尝试配置客户端的传输工厂:

XmlRpcSun15HttpTransportFactorytransportFactory transportFactory = 
    new XmlRpcSun15HttpTransportFactory(client);

transportFactory.setProxy(proxy); // <= Proxy settings here

client.setTransportFactory(transportFactory);

关于java - 如何在不设置系统属性的情况下使用 XmlRpc 请求的代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41807927/

相关文章:

java - UnknownHostException错误,构建java grpc示例

c# - 通过代理的 HTTPS 不起作用

python - wp.​​uploadFile xmlrpc 来自 python 编码 base64

javac 命令在 linux 环境中不起作用

java - 我应该使用 guard 子句,并尽量避免 else 子句吗?

java - eclipse 重绘编辑器屏幕(~= vi ctrl-L)

java - 使用java中的套接字制作简单的客户端/代理/服务器程序

json - 相关 RPC 协议(protocol)列表

haskell - 如何干净地定义包含具有公共(public)变量参数的函数的 Haskell 模块?

java - Spring Boot JPA 测试失败并出现 java.lang.IllegalArgumentException