笔者在搭建SSH框架时遇到了形形色色的问题,特写一篇博文以供日后学习。
一、java.io.EOFException
Unable to process Jar entry [javassist/util/proxy/SecurityActions$2.class] from Jar [jar:file:/G:/eclipse_Workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/SSHDemo/WEB-INF/lib/javassist-3.20.0-GA.jar!/] for annotations
解决办法:
将tomcat7升级成tomcat8!
二、找不到org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
分析:
第一种可能:jar包没有导入到WEB-INF的lib文件夹下
第二种可能:打错了路径,应该是org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
三、java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens
解决办法:
访问地址的时候用http,而不是用https!
四、跳转action时总是返回input
分析:之前加了一个错误的验证文件RegiterAction-validation.xml
解决办法:
删除掉验证文件!
五、明明user.hbm.xml路径正确,但总提示找不到xml文件
分析: <property name="mappingLocations">
<list>
<value>test\cx\bean\user.hbm.xml</value>
</list>
</property>
解决:
目录前添加classpath:,提示spring容器从相对目录开始寻找xml文件
<property name="mappingLocations">
<list>
<value>classpath:test\cx\bean\user.hbm.xml</value>
</list>
</property>
六、不能通过get获得bean对象
解决:
七、createQuery is not valid without active transaction
解决:
删除hibernate配置文件中的<prop key="hibernate.current_session_context_class">org.springframework.orm.hibernate4.SpringSessionContext</