我想知道Java和FatWire是什么关系。
我知道可以使用 JSP 创建模板,但它是否涉及任何标准的 Java 编程?另外,是否可以将其与 Spring 或 Grails 等 MVC 框架集成?
Fatwire(现为 Oracle WebCenter Sites)是一个最初基于 XML 语言的 CMS 系统。后来添加了一个 JSP API(具有与原始 XML 语言相同的特性)并变得流行起来。这种设计的最大缺点之一是您的大部分编码必须在 JSP 中完成(这是一种仅限视图的技术)。所以你有(内容)模型和视图,但没有控制器层。但真正的问题是,要么使用 Java 代码扩展 Fatwire 应用程序(每次更改时重新启动应用程序服务器,或者使用 JRebel),要么必须在 JSP 中编写所有代码。到目前为止,我所看到的几乎网站实现都使用了大量 JSP 和一些备用 Java 类,因此网站倾向于使用 JSP 中可用的残缺 Java 编写(例如,您不能共享一个类,或利用完整的 Java OOP )。如果你想使用完整的 Java,你可以使用实现 MVC 的框架。例如,AgileSites(免责声明:我是 AgileSites 的主要开发人员)。AgileSites 基本上使用 JSP 作为 CMS 的接口(如文档所建议的那样),但这些 JSP 调用存储在热插拔 jar 中的 java 代码,在您进行开发时自动构建。因此,您可以使用纯 Java 对所有内容进行编码,而无需在每次更改时重新启动应用程序服务器(当您保存文件时,只会重建很小的 jar)。在这种 Java 支持技术之上,AgileSites 为您提供了许多功能:将表示与控制器完全分离,使用纯 Java 控制器和纯 html 视图,嵌入式单元测试支持,用于持续集成的集成构建,脚手架,非常简化的 API 覆盖80% 的正常需求(同时提供对完整 API 的完全访问权限)等等。
Fatwire 模板可以使用 JSP、XML 和 HTML 开发。使用 JSP 开发它有很多优点,而且 Fatwire 带有 JSP 标签(称为 ICS 标签)用于基于标准的开发。最常见的是,您可以看到一个基于 JSP 的模板,其中包含调用 Fatwire 的资产 API 的 Java 代码脚本,该 API 是用 Java 实现的。
最新添加的是 Fatwire Web 体验管理 (WEM) 框架,它是带有 SSO 的 REST 服务的集合,使您能够围绕 Fatwire 编写应用程序。
例如,我开发了基于 REST 的应用程序,以使用 Java 将 SVN、翻译系统和供应系统与 Fatwire 集成。
Also, the latest Fatwire (Oracle Webcenter Sites) comes with set of developer tools called CSDT which is actually a Eclipse plugin that lets you develop templates within Eclipse (that has all the good features such as versioning, syntax checking) and facilitates local development, versioning of templates and continuous integration.
是的,Java 和 FatWire 可以相互使用。对您的 java 类进行编码、包装它们并以 war 或 jar 格式部署在您的应用服务器 lib 文件夹中。在 JSP 中编码时,在 JSP 中调用您的 java 类或方法并根据需要使用它们。