`
snlilei
  • 浏览: 7512 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

搭建spring3.0 mvc遇到的常见问题及解决方法

 
阅读更多
1、web项目启动时出现ClassCastException。具体信息如下:     
        org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource  [/META-INF/applicationContext.xml]:   Invocation of init method failed;   nested exception is org.springframework.beans.BeanInstantiationException:   Could not instantiate bean class [org.hibernate.cfg.AnnotationConfiguration]:    Constructor threw exception; nested exception is java.lang.ClassCastException:     org.hibernate.annotations.common.reflection.java.JavaReflectionManager cannot be cast to org.hibernate.annotations.common.reflection.MetadataProviderInjector

原因:
hibernate3.jar,里面已经包含?annotations相关包,与hibernate3.jar和hibernate-annotations.jar或hibernate-commons-annotations.jar有冲突。

解决办法:
将lib目录下的:   hibernate-annotations.jar 和 hibernate-commons-annotations.jar 删除后重新部署。


2、部署web工程到tomcat是出错:An internal error occurred during: "Redeploy". java.lang.NullPointerException

原因:JDK版本不一致

解决办法:

    右键项目名→Properties→Java Build Path→Libraries→选中JRE System Library[Sun JDK 1.6.0_13]→Edit→选中“Workspace default JRE(Sun JDK 1.6.0_13)”→Finish
    重新部署

3、tomcat部署成功,启动tomcat后找不到页面,报404错误
原因:
欢迎页面放置路径错误,应该放在发布包的下的根目录里,WEB-INF目录外面,与WEB-INF目录同级。

解决方案:
把欢迎页面放到正确的的路径下。
web.xml文件配置:
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
则把index.jsp文件的放置路径为:/webapp/dss/index.jsp

4、启动后老是打印错误日志:
java.lang.Exception: DEBUG -- CLOSE BY CLIENT STACK TRACE
at com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:491)
at com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:191)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.destroyResource(C3P0PooledConnectionPool.java:470)
at com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask.run(BasicResourcePool.java:964)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)

原因:
这个是c3p0的调试信息,不会影响C3PO的使用

解决方法:
这个是c3p0调测数据库连接的测试信息,不是错误。最简单的方法时提高日志输出级别,就看不到了。
        这个信息是datasource中的automaticTestTable配置引起的,使用<property name=”preferredTestQuery” value=”select * from dual” /> ,这个属性就可以既能检测连接,还不用建立垃圾表,当然这个是在oracle中,dual是自带的虚拟表吗,sqlserver和mysql的from及以后就可以省掉了。

5、解析jsp页面时字符编码出错:
org.apache.jasper.JasperException: Page-encoding specified in XML prolog (UTF-8) is different from that specified in jsp-property-group (utf-8)

原因:
jsp页面中配置的字符编码与web.xml文件的配置不一致

解决方法:
修改JSP页面中的配置:<?xml version="1.0" encoding="UTF-8"?>,
与web.xml文件中的配置
   <jsp-property-group>
   <url-pattern>*.jsp</url-pattern>
  <page-encoding>UTF-8</page-encoding>
  </jsp-property-group>
  两者保持一致。

6、myeclipse 开发web项目切换到JSP编辑器时出现错误信息:myeclispe unhandled event loop exception NO more handles,
点击OK时弹出对话框:
An SWT error has occurred.   
You are recommended to exit the workbench.  
Subsequent errors may happen and may terminate the workbench without warning.   
See the .log file for more details.     Do you want to exit the workbench?
点击OK时自动退出。

原因:
默认的JSP编辑器无法识别JSP中的部分元素

解决方案:
window->preferences->general->editors->file associations 选中JSP,换一个编辑器即可。不行的话就先将默认的jsp designer 移除,再选择。

7、tomcat启动时加载log4j配置文件失败:
log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

原因:
这个提示是读入web应用程序的log4j.properties文件之前报出来的。是在加载org.springframework.web.context.ContextLoader这个listener的时候没找到log4j的配置文件造成的。

解决方案:
把log4j的配置放到org.springframework.web.context.ContextLoader之前,让spring先加载

10、spring容器找不到映射URL
No mapping found for HTTP request with URI [/dss/login.do] in DispatcherServlet with name 'dss'
分享到:
评论
1 楼 想飞的鸟 2012-07-25  
4、启动后老是打印错误日志: 
LZ,我用的是mysql,加这个属性么?<property name=”preferredTestQuery” value=”select * from dual” /> ?

相关推荐

Global site tag (gtag.js) - Google Analytics