为 Web 服务和客户端设置代理

另请参见 

如果要访问远程 Web 服务,但系统受到防火墙的保护或使用了代理服务器,则需要使用代理设置来配置 IDE。使用远程 Web 服务时,对于以下一种或多种情况,设置代理可能是至关重要的:

下面描述了适用于上述各种情况的代理设置。

在“Web 服务客户端”向导中检索 WSDL 文件:

通常,如果未正确设置用于检索 WSDL 文件的代理设置,则会在“Web 服务客户端”向导中显示如下错误:

Download failed.I/O exception: (Check the proxy settings.)

请执行以下操作来检查和设置代理:

  1. 在“Web 服务客户端”向导中单击“代理设置”。
  2. 在“HTTP 代理设置”窗口中设置代理主机和端口号。

单击“确定”后更改将会生效。

使用 IDE 测试 Web 服务:

通常,如果未正确设置用于从 IDE 中测试 Web 服务的代理设置,则会返回如下错误:

org.netbeans.modules.websvc.registry.ui.ReflectionHelper.callMethodWithParams(ReflectionHelper.java:449)

请执行以下操作来检查和设置代理:

  1. 选择“工具”>“选项”。
  2. 在“选项”窗口中,设置代理主机和端口号。

退出“选项”窗口时更改将会生效。

部署到 Sun Java System Application Server:

通常,如果未正确设置部署到 Sun Java System Application Server 的 Web 服务或 Web 服务客户端的代理设置,则会返回如下错误:

java.rmi.RemoteException: HTTP transport error: java.net.UnknownHostException:

请执行以下操作来检查和设置代理:

  1. 打开“运行环境”窗口 (Ctrl-5)。
  2. 如果未启动 Sun Java System Application Server,请将其启动。
  3. 展开 Sun Java System Application Server 节点,右键单击 JVM 节点,然后选择“属性”。
  4. 在“JVM 属性”对话框中单击 "JVMOptions"。
  5. 添加以下属性:

    -Dhttp.proxyHost=your.proxy.host
    -Dhttp.proxyPort=your.proxy.port.number

停止并随后重新启动服务器,以使新的代理设置生效。

部署到 JBoss Server:

通常,如果未正确设置部署到 JBoss 的 Web 服务或 Web 服务客户端的代理设置,则浏览器中不会显示任何内容

请执行以下操作来检查和设置代理:

  1. 在文件系统中,转至 jboss_install_dir\bin\run.bat
  2. 添加以下一行:set JAVA_OPTS=-Dhttp.proxyHost=your.proxy.host -Dhttp.proxyPort=your.proxy.port.number

停止并随后重新启动服务器,以使新的代理设置生效。

部署到 Tomcat Web Server:

通常,如果未正确设置部署到 JBoss 的 Web 服务或 Web 服务客户端的代理设置,则浏览器中不会显示任何内容

请执行以下操作来检查和设置代理:

  1. 打开“运行环境”窗口 (Ctrl-5)。
  2. 如果已启动 Tomcat Web Server,请将其停止。
  3. 右键单击 Tomcat 节点,然后选择“属性”。
  4. 在“平台”标签的“VM 选项”文本框中添加以下属性:

    -Dhttp.proxyHost=your.proxy.host
    -Dhttp.proxyPort=your.proxy.port

启动服务器以使新的代理设置生效。

在 Java 应用程序中部署 Web 服务客户端:

通常,如果未正确设置从 Java 应用程序中部署的 Web 服务或 Web 服务客户端的代理设置,则会返回如下错误:

java.rmi.RemoteException: HTTP transport error: java.net.UnknownHostException:

请执行以下操作来检查和设置代理:

  1. 在“项目”窗口中右键单击 Java 应用程序项目节点,然后选择“属性”。
  2. 在“项目属性”对话框中单击“运行”。
  3. 在“VM 选项”字段中添加以下属性:

    -Dhttp.proxyHost=your.proxy.host -Dhttp.proxyPort=your.proxy.port

单击“确定”后更改将会生效。

请注意,对于 Java 应用程序中的客户端部署,必须为每个项目设置代理,因为每个 Java 应用程序都作为独立 JVM 进程运行,并且每个应用程序可能提供不同的 JVM 参数。对于共享相同服务器实例的 Web 应用程序,只需在服务器自身上设置一次代理(如上所述)。

另请参见
关于 Web 服务

法律声明