使用 Primefaces 验证码时出现未知主机异常

Unknow Host Exception while using Primefaces Captcha

在 Prime Face 6、Weblogic 12c 中使用标签 'P:Captcha' 时,我遇到了以下异常。

<Feb 21, 2018 4:20:30 PM PKT> <Error> <HTTP> <BEA-101019> <[ServletContext@24665149[app:_auto_generated_ear_ module:/ path:null spec-version:3.0]] Servlet failed with an IOException
java.net.UnknownHostException: www.google.com
   at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:178)
   at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
   at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
   at java.net.Socket.connect(Socket.java:579)
   at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:625)

我们支持代理互联网。我还在 setDomainEnv.cmd

中添加了以下脚本
set JAVA_OPTIONS=%JAVA_OPTIONS% %JAVA_PROPERTIES% -Dhttp.proxySet=true -Dhttp.proxyHost=10.1.10.2 -Dhttp.proxyPort=80 -DUseSunHttpHandler=true

任何人都可以帮助我。

问题是代理互联网。由于代理,验证码无法连接到 google 服务器。由于 reCaptcha v2 具有 https link,因此通过在 setDomainEnv.cmd 中添加以下代码,验证码现在可以正常工作。

set JAVA_OPTIONS=%JAVA_OPTIONS% -Dhttps.proxyHost=172.18.101.2 -Dhttps.proxyPort=80 -Dhttps.nonProxyHosts="127.*|localhost"