适用于:
| • | Microsoft .NET Framework 1.1 |
| • | Microsoft Visual Studio.NET 2003 |
| • | Microsoft Office Word 2003 |
| • | BEA WebLogic Workshop 8.1.4 |
| • | IBM Rational Application Developer 6.0 |
| • | Microsoft Windows XP Professional |
| • | RedHat Linux 9.0 |
本文描述了一个出生证明文档创建过程的案例。
案例:创建出生证明为了说明在BEA WebLogic 和 IBM WebSphere环境下与Office XML的交互性,设想如下的场景:
Contoso 注册公司是一家私人公司,得到了政府关于记录出生注册的转包合同。 在他们的业务中包括一种 “walk-in” 办公服务,这样,申请者可以通过提供他们的详细资料以及身份证明进行个人注册。
当前记录这种数据的系统相当简单:注册者完成一份文本格式的、关于出生详细资料的表格。 表格中的信息被录入到应用系统(基于 J2EE, Java 2 平台企业版),并被保存到数据库。 每周一次,数据库的一个快照被送至印刷厂。 印刷厂对数据库中的每条记录生成一份“纪念式的出生证明”,这些证明会邮寄给注册者。
这个系统现在工作得很好,但是Contoso 指望把这个过程流水线化,以节省成本。 在分析后他们发现,厂外印刷开始变得贵了,而且,还不得不处理出生证明在邮寄过程中丢失的事故。
为了解决这些情况,Contoso正在考虑使出生证明文件在注册时就可以被打印出来。 所有的注册处都配备有打印机,而且那里的计算机运行有微软的Windows XP系统以及Office 2003软件。 他们认为这样可以达到节省成本以及为用户提供更好的服务的目的:注册处在注册者进行注册时就可以交付他们打印好的证明。
Contoso 的IT部门启动了一个关于以现在的技术手段是否能够实现上述设想调查,极具挑战性。简而言之, 他们需要从现有的J2EE 应用生成与Office 2003兼容的文档——而且最好不需要任何附加其它的软件和应用。在熟悉了这个领域之后, 这个IT部门在微软Office 2003发现了一种可支持的格式,这就是WordProcessingML。
WordProcessingML微软的 Word 2003 支持一个叫做“另存为 XML文档” 的功能,就是你打开任何 Word 文档, 打开文件菜单,选择另存为…… 然后选择 XML格式。如同你设想的,当前文件将被保存为XML格式的文件。 这种文件使用的就是WordProcessingML格式。
WordProcessingML 是Office 2003 Reference Schemas提供的一种XML方案。它描述了如何将一份 Word 2003 文档以及相关联的部分——比如字形、字体、表格、图形等,诸如此类——以XML文档的形式表现。微软为这些方案提供不需版权的注册和文件。
<w:wordDocument xmlns:w=
'http://schemas.microsoft.com/office/word/2003/wordml'>
<w:body>
<w:p>
<w:r>
<w:t>Hello, World.</w:t>
</w:r>
</w:p>
</w:body>
</w:wordDocument>一份Word XML文件就是一份存为XML格式的Word文件, 符合WordProcessingML 格式。然而和Word中现有的其它“另存为”格式 (像.txt或 .rtf)不同的是,当一份文件存为XML格式,它保留了它所有的格式、功能、以及编辑能力。 这就是说,一份存为Word XML 的文档具有与原有二进制的.doc 格式文档具有等同功能的优势。
这些导致了有趣情景的性能是以往版本的Office不具备的。 比如,遵循WordProcessingML 方案的XML 文档现在可以在非微软平台 (只要提供能够生成XML的平台即可)上生成。当这个类型的XML文档装载进Office 2003,它会自动被识别为Word文档并被呈递出来。
Contoso使用WordProcessingML现在回到我们前面提到的案例,Contoso的IT部门注意到WordProcessingML 并发现它可以提供好的解决方案。 下面的图表对这个解决方案进行了说明。 Contoso修改了现有的J2EE应用,添加了符合WordProcessingML标准的XML文档生成功能,用以生成XML格式的“纪念性出生证明”文件。然后这些文件被送回至Contoso的现有的使用Office 2003 的客户端。 这些文档可以在Office 2003中打开,打印,并可马上交道注册者手中。
图1.使用 WordProcessingML
如图1中所展示的,注册的详细出生信息在注册处输入终端,并存储在 J2EE服务器上。 服务器将数据存储在数据库中,同时生成WordProcessingML 格式的出生证明文件。然后这份文件在Word 2003中打开并送至本地打印机进行打印。
注意:这个案例(包括样本代码)不是在Java 和(或) J2EE 平台上的应用向导。它的目的是展示在这样一个范例,就是在基于非微软技术的平台上,如何创建Word 2003兼容文档。这里使用的出生证明案例仅用于举例。
安装并使用样本
本文提供的样本代码是针对运行于BEA WebLogic 8.1.4 或者 IBM WebSphere 6.0 (使用 IBM's Rational Application Developer 6.0) 中的情况下设计的。 样本支持运行于Windows 或 Linux操作系统中的 BEA WebLogic 和 IBM WebSphere。样本代码也能运行于其它的操作系统或者软件平台,只是它们并未经过测试。
在开始运行样本之前, 需要按步骤安装数据库,然后选择J2EE 服务器平台。
安装数据库支持前面已经描述过,这个案例读取出生证明信息并写进数据库,而且通过以com.microsoft.samples.officexml.database文件包名称的方式在数据库中修改相关细节,任何JDBC 兼容数据库都可以用来进行出生证明信息的写入。
在本文中,我们将数用IBM's Cloudscape v10.0数据库 (最近捐助给了 Apache 软件基金会并改名为 “Derby”)。当然还可以免费使用另一种支持的数据库——虽然这可能要求在资源代码中作适当的修改。 本文中我们选用IBM's Cloudscape ,用来支持J2EE 应用数据库和绑定到操作系统上。
如果你没有安装Cloudscape数据库,就需要从IBM下载D
【中国下载站】【设为主页】【收藏本页】【打印本文】【回到顶部】【关闭此页】