由于有新项目要上,开始折腾seam这个东西,2年前曾经用过,当是用的jboss4.2,到后来的jboss5,本来不打算用最新的jboss7.1,刚开始使用的是jboss6.1,用jboss tools创建的项目,可能又有版本不兼容,除了很多问题,好不容调出来页面,以为可以走通,没想到又报hibernate的类找不到,猜测是hibernate的版本问题,就开始替换hibernate的版本,替换好了,好像jboss内部还用其中的老版本,由于hibernate的class包中已经去除老版本的一些类,导致不能完全向下兼容。
到最后折腾的实在没办法只好换到jboss7,换过来以后首先遇到的问题是数据源配置的问题,由于jboss7和以前版本的数据源配置方式有很大的变化,不是以前版本的-ds.xml方式了,尝试自己写moudles,还是失败,最后还是通过jboss7的管理台配置成功:注意一下几个问题:
1,要下载支持jdbc4的数据库驱动版本;
2.登陆到jboss7的管理平台(实现要用命令方式建用户),在部署中直接部署你的驱动文件,应该是一个jar文件,部署成功后;
3.在数据源配置页面添加你的数据源配置,选择你部署成功的驱动,应该没有什么大问题
然后直接调试启动,发现一个奇怪的异常,就是提示有个设置setastext这个东西,经过查看源码应该输入的是一个true或者false,这里接受到的是个disable,百思不得其解,根据异常判断应该是richface的原因,但是我用的已经是最新版本了,所以只好拼命找,最后再web.xml中配置中,找到和richface相关的配置有,输入选项是disable的,果断改为true;编译,重启哦。终于看到熟悉的home.seam实例页面。
因为我以前项目就有注入EJB组件,当的测试页面时发现,不能注入,导致错误,提示jndi路径问题,然后看jboss,的log数据,果真jboss7中ejb的jndi路径有了很大变化
所以就改动seam中关于配置jndi路径,这个问题没有完美解决,按照配置我只能把自己ejb包的写进去。看看那儿有更好办法。再补上。
先开始其他的开发工作,在这里几下这些,以免以后又走弯路。
@Id @GeneratedValue(generator="system-uuid")
@GenericGenerator(name="system-uuid",strategy="uuid.hex")
加上ejb3的uuid配置项
加上个广告哈:西安智能家居