java - 将 java-ee WAR 部署到 ColdFusion 服务器(对于混合 Java - ColdFusion 应用程序)

标签 java coldfusion coldfusion-10

背景

我们有一个现有的 ColdFusion 应用程序,我们正在考虑向其中添加额外的 Java 内容。

虽然我知道可以编译一个 jar 并将其用作一个库,但我正在寻找更接近纯 java-ee 体验的东西,您可以在 java 文件上点击保存,IDE 会重新部署到服务器和您的应用程序在您点击保存后几毫秒内可用。

我知道 ColdFusion 服务器实际上是一个 Tomcat 服务器,并且“在引擎盖下”使用 java-ee,所以我希望能够拥有一个恰好也有一些 .cfm 和 .里面有cfc文件。不过,我无法让 NetBeans 将 ColdFusion 服务器识别为 Tomcat 服务器。

或者,我尝试将 WAR 形式的 ColdFusion 服务器部署到 Glass Fish 服务器,然后将我的项目部署到该服务器。当然,将 java-ee WAR 部署到 glass fish 服务器很容易,但它当然部署在 ColdFusion 应用程序的旁边,而不是中,我无法做到找到一种方法来纠正它。

问题

如何将 java-ee WAR 部署到 ColdFusion 服务器(其中可能包含也可能不包含 ColdFusion .cfm 和 .cfcs)? (或者如何在使用 ColdFusion 的同时获得 Java-ee 的即时部署体验)

最佳答案

总结

我能找到的唯一解决方案是彻底改变整个关系,并将 ColdFusion 作为 War Overlap 包括在内(类似于但不同于将其作为库包括在内)。然后可以将整个东西部署到 Java-EE 兼容服务器(例如 GlassFish)。 War 叠加层是使用 Maven 创建的

循序渐进

下载 ColdFusion,照常开始安装。然后选择“Java-ee 配置”>“WAR 文件”作为安装选项。这将为您提供整个 ColdFusion 服务器作为 .war 文件(常规用途是您可以在任何 Java-EE 服务器上安装 ColdFusion,我们将使用它与此略有不同)。

我们将使用 maven 生成 war overlay,因此我们需要 maven 才能访问您刚刚生成的 ColdFusion war。您可以使用以下命令将 WAR 添加到本地存储库(针对您的 ColdFusion 版本和保存 WAR 的位置进行编辑)

mvn install:install-file -DgroupId=com.adobe.coldfusion -DartifactId=coldfusion -Dpackaging=war -Dversion=10 -Dfile=c:/coldfusion/cfusion.war -DgeneratePom=true 

如果 Maven 的 bin 不在您的 Path 环境变量中,您可能需要将目录更改为它。这将根据您的系统而有所不同,但假设您正在使用 maven 的 netbeans 插件(默认情况下),您将像下面这样(编辑您的 Netbeans 安装位置)

cd C:\Program Files\NetBeans 8.0.1\java\maven\bin

在 Netbeans 中创建一个新的 Maven Java-ee 项目。然后(在生成的项目中)打开您的项目文件>pom.xml 文件并添加 War 叠加依赖项

<dependencies>
    <!-- other dependancies -->
    <!-- This is the war overlay -->
    <dependency>
        <groupId>com.adobe.coldfusion</groupId>
        <artifactId>coldfusion</artifactId>
        <version>10</version>
        <type>war</type>
        <scope>runtime</scope>
        <optional>false</optional>
    </dependency> 
</dependencies>

现在应该可以将 ColdFudion 文件(在网页目录中)与普通的 Java-EE 应用程序一起包括在内

引用资料:

关于java - 将 java-ee WAR 部署到 ColdFusion 服务器(对于混合 Java - ColdFusion 应用程序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28398431/

相关文章:

java - Java中的基本类型decimal - 用户入口

java - java中的字符串操作以获取另一个字符串

java - Maven 插件 Mojo 配置默认参数值

rest - ColdFusion 10 - REST Web 服务错误 - 对象不是声明类的实例

coldfusion - 使用 cfquery cfqueryparam 出现奇怪的 ColdFusion 10 错误

CFHTTP 的 Post 方法在 Coldfusion 10 中不起作用,但 get 可以工作

java - KeyFactory.createKey() 这是在数据存储中存储数据的正确方法吗

linux - Linux 上用于文件操作的 coldfusion 权限(cffile、cfdirectory)

javascript - 您可以在同一个提交上运行的一个函数中有两个 ajax 调用吗?

java - 加载 jsoup 时 JavaLoader 出现问题