专业化管理 > 配置您的 Windchill 环境 > Windchill 运行时环境 > 客户端软件组件
  
客户端软件组件
本节介绍 Windchill 运行时体系结构的客户端层组件。
Web 浏览器
Windchill 的主要客户端组件是 Web 浏览器。价格低廉、功能强大的 Web 浏览器随处可见,因而就有可能部署大型分布式信息系统,而无需或几乎不需要对单个客户端主机进行维护。
对于简单的应用程序,能够显示 HTML 页即可,但对于拥有复杂信息处理的应用程序的方方面面来讲,此功能远远不够。所以,Windchill 要求浏览器能够使用基于 Java 运行时和基本类的 Java applets。其中两个常用的浏览器是 Mozilla Firefox 和 Microsoft Internet Explorer。
将 Web 浏览器用作前端,可以在后端利用 HTTP 服务器的功能。例如,HTTP 请求验证旨在控制对其他 web 服务器资源的访问,它可用于验证对 Windchill 系统的访问,为此需要在 Windchill 客户端和服务器中许可使用并嵌入安全性软件。而快速发展的验证方案可以以一种对 Windchill 系统透明的方式来使用,赋予您更多的自由,按照您认为合适的方式管理 Web 安全性体系结构。
Web 浏览器前端还允许您利用内置的文件下载及上载功能,以及对帮助应用程序和插件的启动。
HTML 页
客户端与 Windchill 服务器通过 HTTP GET 或 POST 请求进行初始连接。通常,GET 请求由嵌入 HTML 页中的链接激活,启动与 Windchill 系统的连接。
Windchill 系统使用 HTML 页予以响应。该页可能包含 JavaScript (或 Jscript),以便在浏览器中调整窗口或框架的使用。
许多简单的系统访问可能只使用 HTML 显示,以 HTML 表单数据作为输入。然而,典型的客户端会话要求在这些 HTML 响应中嵌入小程序标记 (用于执行涉及复杂数据的复杂用户交互操作)。
Java Applet
Java applet 可从 Windchill 服务器下载并在客户端系统上执行。它们提供复杂的图像化用户界面功能,允许与用户进行复杂的交互操作。
一旦运行,小程序直接通过 Java RMI 与 Windchill 服务器通信。这样就避免了通过 HTTP 服务器进行间接通信产生的额外工作,并易于在客户端和服务器之间传输非常复杂的数据。
如果有必要使用 HTTP 代理通过防火墙,Java RMI 通信将自动在 HTTP 层上进行。但是,因此导致的性能降低要大于直接连接到 Windchill 服务器。
从同一 Windchill 系统装载的小程序类之间互相通信,以使用浏览器窗口和框架,从而显示了无缝的系统界面。
由于安全原因,从联合 Windchill 系统 (来自单独的 HTTP 服务器) 装载的小程序类不能直接互相通信。因此使用供浏览器装入 HTML 窗口的 HTTP URL 来完成系统间的链接。产生的 HTML 页包含 JavaScript/JScript 和 applet 标记,它们使用窗口和框架显示无缝的系统界面。
交互小程序可以代表长时间运行的服务器事务处理提供反馈。此反馈可采用进度指示器的形式,并在某些情况下提供取消操作的功能。
* 
从 Java 11 起,移除 Applet 支持。有关详细信息,请参阅 Oracle 文档。
Java 8 客户端设置
以下是需要在客户端进行的设置:
在例外列表中添加条目
如果 Applet 因安全错误受阻,请通过 Java Control Panel > Web Settings > Exception Site List > Add 将其添加到例外列表中。确保在例外列表中添加 Windchill 基本 URL。URL 字符串格式如下:http://<主机名>:<端口>/<web 应用程序>
删除临时文件
要删除临时文件,请按照以下步骤进行操作:
1. 打开 Java Control Panel
2. 转到 Web Settings > Temporary File Settings,然后单击 Delete Files
3. 选择 Delete Files and Applications 窗口中的所有复选框,然后单击 OK
向 Java 安全策略文件中添加端口条目
需要在 Java 安全策略文件中添加端口条目以运行直接 RMI。
* 
若端口条目受阻,请勿添加。
要添加端口条目,请打开 JRE 位置并根据您的 Java 版本添加相应的端口条目。
Java 版本
JRE 位置
端口条目
Java 8
<JRE location>\lib\security\java.policy
1. permission java.net.SocketPermission "<IP Address of host>:<port number of Server manager>", "accept,connect,listen";
2. permission java.net.SocketPermission "<IP Address of host>:<port number of all Method manager, add individual>", "accept,connect,listen";