在Netbeans下开发Jboss-seam

关键字: jboss, seam, netbeans, bug
Jboss seam 的Seam-gen提供了很好的项目生成工具,可以生成eclipse和netbeans的项目配置,因为全程采用ant构建,小组内可以同时使用eclipse和netbeans开发,非常方便。

如何在eclipse下开发seam,jboss的官方文档里已有说明。
本文讨论如何在NetBeans下开发Seam。因为seam均是java ee的技术,netbeans毫无疑问对java ee支持是最好的,所以推荐采用netbeans
本文采用版本:NetBeans IDE 5.5.1, JBoss Seam 2.0.0 beta1,Ant 1.6+

  1. 使用seam-gen生成项目
    在jboss-seam目录下运行seam setup根据提示设定一些项目参数,然后运行seam new-project生成项目骨架
    详细请见官方文档

  2. 新建NetBeans项目
    文件 -> 打开,然后打开刚刚新建立的项目,下面需要做一些设定

  3. 设定项目,修正seam-gen bug
    打开项目我们可以看到源码目录src/下面有三个包 src/action, src/test, src/model,实际上这分别是三个独立的源码目录树,但是seam-gen有bug(看来jboss的确不喜欢netbeans),生成的 netbeans源码路径不正确,netbeans把三个源码目录当成三个包了,我们需要手动修改一下,右键单击项目 -> 属性 -> Java源代码 设定正确的源包文件夹,src/test要设定在测试包文件夹内。
    然后为项目添加lib库,项目属性 -> Java源代码类路径 -> 添加JAR/文件夹,把lib库里的jar全部添加进来,为每一个源包文件夹(src/action, src/test, src/model)都添加同样的lib

  4. 下载facelet插件
    因为seam采用的是facelet而非jsp开发JSF页面(强烈推荐使用facelet),需要下载相关插件使netbeans支持facelet开发,下载 facelet netbeans pluggin 然后安装该插件: 工具 -> 更新中心 -> 手动安装下载的模块

  5. 编译运行
    首先在netbeans里安装Jboss AS服务器,这里采用的是Jboss AS 4.2.1
    方法是进入 运行环境 -> 右键单机 服务器节点 -> 添加服务器
    选择Jboss AS的安装目录,设定好以后打开刚刚添加的jboss AS的属性对话框,在平台 -> VM选项里填入
    -Xms512m -Xmx900m -XX:PermSize=256m -XX:MaxPermSize=512,这是因为ejb3有个潜在的bug,就是短时间内deploy几次后会很有可能出现内存溢出的异常,通过把堆栈内存设大一些可以解决
    因为seam-gen项目采用ant构建项目,所以不能像普通的web项目那样在直接在IDE里右键运行项目。NetBeans相比eclipse方便的 地方就是它能够映射build里的target到项目的构建任务里,就好像操作一个普通项目一样。右键单机项目你可以看到“清理项目,生成项目,部署项 目,测试项目”等等快捷任务,很人性化,也可以自己修改每个任务映射的ant target是什么。而eclipse对于ant项目就不行,右键菜单里的按钮都是定死的。这也是推荐netbeans的另一个原因。

    启动JBoss AS,然后右键单击项目的部署项目,片刻后就可以访问了,开发阶段更改文件重新部署仍然选择“部署项目”
    seam的ant任务会刷新ear的时间戳,强制jboss server重新加载而不用重新启动服务器
 原文:http://jeffreyhsu.javaeye.com/blog/109731

你可能感兴趣的:(Java,Portal)