Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.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
Rally Java Rest未知主机异常_Java_Rest_Rally - Fatal编程技术网

Rally Java Rest未知主机异常

Rally Java Rest未知主机异常,java,rest,rally,Java,Rest,Rally,我复制了在页面底部找到的“说明如何查询前5个最高优先级缺陷”的代码示例 我相应地更改了用户名和密码,但我得到了一个未知hostexception 以下是stacktrace: log4j:WARN找不到记录器(org.apache.http.impl.conn.BasicClientConnectionManager)的附加程序。 log4j:警告请正确初始化log4j系统。 线程“main”java.net.UnknownHostException中的异常:rally1.rallydev.co

我复制了在页面底部找到的“说明如何查询前5个最高优先级缺陷”的代码示例

我相应地更改了用户名和密码,但我得到了一个
未知hostexception

以下是stacktrace:

log4j:WARN找不到记录器(org.apache.http.impl.conn.BasicClientConnectionManager)的附加程序。
log4j:警告请正确初始化log4j系统。
线程“main”java.net.UnknownHostException中的异常:rally1.rallydev.com
在java.net.Inet6AddressImpl.lookupAllHostAddr(本机方法)
位于java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:849)
位于java.net.InetAddress.getAddressFromNameService(InetAddress.java:1202)
位于java.net.InetAddress.getAllByName0(InetAddress.java:1153)
位于java.net.InetAddress.getAllByName(InetAddress.java:1083)
位于java.net.InetAddress.getAllByName(InetAddress.java:1019)
在org.apache.http.impl.conn.SystemDefaultDnsResolver.resolver.resolve(SystemDefaultDnsResolver.java:45)
位于org.apache.http.impl.conn.DefaultClientConnectionOperator.resolveHostname(DefaultClientConnectionOperator.java:278)
位于org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:162)
位于org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:294)
位于org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:640)
位于org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:479)
位于org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906)
位于org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805)
位于org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:784)
位于com.rallydev.rest.RallyRestApi.doRequest(RallyRestApi.java:253)
位于com.rallydev.rest.RallyRestApi.doGet(RallyRestApi.java:323)
位于com.rallydev.rest.RallyRestApi.query(RallyRestApi.java:179)
位于com.jdes.agiletoral.agiletoral.main(agiletoral.java:37)

第37行:
QueryResponse QueryResponse=restApi.query(缺陷)

我尝试过更改服务器名称、用户名和密码,但没有成功


感谢查看您的堆栈跟踪,您的计算机似乎正在尝试查找
rally1.rallydev.com
的IPV6地址,但失败是因为它没有IPV6地址(然后又没有返回到IPV4)。这表明机器的配置(或它使用的DNS服务器)存在问题,而不是Java中的问题

也就是说,您可以强制JVM选择IPV4,这将解决您的问题:

prompt> java -Djava.net.preferIPv4Stack=true ... 

如果您使用的是IDE,则需要将其配置为在运行程序时将
-Djava.net.preferIPv4Stack=true
传递给java

看来您有一个代理服务器

restApi.setProxy(new URI(proxyserver));

添加如下内容:
System.setProperty(“java.net.preferIPv4Stack”,“true”)?@MikeB-说实话,你得试试。没有研究它,我不确定JVM/网络类何时读取特定的系统属性,因此在应用程序启动后更改它可能没有任何效果。我尝试了多种方法传递该变量,但没有一种方法得到不同的结果。你认为问题可能出在
log4j
stuff中吗?@MikeB-实际问题是你的机器正在尝试使用IPV6。再次查看堆栈跟踪,apache的
SystemDefaultDnsResolver
类可能不尊重该系统属性。我根本没有配置使用IPV6的机器,因此我恐怕无法重现您的失败。不,log4j与网络或DNS无关。