论坛首页 Java企业应用论坛

框架整合错误解决方法

浏览 4525 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-11-20  

框架整合错误解决方法(1)

注意:

      (1)其中应特别注意第七点,导入包冲突问题!!!

       (2)建立工程后先为工程加入log4j文件:

             

                  log4j配置文件

                  log4j.rootLogger=ERROR,console,file

                  log4j.appender.console=org.apache.log4j.ConsoleAppender
                  log4j.appender.console.layout=org.apache.log4j.PatternLayout
                  log4j.appender.console.layout.ConversionPattern=%-5p %d [%F,%L] - %m%n

                  log4j.appender.file=org.apache.log4j.RollingFileAppender
                  log4j.appender.file.File=F:\\SSH.log
                  #log4j.appender.file.MaxFileSize=100000KB
                  #log4j.appender.file.MaxBackupIndex=1
                  log4j.appender.file.layout=org.apache.log4j.PatternLayout
                  log4j.appender.file.layout.ConversionPattern=%-5p %d [%F,%L] - %m%n


               

下面是错误示例及解决方法:

1.

org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save():

原因:<id>元素配置不正确,<id>元素缺少其子元素<generator></generator>的配置。解决方法:<id>元素映射了相应数据库表的主键字段,对其子元素<generator class="">,其中class的取值可以为incrementidentitysequencehilonative......等,一般取其值为native

2.

java.lang.IllegalArgumentException: id to load is required for loading

方案:Users user=(Users)this.getHibernateTemplate().get(Users.class, id);如果以用户名为参数不能用此方法

3.

org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute query; nested exception is org.hibernate.exception.SQLGrammarException: could not execute query

方案:sql语句有错误

4.

严重: Error starting static Resources
java.lang.IllegalArgumentException: Document base D:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\tomcat-docs does not exist or is not a readable directory

严重: Error in resourceStart()
2007-6-6 23:32:25 org.apache.catalina.core.StandardContext start
严重: Error getConfigured
2007-6-6 23:32:25 org.apache.catalina.core.StandardContext start
严重: Context startup failed due to previous errors
2007-6-6 23:32:25 org.apache.catalina.core.StandardContext start
严重: Exception during cleanup after start failed
LifecycleException: Container StandardContext[/tomcat-docs] has not been started

5.jsf+spring+hibernate

严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool
Caused by: java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool

严重: Error listenerStart
2007-6-8 10:31:55 org.apache.catalina.core.StandardContext start
严重: Context [/shj01] startup failed due to previous errors
2007-6-8 10:31:55 org.apache.catalina.core.ApplicationContext log

方案:spring-framework-2.0.5\lib\jakarta-commons下的commons-collections.jar commons-dbcp.jar   commons-pool.jar加载到工程去

6.
严重: Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener
javax.faces.FacesException: Can't parse configuration file:jar:file:/E:/工具/apache-tomcat-6.0.9/apache-tomcat- 6.0.9/webapps/jsf02/WEB-INF/lib/jsf-impl.jar!/com/sun/faces/standard-html-renderkit.xml

方案:tomcat的安装文件换了位置就没事了

7.spring MVC+hibernate

严重: StandardWrapper.Throwable
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V
Caused by: java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V
方案:

在使用SpringAOP编程时,会用到这几个lib
asm-2.2.2.jar
asm-commons-2.2.2.jar
asm-util-2.2.2.jar

Hibernate使用如果lib

asm.jar
asm-attrs.jar

其中asm-2.2.2.jarasm.jar存在类上的冲突!!!
使用其中之一或两者都使用,可能会出现如下错误:
java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor
java.lang.NoClassDefFoundError: org/objectweb/asm/commons/EmptyVisitor
java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit
。。。。。。
解决办法是:
1.
去掉类路径上的关于Hibernate3lib
asm.jar
asm-attrs.jar
cglib-2.1.3.jar
2.
加入Spring中的以下4lib
asm-2.2.2.jar
asm-commons-2.2.2.jar
asm-util-2.2.2.jar
cglib-nodep-2.1_3.jar

或者加入

asm-all-3.0.jar

 

框架整合错误解决方法(2)

8.spring MVC+hibernate

Exception in thread "main" org.springframework.dao.InvalidDataAccessResourceUsageException: Could not execute JDBC batch update; nested exception is org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update
Caused by: org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update

9.

org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [org.springframework.transaction.interceptor.TransactionProxyFactoryBean] for bean with name 'userService' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: problem with class file or dependent class; nested exception is java.lang.NoClassDefFoundError: org/springframework/aop/framework/AbstractSingletonProxyFactoryBean
Caused by: java.lang.NoClassDefFoundError: org/springframework/aop/framework/AbstractSingletonProxyFactoryBean

方案:没加 spring 2.0 aop libraries

10.

org.apache.jasper.JasperException: Unable to compile class for JSP:

方案:jsp网页中的java代码有问题

11.

Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'CompanyController' defined in class path resource [com/company/test/company-config.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'methodNameResolver' of bean class [com.company.action.CompanyController]: Bean property 'methodNameResolver' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
Caused by: org.springframework.beans.NotWritablePropertyException: Invalid property 'methodNameResolver' of bean class [com.company.action.CompanyController]: Bean property 'methodNameResolver' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?


控制器没继承MultiActionController

12.


Exception in thread "main"
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'turDiffService' defined in class path resource [com/expert/test/expert-config.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'turDifficultDao' of bean class [com.expert.operation.impl.TurDiffSerImpl]: Bean property 'turDifficultDao' is not writable or has an invalid setter method. Did you mean 'truDifficultDao'?
Caused by: org.springframework.beans.NotWritablePropertyException: Invalid property 'turDifficultDao' of bean class [com.expert.operation.impl.TurDiffSerImpl]: Bean property 'turDifficultDao' is not writable or has an invalid setter method. Did you mean 'truDifficultDao'?
原因:
在定义时TurDifficultDao turDifficultDao ,把有个字母写错,后发现错误,改过来了,但没把get() set()方法中对应的改过来

13.

Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'urlMapping' defined in class path resource [com/expert/test/expert-config.xml]: Initialization of bean failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named '' is defined
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named '' is defined


原因:
expert-config.xml中创建
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
   <property name="mappings">
    <props>
    
     <prop key=""></prop>
    
     </props>
   </property>
</bean>
没有给<prop key=""></prop>赋值

14.

org.springframework.orm.hibernate3.HibernateQueryException: Instruction is not mapped

[from Instruction]; nested exception is org.hibernate.hql.ast.QuerySyntaxException:

Instruction is not mapped [from Instruction]
Caused by:
org.hibernate.hql.ast.QuerySyntaxException: Instruction is not mapped [from

Instruction]
原因:在data-config.xml中没加入<value>com/serializ/Instruction.hbm.xml</value>

或者:查询语句没写对from com.tweb.dao.hb.po.TSysDept as t where t.deptName like '%11%' pname 这里com.tweb.dao.hb.po.TSysDept是类名,而且必须包含包名,也就是TSysDept.hbm.xml完整类名,deptNameTSysDept.hbm.xml里面的name,而不是表字段名!!

15.

java.sql.SQLException: Field 'userId' doesn't have a default value
原因:把配置文件的主键改为<generator class="assigned" /> 可以进行自定义主键值,因为我在设主键时没有设成自动增长的,要求填默认值是受了配置文件里<generator class="native"/>的影响了。

16.org.apache.jasper.JasperException: Unable to compile class for JSP

原因:jsp页面中的java代码括号不对称!

17.当引用不同的工程中的DAO层时,直接调用dao层会出问题,必须引入配置文件


   发表时间:2009-02-26  
无外乎一下几点:

1.包少了
2.包多了
3.包重复了
4.版本不支持
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics