Exception经验记录

Exception经验记录 关键字: exception 转载请注明: http://chrislee.javaeye.com/    以前碰到过的一些异常和解决办法的记录,拿上来晾着吧,说不定还可以帮上某些朋友,呵呵,我也会继续积累的~~~ ************************************************************************************ 1 ##JAVAWS="./jre/bin/javaws.exe" 记录时间:2007-08-08 In Struts validate formework 异常特征:No form found under XXX in locale 'zh_CN' avax.servlet.jsp.JspException: No form found under 'employeeForm' in locale 'zh_CN' at org.apache.struts.taglib.html.JavascriptValidatorTag.renderJavascript (JavascriptValidatorTag.java:384) at org.apache.struts.taglib.html.JavascriptValidatorTag.doStartTag(JavascriptValidatorTag.java:349) .......................... 产生原因:1 在validation.xml中缺少了相应的
配置 ************************************************************************************ 2 记录时间:2007-08-08 In Struts ActionMessages or Taglib 异常特征:cannot found bean XXX in any scope .................................... 产生原因:1 相关位置的bean名称不匹配、 2 或在资源文件正没有注册相应消息的键值 ************************************************************************************ 3 记录时间:2007-08-08 In Servlet Filter 异常特征:验证登录用的filter不停重复调用自身 .................................... 产生原因:1 web.xml中 的 /* 过滤路径包含转发目标 页自身,另外在Filter类的逻辑中response.sendRedirect("RedirectPath")的转发路径 有问题。可用以下代码辅助测试: String request_uri =hrequest.getRequestURI(); String ctx_path = hrequest.getContextPath(); System.out.println("request_uri = " + request_uri); System.out.println("ctx_path = " + ctx_path); System.out.println(request_uri.substring(ctx_path.length())); ************************************************************************************ 4 记录时间:2007-08-14 In Hibernate 异常特征:不能将显式值插入时间戳列。请对列列表使用 INSERT 来排除时间戳列, 或将 DEFAULT 插入时间戳列。 java.sql.SQLException: 不能将显式值插入时间戳列。请对列列表使用 INSERT 来排除时间戳列, 或将 DEFAULT 插入时间戳列。 at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:365) at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2781) at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2224) .................................... 产生原因:数据库表中的列数据类型定义问Timestamp,因此在SQL Insert into 语句中不能显式插入值。 而hibernate中对应的 对象-表映射文件(*.hbm.xml)中没有为该属性设置 insert="false" update="false" ************************************************************************************ 5 记录时间:2007-08-18 In Hibernate 异常特征:ERROR BasicLazyInitializer:130 - CGLIB Enhancement failed: test.model.Person net.sf.cglib.core.CodeGenerationException: java.lang.reflect.InvocationTargetException-->null .................................... ... 16 more Caused by: java.lang.SecurityException: class "test.model.Person$$EnhancerByCGLIB$$73475a87"'s signer information does not match signer information of other classes in the same package 产生原因:MyEclipse 导入的Hiberante3 Core Libraries 中cglib-2.1.3.jar与Hiberante3有版本冲突 但初步看来不影响使用,可将cglib-2.1.3.jar更换到更高版本。 ************************************************************************************ 6 记录时间:2007-08-18 In Hibernate 异常特征:org.hibernate.hql.ast.QuerySyntaxException: XXX is not mapped. [from Demand where unitid = ? and needNum > usedNeedNum] .................................... 产生原因:hibernate.cfg.xml没有配置XXX.hbm.xml文件的目录 ************************************************************************************ 7 记录时间:2007-08-19 In Hibernate on Web 异常特征:%%%% Error Creating SessionFactory %%%% java.lang.SecurityException: class "org.apache.commons.collections.SequencedHashMap"'s signer information does not match signer information of other classes in the same package at java.lang.ClassLoader.checkCerts(ClassLoader.java:775) at java.lang.ClassLoader.preDefineClass(ClassLoader.java:487) at java.lang.ClassLoader.defineClass(ClassLoader.java:614) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1817) at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:872) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1325) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204) .................................... 产生原因:MyEclipse 6.0M1 Hibernate3 Core Libraries 的版本问题,换个高于3.1.2的就OK ************************************************************************************ 8 记录时间:2007-08-23 In SpringFramework 异常特征:Exception in thread "main" org.springframework.context.NoSuchMessageException: No message found under code 'user.login' for locale 'en_US'. .................................... 产生原因:国际化用的资源文件(*.properties)没有放置在src(项目根目录)目录下 ************************************************************************************ 记录时间:2007-08-24 In SpringFramework AOP 异常特征: Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.aop.aspectj.AspectJPointcutAdvisor': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.aop.aspectj.AspectJPointcutAdvisor]: Constructor threw exception; nested exception is java.lang.IllegalArgumentException: warning no match for this type name: test.proxyAndAOP [Xlint:invalidAbsoluteTypeName] Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.aop.aspectj.AspectJPointcutAdvisor]: Constructor threw exception; nested exception is java.lang.IllegalArgumentException: warning no match for this type name: test.proxyAndAOP [Xlint:invalidAbsoluteTypeName] Caused by: java.lang.IllegalArgumentException: warning no match for this type name: test.proxyAndAOP [Xlint:invalidAbsoluteTypeName] at org.aspectj.weaver.tools.PointcutParser.parsePointcutExpression(PointcutParser.java:315) at org.springframework.aop.aspectj.AspectJExpressionPointcut.buildPointcutExpression (AspectJExpressionPointcut.java:189) at org.springframework.aop.aspectj.AspectJExpressionPointcut.checkReadyToMatch (AspectJExpressionPointcut.java:176) .................................... 产生原因:aop:pointcut的表达式写错了 "execution(* XXXXX.*(..))" ************************************************************************************ 记录时间:2007-09-08 In WebWork2.2.6 Action 异常特征:java.lang.NullPointerException 明明填入了参数但仍然报参数为Null .................................... 产生原因:有可能是xwork.xml中参数拦截器写错了 ************************************************************************************ 记录时间:2007-09-09 In Hibernate3.2.2GA + Spring2.0.3 + WebWork2.2.6 异常特征:java.lang.NullPointerException at org.hibernate.tuple.AbstractEntityTuplizer.createProxy(AbstractEntityTuplizer.java:372) at org.hibernate.persister.entity.AbstractEntityPersister.createProxy (AbstractEntityPersister.java:3121) at org.hibernate.event.def.DefaultLoadEventListener.createProxyIfNecessary (DefaultLoadEventListener.java:232) at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:173) at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:87) at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:869) at org.hibernate.impl.SessionImpl.load(SessionImpl.java:788) at org.hibernate.impl.SessionImpl.load(SessionImpl.java:781) at d1.persist.test.SessionTest.testDetachedObject(SessionTest.java:155) 打开log4j后日志表现该问题为: 所需记录已经从数据库中成功取出装入ResultSet后貌似无故抛出java.lang.NullPointerException .................................... 产生原因:MyEclipse 导入的Hiberante3 Core Libraries 中cglib-2.1.3.jar与Hiberante3有版本冲突。 change this in cglib-2.2_beta1.jar fixed the problem for my application. 另外在session.load operation 时 也有可能出现这个problem ************************************************************************************ 记录时间:2007-09-17 In Hibernate3.2.2GA + Spring2.0.3 + Struts1.2.0 on MyEclips6.0GA 异常特征:tomcat6启动时........ 严重: Servlet /bookstore threw load() exception java.lang.SecurityException: class "org.apache.commons.collections.FastHashMap"'s signer information does not match signer information of other classes in the same package at java.lang.ClassLoader.checkCerts(ClassLoader.java:775) at java.lang.ClassLoader.preDefineClass(ClassLoader.java:487) at java.lang.ClassLoader.defineClass(ClassLoader.java:614) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1817) .................................... 产生原因:Myeclipse里自带的commons-beanutils和commons-collections的签名问题,去apache 下载一个替换了就好 了。 ************************************************************************************ 记录时间:2007-09-20 In Hibernate3.2.2GA + Spring2.0.3 + Struts1.2.0 on MyEclips6.0GA 异常特征:tomcat6启动时........ 严重: action: null org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/WEB-INF/action-servlet.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/action-servlet.xml] Caused by: java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/action- servlet.xml] at org.springframework.web.context.support.ServletContextResource.getInputStream (ServletContextResource.java:99) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions (XmlBeanDefinitionReader.java:297) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions (XmlBeanDefinitionReader.java:280) .................................... 产生原因:Struts-config.xml里整合spring的plug-in中的property写错了。 应该是 ************************************************************************************ 记录时间:2007-09-24 In Hibernate3.2.2GA + Spring2.0.3 + Struts1.2.0 on MyEclips6.0GA 异常特征:输入地址后一片空白,无任何显示,也不报任何异常。 .................................... 产生原因:Filter中没有写chain.doFilter(request, response); ************************************************************************************ .................................... 中间一年多的内容丢了~~~~好可惜呀~~~~ .................................... ************************************************************************************ 记录时间:2008 - 12 - 22 iBATIS + Spring2.5 on MyEclips6.0GA 异常特征:java.lang.IllegalArgumentException: No SqlMapClient specified at org.springframework.util.Assert.notNull(Assert.java:112) at org.springframework.orm.ibatis.SqlMapClientTemplate.execute(SqlMapClientTemplate.java:163) at org.springframework.orm.ibatis.SqlMapClientTemplate.queryForObject (SqlMapClientTemplate.java:241) .................................... 产生原因:在测试用例里面没有使用Spring初始话DAO,而是直接new DOA实现了,大意了,嘿嘿。 正确的方法应该是: protected void setUp() throws Exception { ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); seqImpl = (DAOIBtaisTemplateIMPL) context.getBean("DAOIBtaisTemplateIMPL"); }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值