JSF学习中遇到的问题及解决

[size=medium]    最近公司没有什么事情做,学习了一下JSF,并结合spring和Hibernate做了个小练习,以下是做的过程中遇到的一些问题及解决,希望能和大家一起交流,共同学习.
JSF+Spring+Hibernated遇到的问题及解决
1 我使用的是JSF1.2,Spring2.0,Hibernate3.1,Myeclipse5.5刚开始使用Tomcat5.0,出错,无法支持JSF1.2,改用Tomcat6,问题解决.
2 启动Tomcat,出现java.lang.NoClassDefFoundError:org/apache/commons/pool/impl/GenericObjectPool错误,原因是缺少了一个commons-pool.jar文件, 在myeclipse的安装目录下搜索,得到这个文件.放进lib文件夹. 问题解决.
3 使用Myeclipse反向工程时出现错误An   internal   error   occurred   during: "Generating   Artifacts
原因是驱动过旧,换用驱动ojdbc14.jar,问题解决.
4 出现java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V
原因是Spring 和 Hibernate 共用的一些 jar 文件发生了版本冲突, 删除 WEB-INF/lib/asm-2.2.3.jar 然后重启 Tomcat. 问题解决.

5 配置JSF的托管Bean时, 托管Bean引用到的其它类实例,要配置成托管属性<managed-property></managed-property>.
6. 在success页面,使用了这样一个链接:
<a href="logined.faces" target="menu" onclick="self.close();">
<font size="6" color="#ff00ff">点击这里直接登陆!</font> </a>

目的是想在左边框(名字为menu)打开logined页面,同时关闭自己(success提示页面),
问题是我不懂得如何用JSF中的<h:commandLink>做这同样的事情.我试过这样:
<h:commandLink value=” 点击这里直接登陆!” target=”menu”  onclick="self.close();"   action=”logined”></h:commandLink>
这样做的时候,在menu框里显示的不是logined页面,而是success页面.我原来以为JSF的这个<h:commandLink>和<a></a>差不多的,现在看来target的意义不一样阿!
[/size]




你可能感兴趣的:(spring,tomcat,Hibernate,MyEclipse,JSF)