gpt4 book ai didi

java - JBoss 7.1.1 上的 Jesey 客户端抛出 java.net.SocketException : Protocol family unavailable for IPv6 address

转载 作者:行者123 更新时间:2023-11-29 09:00:31 25 4
gpt4 key购买 nike

我正在尝试使用 Jersey Client 连接到 REST 服务。
当我使用 IPv4 地址时,一切正常。
当我尝试用其 IPv6 替换服务器地址时,抛出以下异常:

com.sun.jersey.api.client.ClientHandlerException: java.net.SocketException: Protocol family unavailable at com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:128) at com.sun.jersey.api.client.Client.handle(Client.java:551) at com.sun.jersey.api.client.WebResource.handle(WebResource.java:556) at com.sun.jersey.api.client.WebResource.access$200(WebResource.java:69) at com.sun.jersey.api.client.WebResource$Builder.put(WebResource.java:475) at com.bmc.aps.agent.jersey.JerseyClient.put(JerseyClient.java:169) at com.bmc.aps.agent.portal.PortalConnection.handshake(PortalConnection.java:304) at com.bmc.aps.agent.portal.PortalConnection.run(PortalConnection.java:786) at java.lang.Thread.run(Thread.java:636) Caused by: java.net.SocketException: Protocol family unavailable at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163) at java.net.Socket.connect(Socket.java:537) at java.net.Socket.connect(Socket.java:487) at sun.net.NetworkClient.doConnect(NetworkClient.java:174) at sun.net.www.http.HttpClient.openServer(HttpClient.java:409) at sun.net.www.http.HttpClient.openServer(HttpClient.java:530) at sun.net.www.http.HttpClient.(HttpClient.java:240) at sun.net.www.http.HttpClient.New(HttpClient.java:321) at sun.net.www.http.HttpClient.New(HttpClient.java:338) at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:806) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:747) at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:672) at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:850) at com.sun.jersey.client.urlconnection.URLConnectionClientHandler$1$1.getOutputStream(URLConnectionClientHandler.java:200) at com.sun.jersey.api.client.CommittingOutputStream.commitWrite(CommittingOutputStream.java:114) at com.sun.jersey.api.client.CommittingOutputStream.write(CommittingOutputStream.java:86) at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:220) at sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:290) at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:294) at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:140) at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:229) at java.io.BufferedWriter.flush(BufferedWriter.java:253) at com.sun.jersey.core.util.ReaderWriter.writeToAsString(ReaderWriter.java:178) at com.sun.jersey.core.provider.AbstractMessageReaderWriterProvider.writeToAsString(AbstractMessageReaderWriterProvider.java:125) at com.sun.jersey.core.impl.provider.entity.StringProvider.writeTo(StringProvider.java:85) at com.sun.jersey.core.impl.provider.entity.StringProvider.writeTo(StringProvider.java:57) at com.sun.jersey.api.client.TerminatingClientHandler.writeRequestEntity(TerminatingClientHandler.java:291) at com.sun.jersey.client.urlconnection.URLConnectionClientHandler._invoke(URLConnectionClientHandler.java:179) at com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:126) ... 8 more

我尝试使用 -Djava.net.preferIPv4Stack=false-Djava.net.preferIPv6Stack=true 运行,但没有帮助。

使用 IPv6 的相同代码可在 Weblogic 上的同一台机器上运行。

有什么建议吗?

最佳答案

以这种方式启动JBoss

JBoss 7 : ./standalone.sh -Djava.net.preferIPv4Stack=false

JBoss 7 : ./standalone.sh -Djava.net.preferIPv6Stack=true

默认情况下 IPv4 在 Java 中启用,您需要明确告知使用 Ipv6

关于java - JBoss 7.1.1 上的 Jesey 客户端抛出 java.net.SocketException : Protocol family unavailable for IPv6 address,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17785854/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com