form to soe - tech.it168.comtech.it168.com/zt/oowonline/download/oracle forms 从客户端... ·...

62

Upload: phungtu

Post on 08-May-2018

263 views

Category:

Documents


6 download

TRANSCRIPT

Forms 升级Jan Carlin首席产品经理

‹#›

‹#›

Oracle 融合中间件

‹#›

议程

概述和规划

体系结构

升级到 Web新特性

‹#›

Forms 应用程序路线图

概述和规划

‹#›

Oracle Forms 的焦点领域

集成• Oracle 产品内外部

互操作性• 简化与其他应用程序和 Web 服务的交互操作

开发效率

• 提高开发人员效率

‹#›

Forms 开发人员规划

1:使用 新版本将 Forms 应用程序部署到 Web• 降低成本、提高效率、扩展应用程序范围、跟上技术发展的步伐

2:利用 Oracle 应用服务器• 集成和利用 Web

3:将 Java 与 Forms 集成• 如果需要/希望

4:合理使用 Java• 当 Forms 不是合适的工具时

‹#›

现在是升级的时候了

成熟和经改进的技术

积聚了广泛的经验

助客户成功的公认业绩

新特性仅提供在 Web 上C/S 支持在 2005 年 1 月、2008 年 1 月结束

‹#›

Web 部署的优点

减少成本

提高效率

增强可达性

开辟新市场

利用新技术• Web 技术

• Java• Web 服务

• XML• 等等

‹#›

是什么使 Forms 与众不同?

保护投资

重复使用当前应用程序的代码

新特性

新技术

减少网络流量

‹#›

利用 Forms 新特性

集成• 一次性登录

• OEM 管理

开放性与互操作性• Java 集成

• XML 表单

• 从 Forms 启动 Web 页开发效率• 改善和自定义用户界面

• 新调试器

‹#›

利用新技术

与 Java 集成

与 Web 服务集成

利用 XML向外调用 Web 应用程序

‹#›

减少网络流量

数据库和 Oracle AS 位于 LAN 上远程客户端不需要下载运行时或 FMX仅元数据通过网络发送

WAN 用户的体验更好

‹#›

<Insert Picture Here>

•《我们能够利用 5 年前做出的所有投资,无缝地在 Web 上运行现有的

应用程序》

Stefano Fuccio惠普意大利项目经理

‹#›

Forms 应用程序路线图

体系结构

‹#›

客户端-服务器体系结构

防火墙/代理

互互

联联

网网PLL

MMX

注册表

Tnsnames

数据库

‹#›

了解体系结构

Win2000

Win

Mac

Win N

T

Motif

Forms 引擎

“胖”客户端 数据库层

‹#›

了解体系结构

数据库层

Win2000

Win

Mac

Win N

T

Motif

数据管理器

应用程序逻辑

PL/SQL 引擎

UI 显示

“胖”客户端

Forms 引擎

‹#›

了解体系结构

应用程序层 数据库层瘦客户端

Forms 引擎

UI 显示

数据管理器

应用程序逻辑

PL/SQL 引擎

‹#›

应用程序层 数据库层瘦客户端

了解体系结构

Forms 引擎

UI 显示

•JVM

数据管理器

应用程序逻辑

PL/SQL 引擎

‹#›

了解体系结构

应用程序层 数据库层瘦客户端

Forms 引擎

数据管理器

应用程序逻辑

PL/SQL 引擎

•JVMUI 显示

‹#›

了解体系结构

应用程序层 数据库层瘦客户端

活动

Forms 引擎

数据管理器

应用程序逻辑

PL/SQL 引擎元数据

•JVMUI 显示

‹#›

OC4J引擎

Forms运行时

1

体系结构

应用程序层 数据库层客户端层

Forms运行时

2

Forms Listener Servlet 体系结构允许 Forms 在使用HTTP 或 HTTPS 的任何网络上运行

互联网

数据库

客户端 2

客户端 1

MOD_OC4J

FormsListenerServlet

‹#›

Forms 应用程序路线图

升级到 Web

‹#›

将 Forms 升级到 Web

四类特性:

完成 Web 部署后工作方式改变

不能在 web 上运行

可工作但是影响网络流量

特定于平台

‹#›

工作方式改变的特性

Forms 在服务器上运行,“不”在客户端上运

行!

内置• HOST • ORA_FFI• READ_IMAGE_FILE• TEXT_IO• TOOL_RES

Java Importer (ORA_JAVA)用户退出

‹#›

工作方式改变的特性

解决方案:

有时使用中间层就可以了

WebutilJava 组件

• JavaBeans• 可插拔的 Java 组件 (PJCs)

‹#›

WebUtil 介绍

一组 Java 组件和 PL/SQL API WebUtil 作用:

• 帮助客户端/服务器到 Web 的移植

• 为 Web 应用程序增添功能

目的是解决以下问题:• 基本的客户端/服务器内置功能对等性

• 客户端/服务器增值功能 — 例如 D2KWUtil• 特定的 Web 特性 — 例如文件传输

‹#›

Web 上的客户端服务器对等性

客户端实现:• TEXT_IO、READ / WRITE_IMAGE_FILE• TOOL_ENV• GET_FILE_NAME• HOST• OLE2

在客户端公开操作的兼容 API• 只添加一个前缀,如“CLIENT_…”• 包括异常/错误

选择部署到客户端或应用服务器的功能

‹#›

增值特性

文件传输

文件处理

客户机信息

增强的 HOST 命令

客户端上的 C API一些 D2KWUtil 特性

浏览器功能

‹#›

WebUtil 主要特性

易于使用• 开发人员使用 PL/SQL• 实用程序使用 Java• OLB 和 PLL• 容易替换现有代码

• 搜索/替换添加 Client_• 自动插入组件

• 可扩展

通过 OTN 或 IDS 获得

‹#›

演示

Webutil

‹#›

不可用的特性

一些鼠标事件产生太多的流量而被忽略:• WHEN-MOUSE-MOVE• WHEN-MOUSE-ENTER• WHEN-MOUSE-ENTER

其他鼠标事件起作用

PJC 可以有鼠标事件

使用 tooltip 属性代替 hint.pll

‹#›

不可工作的特性

特定于 Window 的 widget:• VBX 控件

• ActiveX (OCX) 控件

• OLE 容器

• 声音项目

• 图像控制面板

替换为 JavaBean 或 PJC

‹#›

可工作但是影响网络流量

内置同步

• 从客户端到服务器的往返

• 过度使用生成不必要的网络流量

计时器• Forms 客户端维护计时器

• 在网络往返中触发结果的每个计时器

• 示例

• 1 个计时器/秒 x 500 个并发用户……• = 500 个往返/秒

‹#›

可运行但是影响网络流量

选项卡式 canvase关于所有项目的元数据都被下载到客户端

可能首次下载的时间较长

‹#›

可运行但是影响网络流量

选项卡式画布

使用每个标签上隐藏的堆叠画布延缓下载

权衡:当用户首次导航到选项卡时可能发生延迟

‹#›

特定于平台的特性

web 上的图标是 GIF 或 JPG 格式• ICO 和 XPM 格式仍然在 Builder 中使用(目前)

HOST 内置• Unix 和 Windows 上的命令不同:

• host(’dir > dirlist.txt’);

区分大小写• 附加库、对象组等

字体• 映射到 Java 字体

‹#›

升级过程

升级选择• Forms Builder(交互方式)

• Forms Compiler(批处理)

• Forms JDAPI(编程方式/批处理)

Forms Migration Assistant(可选)

‹#›

升级过程

Forms Builder(交互方式)

• 在新的 Oracle Forms Builder 中打开 Form Module

• 编译模块

• 保存模块

• 即时反馈

• 短时间生效

‹#›

升级过程

Forms Compiler(批处理)

• 创建开启了升级标志的批处理或 shell 脚本

• 在结果文件中反馈

C:\FORMS> ifcmp90 module=app1.fmb userid=scott/tiger upgrade=yes batch=yes

‹#›

升级过程

Forms JDAPI(编程方式/批处理)

• 以编程方式处理 Forms 模块

• 使用 Java 编写

• 适用于高级用户/合作伙伴

‹#›

有用的实用程序

Forms Migration Assistant • 如果使用废弃的功能,向导界面会向您发出警告

• 根据需要进行更改

• 以 新的 Oracle Forms 格式保存 FMB• 命令行接口 ifplsqlconv.exe• 在 Forms Builder 或 Compiler(可选)之前使用

• 如果不使用 Migration Assistant,Forms Compiler 将发现错误

‹#›

建议的工作计划

备份 Forms试点升级• 选择 3 到 5 个 Forms(和相关的 mmb、olb、pll)• 升级到 Web• 使您可以对工作作出估计

停止应用程序开发

升级完整的应用程序

使用 Oracle AS 部署到生产

‹#›

演示

升级到 Web

‹#›

Forms 应用程序路线图

Oracle Forms 新特性(9i 版本以后)

‹#›

Oracle AS 集成

Forms listener Servlet使用 OC4JOEM 管理

简化的负载均衡

一次性登录

‹#›

一次性登录集成

无需代码的一次性登录集成

使用 Oracle Internet Directory (OID) 作为密码

存储

• 将数据库用户映射为一次性登录用户

• 按用户和应用程序存储凭证

在 Forms 中查看一次性登录用户名

• 添加了内置应用程序属性 sso_userid可配置的错误重定向页

‹#›

全局部署

字符语义支持• 定义项目的字符长度

• 使用任何字符集

时区支持

• 支持处于不同时区的服务器和客户端

自动的客户端环境检测

• 时区和语言

‹#›

时区问题

珀斯下午 7:41

伦敦下午 12:41

(BST)

UTC上午 11:41LA

上午 4:41

数据库

‹#›

时区支持

将转换应用到所有 DateTime 域中

为应用程序定义• 本地 (客户端浏览器) 时区

• 数据库服务器时区

自动处理双向转换

还提供了内置手动转换

‹#›

Java 集成

应用服务器上的 Java• Java 导入程序 — PL/SQL 到 Java 的桥梁

客户端上的 Java• 可插拔的 Java 组件 (PJC)• Java Bean — FBean 内置项

支持 JDK 1.4 和 1.5

‹#›

服务器端 Java

Web服务

邮件

公共事业

XML

自定义Java

Corba

EJB

Soap

OracleForms

• SMS• 货币转换• 订单跟踪

• 信用卡授权

• 加密• 压缩

通向功能世界的大门

‹#›

客户端上的 Java

异步事件Oracle AQ、

套接字等

与客户端

OLE、JNI、文件集成。

自定义/增强 UI

‹#›

全面管理

配置• Formsweb.cfg• formstrace.cfg

环境• default.env

监视和管理 Forms 过程

• CPU、内存、IP 地址、用

户名、连接时间、杀掉会话

启用运行时诊断• 特定于用户的跟踪配置

• 实时跟踪信息

企业管理器 (EM)

‹#›

otn.oracle.com

加入 3,000,000 人以上的开发人员大军!

免费软件下载

otn.oracle.com/global/cn/products/forms

免费技术建议

‹#›

免费升级资源

互联网研讨会

技术文章

演示

方法文档

示例

路线图

案例研究

论坛

http://otn.oracle.com/formsupgrade

‹#›

通过 Oracle 大学了解 Oracle 产品

讲师指导的培训

自学

在线学习

Oracle 认证

Oracle iLearningOracle Tutor

oracle.com/education

‹#›

议程

概述和规划

体系结构

升级到 Web新特性

‹#›