我正在运行 CF 10 Enterprise,在初始安装和配置两个实例后安装了 .NET 集成服务。实例名称为“cfusion”(默认),我们将第二个实例称为“instance2”。
我通过独立安装程序安装了 .NET Integration Services,并选择 c:\ColdFusion10\cfusion 作为其应安装到的目录。它在 cfusion 实例中创建了 jnbridge 目录,并创建了 ColdFusion10DotNetService 目录。在 fusion 实例下运行以下代码可以完美运行:
<cfset UtilitiesProxy = "c:/inetpub/CFCs/MyCo/Integration/UtilitiesProxy.jar" />
<cfset CoStarUtilities = "c:/inetpub/CFCs/MyCo/Integration/MyCo.Utilities.dll" />
<cfset Paths = ArrayToList([CoStarUtilities, UtilitiesProxy]) />
<cfset Publisher = CreateObject( ".net", "MyCo.Utilities.Wall.Publisher", Paths ).init() />
运行相同的代码instance2
会出现一个错误,The assembly that contains the class must be provided to the assembly attribute.
这是我在 cfusion 下使 .NET 集成服务正常工作之前收到的相同错误。
因此,我需要找出如何允许instance2
访问 .NET 集成服务。我尝试将 jnbridge 目录复制到c:\ColdFusion10\instance2
实例并重新启动实例,但这并没有解决问题。我觉得我遗漏了拼图中的其他部分,因为它instance2
是在安装 .NET 集成服务之前创建的。
答案1
由于您提到您运行了安装程序并将第一个 ColdFusion 实例指定为源文件夹,因此我将尝试再次运行安装程序并将第二个 ColdFusion 实例指定为源文件夹。我确信安装程序所做的不仅仅是复制文件(可能添加注册表项等)。因此,针对第二个实例的文件夹运行它可能会让您顺利完成任务。