背景简介:

该项目是市信用办的一个系统,之前好像是一个石家庄的公司负责的。我属于是半路接手。拿到源码后,根据他们给的简(shao)单(de)明(ke)了(lian)的说明把项目搭起来。结果可想而知,项目文件一片红。于是就开始解决这些错误,好在很多错误都是类似的。经过一番捣鼓,大部分的错误都解决了,有一个Spring跟DWR集成配置的错误,错误信息如下:

Multiple annotations found at this line:
- schema_reference.4: Failed to read schema document 'http://www.directwebremoting.org/schema/spring-dwr-2.0.xsd', because 1) could not find the document;
2) the document could not be read; 3) the root element of the document is not <xsd:schema>.
- cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'dwr:remote'.

解决过程:

遇到以前没见过的错误,第一步肯定就是去网上找解决方案了。于是百度、谷歌双管齐下,倒是找到了不少类似错误的解决方案,逐个试过貌似在我这里都不起作用了。

无奈之下我想起了我们在刚刚做完的项目中,用到了DWR,于是我就找到了当时负责DWR这一块的小伙伴,向他寻求帮助。给他看过具体问题之后,他说我们当时不是用的这种方式,而是用的另一种,他推荐我去官网找找看。接着我就来到了DWR的官网,找到与Spring集成的部分,然后又找到'dwr:remote'标签,最后也没发现有什么特殊的地方。后来因为时间比较晚了,而且在这个问题上花费了很长时间,自己有点烦了,就决定先不理它了,等明天再弄。

第二天上午,学完英语之后我坐在电脑前,看着错误提示,心里想:网上找到的解决方案都没有帮我解决这个问题,很可能是我跟他们的错误表现类似,但造成这种表现的原因不一样呢?于是我看是认真的阅读那几行错误提示。后来发现可能是找不到对应的schema文件。虽然IDE会先去jar包里找,如果找不到还会根据你的配置去网上找。但是也可能由于哪出了问题,导致这两条路都走不通了。于是我想,既然这样的话,那我何不自己手动给你添加一个本地的schema文件呢?

说时迟那时快,想到这里,我以迅雷不及掩耳之势下载了一个schema文件,并手动添加到IDE中。bingo!错误提示消失了,问题解决了。喜出望外、喜大普奔呀!

手动添加schema文件,方法如下:

1,依次选择:windwos->preferences->myeclipse->files and editors->xml->xmlcatalog

2,点"add",在出现的窗口中,在location中选"File system",然后选择你下载的spring-beans-2.0.xsd,文件

3,回到设置窗口的时候不要急着关闭窗口,应把窗口中的Key Type改为Schema location,

4,Key 改为http://www.directwebremoting.org/schema/spring-dwr-2.0.xsd

总结:

网络的力量很强大,周围人的帮助也很重要,不过很多时候还是要靠自己。当一个问题困扰你很长时间的时候,不妨先停下你的脚步,转身换个方向走,换个角度思考。很多时候换个角度想问题,会有完全不一样的结果。

当我们遇到问题的时候不放按照下面的方式去解决:

while (遇到问题) {
if (以前遇到过) {
根据自己的记忆或者以前的笔记解决问题;
}else if (没遇到过) {
上网找解决方案;
}else if (网上找不到 or 网上的方法无法解决) {
求助身边的人;
}else if (身边的人也无法解决) {
停下来,跳出之前的思路;
认真分析错误信息;
换个角度思考;
}

通常情况下,以上步骤就可以解决你的问题了。如果经历了以上步骤还是不能解决你的问题,那么恭喜你,你很可能遇到了一个非常难的难题。这个时候就是你进步的时候。你可能需要将问题反应给你的项目经理,从而集合更多的人去解决它。

以上就是我的一点小小的感受,希望能对大家有点帮助。

菜鸟调错(四)——Spring与DWR集成,配置文件报错的更多相关文章

  1. Eclipse 中 Spring 项目的 XML 配置文件报错 Referenced file contains errors

    原来运行正常的项目,突然在applicationContext.xml 文件头报错 总结一下网上的解决方案: 1.有可能网络状况不好导致 如果使用Maven构建项目,spring在加载xsd文件时总是 ...

  2. Ambari集成Kerberos报错汇总

    Ambari集成Kerberos报错汇总 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看报错的配置信息步骤 1>.点击Test Kerberos Client,查看相 ...

  3. Eclipse集成Tomcat报错:java.lang.OutOfMemoryError: PermGen space

    Eclipse集成Tomcat报错,使用Spring 4.3 框架,运行一段应用后,控制台报错: Unexpected death of background thread ContainerBack ...

  4. SpringBoot集成MybatisPlus报错

    SpringBoot集成MybatisPlus报错 启动的时候总是报如下错误: java.lang.annotation.AnnotationFormatError: Invalid default: ...

  5. eclipes的Spring注解SequenceGenerator(name="sequenceGenerator")报错的解决方式

    eclipes的Spring注解SequenceGenerator(name="sequenceGenerator")报错的解决方式 右键项目打开Properties—>JA ...

  6. 使用CXF+Spring发布WebService,启动报错

    使用CXF+Spring发布WebService,启动报错,日志如下: 五月 12, 2017 9:01:37 下午 org.apache.tomcat.util.digester.SetProper ...

  7. 【spring mvc】后台spring mvc接收List参数报错如下:org.springframework.beans.BeanInstantiationException: Failed to instantiate [java.util.List]: Specified class is an interface

    后台spring mvc接收List参数报错如下:org.springframework.beans.BeanInstantiationException: Failed to instantiate ...

  8. spring boot启动STS 运行报错 java.lang.NoClassDefFoundError: ch/qos/logback/classic/LoggerContext

    spring boot启动STS 运行报错 java.lang.NoClassDefFoundError: ch/qos/logback/classic/LoggerContext 学习了: http ...

  9. 【转载】配置文件报错:不允许有匹配 [xX][mM][lL] 的处理指令目标

    今天编写代码的时候,不小心给一个xml文件的首行加了一行空格,导致了启动报了如题类似的错误,查到一篇文章,顺藤摸瓜发现了这个失误,文章转载如下: 框架整合 的时候,XML 配置文件大多数情况是从另一个 ...

随机推荐

  1. 用python导出csv文件

    # coding: utf-8 import csv csvfile = open('csv.csv', 'wb') #打开方式还可以使用file对象 writer = csv.writer(csvf ...

  2. ipython是python的交互式shell工具

    ipython: 是python的交互式shell工具,比默认的python shell工具要好用.支持变了自动补全,自动缩进,内置了很多的功能和函数 启动:可以通过cmd来启动该工具 自动补全: I ...

  3. 【Oracle+PHP】php连接oracle设定字符集,避免乱码

    数据库用oracle,当php连接oracle的时候,最好指定字符集. 查PHP手册,oci_connect的第四个参数为charset,这是关键. 首先获取oracle的字符集,运行“select ...

  4. DialogFragment 监听按键事件的方法(onkeydown)

                    我们在TV软件开发的时候,会使用DialogFragment,有时候要对它的按键事件进行监听,但是DialogFragment的监听方法和其它的不一样.         ...

  5. windows下卸载mysql5.5,升级为mysql5.7.25

    0. 停止mysql的服务 1. 卸载mysql5.5 1.1 使用360或者控制面板卸载mysql,为求干净,我使用的360,结果也需要手动清理 1.2 卸载完成之后到mysql的安装目录删掉该目录 ...

  6. ios 7新特性

    1:解决ios7.0中视图控制器中视图坐标布局问题 if ([[[UIDevice currentDevice] systemVersion] floatValue]>=7.0) { self. ...

  7. ios中GDataXML解析XML文档

    参考文章 http://blog.csdn.net/ryantang03/article/details/7868246 适合解析一个节点多个属性要用GDataXml 格式如下 <?xml ve ...

  8. ubuntu_thunder

    Thunder 出自Ubuntu中文 File:Http://forum.ubuntu.org.cn/download/file.php?id=123020&mode=view/wine-th ...

  9. easymock快速入门

    easymock是众多mock之中的很容易用的mock,今天刚开始学习,来个简单的教程.以购物车结算为例子,比如首先是每一个商品项的pojo. public class Item { private ...

  10. Windbg找出memory leak的一种笨办法

    以下内容是转自 http://www.cnblogs.com/fbird/p/5889596.html 以前做项目碰到过一个问题,在客户的站点上面发现有严重的内存泄漏.幸运的是我们找到了重现的步骤,一 ...