Microsoft Java Virtual Machine (MSJVM) 內建支持將 Java 類的 public 方法自動映射為 COM 对象接口,無需編寫 IDL 或 C++ 代碼。只需將編譯後的 .class 放入信任目錄,使用 javareg 工具註冊,即可在 ASP/VB/Script 中像調用原生 COM 組件一樣調用 Java 邏輯。
public):
public class javaCOM {
public String szHello = "Hello World";
public String anyFunc() {
return "As returned by anyFunc !";
}
}
jvc javaCOM.java 生成 javaCOM.class。.class 至 %WINNT%\java\trustlib (受信任庫目錄)。javareg /register /class:javaCOM /progid:javaCOM.Test
<%
Set jc = Server.CreateObject("javaCOM.Test")
Response.Write jc.szHello & "<br>"
Response.Write jc.anyFunc & "<br>"
%>
String 自動轉為 COM BSTR;基本類型對應 Variant 子類型;複雜對象需實現特定接口。trustlib 賦予完全信任,生產環境需嚴格控制部署來源。此方案在 1990 年代末/2000 年代初期 ASP + Java 混合開發中極具吸引力,隨著微软停止更新 MSJVM (IE4/5/6 時代) 並轉向 .NET,已成為歷史技術。現代 Java-COM 互操作請參考 Jacob 或 Com4j。