西班牙
斯潘4
此示例演示如何使用fme服务器创建一个web应用程序,该应用程序允许用户将数据通过电子邮件发送或上载到服务器,然后服务器将对其进行验证,将数据加载到postgres数据库中,将带有验证结果的电子邮件发送回用户(或在上载时显示),并更新申请。
此实时演示使用通知服务、PostgreSQL数据库触发器和FME服务器的内置WebSocket功能的组合。有关详细信息,请参见以下内容:
当电子邮件发送到服务器时,电子邮件发布者接收邮件并将电子邮件数据发布到服务器上名为cad_waterqa的通知主题。
然后触发订阅该主题的推送订阅并运行控制器工作区,将通知内容作为该工作区的源数据发送给它。
控制器工作区读取通知内容并解析出所需的信息(发件人电子邮件地址、附加CAD文件的位置等)。然后运行验证子工作区。
验证工作区执行以下操作:
根据验证工作区的成功,控制器工作区将:
在直接上传的情况下,将只运行验证工作区,结果报告将可通过Web应用程序下载。
postgres数据库表上设置了一个触发器,每次向表中插入新行时都将运行该触发器。该触发器运行一个函数,该函数获取传入功能的id,并通过http post请求将其发送到服务器上的另一个工作区。
该工作区获取特征id,从postgres数据库读取特征几何图形,然后将其发送到fme服务器的websocket组件。
然后,websocket服务器获取该数据并将其转发到web应用程序中的地图显示,并将这些功能动态加载到页面上。
链接的zip文件包含在您自己的系统上运行此演示所需的所有工作区和sql脚本。这是本演示的存档版本,使用Oracle和WebSocket服务推送器。它不再维护,但对FME Server 2013的用户可用。
方法中包含的SQL脚本postgres文件夹:
有关数据库触发器和FME的更多信息,请参见使用触发器将数据从数据库实时推送到FME服务器
创建以下主题:
创建一个电子邮件发布者:
创建两个电子邮件订阅:
准备validate-subworkspaces.fmw
准备cad-upload.fmw
准备websocket-stream.fmw
有关内置WebSocket服务器的更多信息,请参见WebSockets和FME服务器
准备reset-postgis-table.fmw
除了上述步骤外,还需要确保在FME服务器上设置了适当的权限。在默认情况下,来宾用户需要有运行reset工作区的权限,因为它是直接从web页面链接到reset工作区的。另外,WebSocket流工作空间需要从数据库中运行,所以它需要guest可以运行,或者对另一个用户帐户使用令牌身份验证。
嗨@deanhowell2009在本例中,我们在本地设置了数据库。只要您能够运行sql脚本来设置触发器,并且数据库能够向您的FME云实例发送HTTP请求,就可以将数据库托管在任何地方。
?2019安全亚搏在线软件公司|合法的