如何利用Java编写ASP组件
ASP通过ActiveX Server Components(ActiveX 服务器元件 ) 使其具有无限可扩充性。在ASP开发当中,免不了使用组件,网上的确有很多的免费,试用的组件,但这是人家的东西,用起来总不免有些担心,自己写的组件用起来才踏实。ActiveX Server Component 可以使用 Visual Basic、 Delphi、 Java 、 Visual C 、 COBOL 等编程语言来编写。本文主要介绍如何使用Java来写ASP组件。
先写个很简单的Java程序
public class TestJava
{
public String Ver="1.0.1版";
public int lenstr(String str)
{
return str.length();
}
public String Version()
{
return Ver;
}
}
编译生成TestJava.class ,然后将其注册成组件。
注册Java组件:
也许大多数人想到是RegSvr32.exe这个程序,但这里并不用它,它用于注册编译成DLL的ActiveX组件,Java写成的Class文件不能够用它来注册,你需要的是JavaReg.exe,这个程序在Microsoft SDK for java中可以找到。你先安装microsoft sdk for java,目前最新版本是4.0版的。下载地址:
Mricrosoft SDK for Java 4.0
如果有误,自己去 http://www.microsoft.com 上找。下载后直接安装即可。
安装后在Microsoft SDK for java的bin目录下有这个工具。在注册前,你可将编译好的class文件复制到系统目录下的\java\trustlib\目录下(在我的机上是C:\winnt\java\trustlib)。在"命令提示符"窗口下输入JavaReg并执行,可能看到它的用法及参数。
如:
javareg /register /class: TestJava /progid: 组件.TestJava
注册上面生成的class文件
可以用中文名。反向注册 javareg /unregister ...就行了。注意:如果你的Java重新编译过,又想马上生效的话,必需要重启一下WEB服务器,这样才能正常使用,否则你会发现新加的方法不能用。
ASP中的使用:
<%
'testjava.asp
Set Obj = Server.CreateObject("组件.TestJava")
response.write Obj.lenstr("你好!Hello World!")
response.write "<br>"