如果应用程序使用因特网上未公开的远程 Web Service,那么请考虑迁移至云将对这些远程服务的访问产生哪些影响。 如果可通过因特网使用远程 Web Service,那么无需任何更改。
以下 Java 方法调用表明使用了远程 Web Service:
org.apache.soap.rpcjavax.xml.rpc.Calljavax.xml.rpc.Servicejavax.xml.rpc.Stubjavax.xml.rpc.ServiceFactoryjavax.xml.rpc.ServiceExceptionjavax.xml.ws.AsyncHandlerjavax.xml.ws.Servicejavax.xml.ws.Service.Modejavax.xml.ws.WebServiceClientjavax.xml.ws.WebServiceRefjavax.xml.ws.WebServiceRefsjavax.ws.rs.clientorg.apache.client.wink.client以下部署描述符元素同样表明使用了远程 Web Service:
application-client.xml、ejb-jar.xml 或 web.xml 文件中的 <service-ref>以下文件如果存在,同样表明使用了远程 Web Service:
ibm-webservicesclient-bnd.xmiibm-webservicesclient-ext.xmi针对每个 Eclipse 项目或 Java 归档标记一次此规则。
注:如果要迁移到 Liberty Core,那么基于针对 XML 的 Java API 的 Java API (JAX-WS) 不会作为 Java EE Web Profile 的一部分提供。 请考虑将 JAX-WS 实现与您的应用程序打包,或迁移至 Liberty 或传统 WebSphere。
如果应用程序能够直接访问远程 Web Service,那么无需进一步操作。
否则,一种选择是在迁移过程中将具有从属 Web Service 的应用程序迁移至云。此选项可消除潜在的延迟问题。此解决方案的可行性取决于云运行时选择。 例如,在作为 IBM Cloud Instant Runtime 运行的 Liberty 上不支持 JAX-RPC。 或者,您可以使用 VPN 隧道(例如,IBM Secure Gateway for IBM Cloud)来为现有远程 Web Service 调用创建安全连接。 有关配置安全连接的更多信息,请参阅配置 VPN。 配置网关后,通过使用创建目标时所提供的云主机和端口号将应用程序连接至新目标。