IronJacamar 是 JBoss 项目组里 JCA 1.6 的实现。 有关 JCA 的介绍, 请看文章: JCA Overview 。
IronJacamar 官方网址为: http://www.jboss.org/ironjacamar , 当前版本为 1.1.0.Beta2, Beta3 计划在 11.28 日发布。 它的 1.0 branch 下最新版本为 1.0.13.Final, 该分支集成在 JBoss Enterprise Application Platform(EAP)6 环境下。
IronJacamar 使用 Ant + Ivy 作为 build 脚本。source code 的 地址为:
http://anonsvn.jboss.org/repos/jbossas/projects/jboss-jca/trunk/
IronJacamar 源代码的根目录结构为:
../ |-- adapters # jdbc resource adapter |-- api # jca 的 api |-- arquillian # 基于 arquillian 的测试支持 |-- as # 用于对 jboss 老版本的移植, 还有一些工具。 |-- build.xml # 主要的 build 脚本 |-- codegenerator # 提供 code generator 工具 |-- common # jca 的 metadata 解析 |-- core # jca 运行时 |-- deployers # 提供 rar 的部署 |-- doc # 文档 |-- eclipse # eclipse 插件 |-- eis # 测试用 EIS |-- embedded # embedded jca, 用于测试环境 |-- ivy.settings.xml # ivy 的配置 |-- ivy.xml # ivy 里指定依赖 |-- README.txt # 说明文件 |-- sjc # 提供 standalone 环境 |-- tools # build 过程中使用到的工具和模板 |-- validator # validate rar是否有效 `-- web # web console, 运行在 sjc 下
IronJacamar 提供了很多有助于 Resource Adapter 开发的工具, 例如: code generator, Eclipse plugin, validator, rar information tool ,另外还提供了 standalone 的运行环境,用于测试和调试。
在根目录下,运行
ant sjc
后, 会在 target 目录下产生一个 sjc 的目录, 切换目录到 sjc/bin 下, 运行 ./run.sh:
cd target/sjc/bin ./run.sh
将会启动 IronJacamar 的 standalone 环境。 打开浏览器,输入地址:
http://127.0.0.1:8080/console/
,你将看到 sjc 的控制台。 这个 standalone 环境目前支持 Resource Adapter 和 .war web 程序的部署,只需要把 .rar 或者 .war 文件丢到 sjc/deploy/ 目录下, 启动 sjc 即可。另外,它还与 IronJacamar 的 Eclipse plugin 集成, 使得可以远程热部署。
code generator 提供了命令行的界面快速生成一个 Resource Adapter 的工程
切换到 target/sjc/doc/codegenerator 目录下, 运行 ./codegenerator.sh,然后根据提示一步步生成代码。
cd target/sjc/doc/codegenerator ./codegenerator.sh
eclipse plugin 的编译需要用户本地的 eclipse 环境才可以, 假设你的 eclipse 安装目录为: /opt/eclipse, 那么编译 eclipse plugin 需要运行:
ant -Declipse.home=/opt/eclipse eclipse
之后, 在 target 目录下会产生 ironjacamar-eclipse.jar 文件, 把该文件 copy 到你的 eclipse 目录下的 plugins 子目录, 重启 eclipse, plugin 就安装好了。
cp target/ironjacamar-eclipse.jar /opt/eclipse/plugins/
Eclipse plugin 使用 code generator 工具的功能,提供了 GUI 的界面, 快速生成 Resource Adapter 的 eclipse 工程。
我们将会在接下来的版本适时发布 update link, 以便 Eclipse 用户安装。
validator tool 可以验证你编写的 Resource Adapter 是否符合 JCA 规范。它还提供了 ant 的 task 和 maven 的 mojo, 你可以很方便的把 Resource Adapter 的验证集成到你的 build 环境中去。
切换目录到 target/sjc/doc/validator 下,运行:
cd target/sjc/doc/validator ./validator.sh <RAR 文件地址>
如果你希望知道第三方开发的 Resource Adapter 里有哪些 JCA 的声明, rar information tool 会帮你很大的忙。
切换目录到 target/sjc/doc/as, 运行:
cd target/sjc/doc/as ./rar-info.sh <RAR 文件地址>
将会在 RAR 文件所在目录下生成相应的 report 文件。
目前 rar information tool 还不支持 annotation, 我们将在接下来的版本里加入支持。
更多 IronJacamar 相关的文档, 请参考官方的 E 文: http://docs.jboss.org/ironjacamar/userguide/1.0/en-US/html/