| |
技术文档>>JAVA>>新手入门>>基础入门>查看文档 |
|
| |
将 java 小程序迁移到 microsoft j# 浏览器控件 |
|
| |
文章作者:未知 文章来源:水木森林 |
|
| |
查看:101次 录入:管理员--2007-11-17 |
|
| |
visual j# .net 小组
microsoft corporation
摘要:通过 microsoft j# 浏览器控件,开发人员可以将所编写的在 java 虚拟机上运行的 java 小程序迁移到 .net 框架。本文向开发人员介绍 j# 浏览器控件,并说明将 java 小程序迁移到 .net 框架的步骤。本文还讨论了其他一些主题,如 j# 浏览器控件的安全性和调试,以及当前版本中不受支持的功能。
下载 html 小程序到对象标记转换器 (95kb)
本文假设开发人员熟悉 .net 框架和 visual j# .net。要下载 j# 浏览器控件运行库,请参阅 http://msdn.microsoft.com/vjsharp/downloads/browsercontrols/。
本页内容 简介 新增功能 将 java 小程序编译为 j# 浏览器控件 将 html 页更新为使用 j# 浏览器控件 部署 j# 浏览器控件 在用户计算机上运行 j# 浏览器控件 当前版本中不受支持的功能 小结
简介 已经使用 visual j# .net 迁移到 .net 框架的 java 小程序称为 j# 浏览器控件。j# 浏览器控件旨在让客户能够将其现有的 java 小程序迁移到 .net 框架。
经过迁移得到的 j# 浏览器控件与原来的 java 小程序具有类似的运行时行为,并保留了 java 语言语义。如果在计算机上安装了 j# 浏览器控件运行库,用户甚至可能意识不到特定的 web 站点已将其 java 小程序升级到了 j# 浏览器控件。
要将 java 小程序迁移到 j# 浏览器控件,您必须安装 visual j# .net 1.1 版可重新发布软件包以及 .net 框架 sdk 1.1 版或 visual studio .net 2003。同样,如果用户希望运行由 web 站点承载的 j# 浏览器控件,则必须在自己的计算机上安装 .net 框架 1.1 版可重新发布软件包和 j# 浏览器控件运行库。j# 浏览器控件不能在 java 虚拟机上运行。j# 浏览器控件只能在 microsoft internet explorer(5.1 版和更高版本)中运行。
将 java 小程序迁移到 j# 浏览器控件的过程包括三个步骤:
1. 使用 visual j# 编译器将 java 小程序编译为 j# 浏览器控件。 2. 将 html 页更新为使用 j# 浏览器控件而不是使用 java 小程序。 3. 将 j# 浏览器控件和 html 页复制到 web 服务器。
返回页首 新增功能 j# 浏览器控件 1.1b 版中添加了以下功能:
脱机支持 microsoft j# 浏览器控件 1.1b 版现在支持在没有 web 服务器的情况下,在 internet explorer 中加载控件。目前支持以下方案:
• 从本地文件系统加载控件 • 从网络共享位置加载控件 • 从网络驱动器加载控件
在上述所有方案中,j# 浏览器控件在默认情况下都将通过 intranet 权限运行。
脚本支持 microsoft j# 浏览器控件 1.1b 版支持以下脚本方案。
• 脚本调用 j# 浏览器控件的方法并访问其属性 • 从 j# 浏览器控件调用脚本事件 • j# 浏览器控件使用 netscape javascript api 来访问由 internet explorer 对象模型公开的网页中的元素。
j# 浏览器控件 1.1b 版还提供对 netscape javascript api 功能的完整支持。netscape.javascript 小程序 api 软件包具有以下类:
• netscape.javascript.jsobject • netscape.javascript.jsexception
返回页首 将 java 小程序编译为 j# 浏览器控件 可以通过使用 visual j# 编译器 (vjc.exe) 将 java 小程序编译为托管库,从而将其迁移到 j# 浏览器控件。可以从命令提示符下也可以从 visual studio .net 中将 java 小程序源代码编译为 j# 浏览器控件。如果 java 小程序是使用 microsoft visual j++ 6.0 开发的,可能只须使用 visual studio .net 将项目升级到 visual j# .net。
将 java 小程序编译为托管库类似于在 visual j# 中编译任何其他库。大多数情况下,在将 java 小程序编译为托管库时,不需要对 java 小程序源代码进行任何更改,这是因为 j# 浏览器控件运行库提供了对 microsoft java 虚拟机中许多功能的支持。这包括对 jdk 1.1.4 级软件包和 java.applet 软件包中的功能的支持。
包含 j# 浏览器控件的托管库与 .net 框架中的其他托管库没有什么不同。当用户访问承载了 j# 浏览器控件的 web 站点时,j# 浏览器控件运行库将下载该托管库并在 internet explorer 中运行它。
使用 applet class 文件创建 j# 浏览器控件 如果只存在 java 小程序的 java 语言字节码(.class 文件),则可以使用 visual j# 二进制转换器工具 (jbimp.exe) 将 java 小程序转换为托管库。
从命令提示符下编译 java 小程序 您可以使用 visual j# 编译器 (vjc.exe) 从命令行编译 java 小程序。例如:
c:/appletsources>vjc.exe /target:library /out:myapplet.dll *.java
该命令会将 java 小程序源文件(带有 .java 扩展名)编译为名为 myapplet.dll 的新 .net 框架 dll。
您还可以使用 visual j# 二进制转换器工具:
c:/appletsources>jbimp.exe /target:library /out:myapplet.dll *.class
如果您安装了 visual studio .net,则可以从 visual studio .net 命令窗口中访问 visual j# 编译器 (vjc.exe) 和 visual j# 二进制转换器工具 (jbimp.exe)。如果您未安装 visual studio .net,则必须确保这些工具位于您在命令提示符下键入的路径中。
在迁移使用资源的 java 小程序时,您必须按照 upgrading visual j++ 6.0 applications that use resources 和 howto:resources in visual j# .net 中描述的步骤操作。
使用 visual studio .net 迁移 java 小程序 如果 java 小程序是一个 visual j++ 6.0 项目,则还可以使用 visual studio .net 来迁移它。
使用 visual studio .net 升级 visual j++ 6.0 项目 1. 在 visual studio .net 中打开 visual j++ 6.0 项目。这将启动 visual j# .net 项目升级向导。 2. 在该升级向导的所有步骤中都单击 next。升级向导将把该 visual j++ 项目转换成 visual j# .net 类库项目。 3. 打开升级报告,以便了解向导是否在升级过程中检测到问题。
注 报告中将提到 applet projects are not supported。您可以忽略该错误。在生成项目之前,您必须解决升级报告中列出的所有其他问题。 4. 生成项目。这会将 java 小程序编译为托管库。
在 visual studio 中,您无法通过单击 debug 然后单击 start 或者通过按 f5 来在 internet explorer 中启动 j# 浏览器控件。您必须将控件复制到 web 服务器的虚拟目录中,才能运行它。有关详细信息,请参阅部署 j# 浏览器控件和 how to:debug j# browser controls。
有关将 visual j++ 6.0 项目升级到 visual j# .net 的详细信息,请参阅 upgrading from visual j++ 6.0。
与使用 netscape liveconnect api 的小程序有关的其他步骤 除了上述白皮书中介绍的迁移步骤以外,开发人员在编译使用 netscape liveconnect api 的小程序时,将需要引用一个附加的程序集。j# 浏览器控件 1.1b 版中提供了对 liveconnect api 功能的支持。
注 如果开发人员迁移利用 netscape jscript api 的小程序,则需要在其开发计算机上安装 j# 浏览器控件 1.1b 版,然后才能包含对该程序集的引用。
要从命令行编译,请按以下方式包含该引用:
vjc /r:??%programfiles%/microsoft jsharp browser controls v1.1/vjsjbc.dll?? /t:l myapplet.java
如果您使用的是 visual studio .net 2003,则需要在引用列表中添加对该程序集的引用。有关详细信息,请参阅 add reference dialog box。
如果您使用的是 jbimp,请使用以下命令将 java 小程序 .class 文件转换为 j# 浏览器控件程序集。
jbimp /r:??%programfiles%/microsoft jsharp browser controls v1.1/vjsjbc.dll?? /t:l myapplet.class
返回页首 将 html 页更新为使用 j# 浏览器控件 将 java 小程序编译为 j# 浏览器控件以后,下一步是将 html 页更新为开始使用迁移后的控件。html 页中的 <applet> 标记或 java <object> 标记必须转换为引用 j# 浏览器控件的 <object> 标记。
本白皮书包含一个称为“html 小程序到对象标记转换器”(tagconvert.exe) 的示例工具,它能够自动将 html 页升级为使用 j# 浏览器控件。用于下载该示例工具的链接位于本白皮书的开头部分。请下载并运行 tagconvertsetup.exe 以便安装“html 小程序到对象标记转换器”(tagconvert.exe)。
可按以下方式使用该工具:
tagconvert [options] <source files>
例如:
tagconvert.exe myappletpage.html
该工具的输入可以是任何文本文件,其扩展名可以是 .html、.htm、.asp 和 .aspx。
该工具可将 <applet> 标记或 java 小程序 <object> 标记替换为包含以下 j# 浏览器控件 <object> 标记的 html 代码:
<object classid="clsid:a399591c-0fd0-41f8-9d25-bd76f632415f&quo
|
|