开发过程中碰到的错误和异常总结

1、今天做ssh+axis2的集成,开始的时候,一下子把所有的jar包全部引入,而没有考虑到
jar包的版本的问题,于是,就不停的抛出java.lang.IncompatibleClassChangeError 异常,所以有时候想偷点懒也是不容易呀,   网上有人说axis2 所需要的最少jar为:

activation-1.1.jar
axiom-api-1.2.2.jar
axiom-impl-1.2.2.jar
axis2-adb-1.1.1.jar
axis2-kernel-1.1.1.jar
commons-codec-1.3.jar
commons-httpclient-3.0.1.jar
commons-logging-1.1.jar
stax-api-1.0.1.jar
wsdl4j-1.6.2.jar
wstx-asl-3.2.1.jar
XmlSchema-1.3.1.jar


当只用axis2 的时候这些是足够的,但是如果用到了比如和spring集成的时候,这些就可能不够了,建议先引入核心的jar,以后用到什么引入什么,就行啦


java.lang.IncompatibleClassChangeError

不兼容的类变化错误。当正在执行的方法所依赖的类定义发生了不兼容的改变时

,抛出该异常。一般在修改了应用中的某些类的声明定义而没有对整个应用重新

编译而直接运行的情况下,容易引发该错误




2、is quoted with " which must be escaped when used within the
   当tomcat版本不一样时容易发生此问题,如把tomcat从5.5升级到6.0时有可能会报错。解决方式有两种:
   1、更改为正确的tomcat版本
   2、把双引号改为单引号


3、如果您在安装sql 2005时出现计数器错误,在搜索过所有的方法都不适用的时候:

没有说清楚是哪个计数器的错误

运行 cmd
unlodctr w3svc
unlodctr msftpsvc
unlodctr asp
unlodctr inetinfo

以上是将4个计数器删除


lodctr w3ctrs.ini
lodctr ftpctrs.ini
lodctr axperf.ini
lodctr infoctrs.ini

这里是重新安装,
重新安装SQL2005现在应该没有问题了 




4、sqlServer2005 用户登录失败
 其实登录失败有好多原因,像那种没有开启tcp协议或者没有启动双重验证的就不说了
还有一种情况就是,实例名不对,当我们新建了一个实例的时候,就不能用localhost:1433进行连接了,这种情况适用于默认的实例名。这个时候有两种解决方式,1、更改新实例的端口如8888,那么我们就可以通过localhost:8888进行连接。2、加上实例名称后进行连接。



java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servlet.jsp.JspApplicationContext.getExpressionFactory()Ljavax/el/ExpressionFactory;" the class loader (instance of org/apache/jasper/servlet/JasperLoader) of the current class, org/apache/jsp/index_jsp, and the class loader (instance of org/apache/catalina/loader/StandardClassLoader) for resolved class, javax/servlet/jsp/JspApplicationContext, have different Class objects for the type javax/el/ExpressionFactory used in the signature
	org.apache.jsp.index_jsp._jspInit(index_jsp.java:23)
	org.apache.jasper.runtime.HttpJspBase.init(HttpJspBase.java:52)
	org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:159)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:88)
	org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

jbpm4 在tomcat6 下面ssh2 这个错误!

原因是项目中WEB-INF\lib中的三个jar包(juel.jar, juel-engine.jar, juel-impl.jar)和

tomcat6下lib中jar包(el-api.jar)冲突

解决方法:

方法一:换成tomcat5.5 一点问题也没有了

方法二:将juel.jar, juel-engine.jar, juel-impl.jar这三个包复制到tomcat6下lib中,

并删除原来的el-api.jar,切记要把WEB-INF\lib中的juel.jar, juel-engine.jar, juel-impl.jar删除。

不然还是要冲突。



安装sqlserver2005提示性能监视器计数器错误
经过网络寻求帮助,原来是因为注册表的 LAST COUNT 和 LAST HELP太小。

解决方法如下:1 把注册表的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib中“Last Counter”、“Last Help”值修改为004 目录下对应的最大值.


引用
sql2005Sql.cab 错误
安装了msxml4.0 sp3和msxml6.0两个文件

你可能感兴趣的:(java,apache,tomcat,jsp,servlet)