在启动keyCloak,想要在standAlone模式下切换数据库,修改standAlone.xml文件时。

在bin/目录下启动standAlone模式出现错误:

10:07:24,799 INFO  [org.jboss.as.controller] (Controller Boot Thread) OPVDX002:无法整齐打印验证错误:null
10:07:24,800 ERROR [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0055: Caught exception during boot: org.jboss.as.controller.persistence.ConfigurationPersistenceException: WFLYCTL0085: Failed to parse configuration
at org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java:143)
at org.jboss.as.server.ServerService.boot(ServerService.java:377)
at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:372)
at java.lang.Thread.run(Unknown Source)
Caused by: javax.xml.stream.XMLStreamException: com.ctc.wstx.exc.WstxParsingException: Received non-all-whitespace CHARACTERS or CDATA event in nextTag().
at [row,col {unknown-source}]: [141,7]
at org.jboss.as.connector.subsystems.datasources.DataSourcesExtension$DataSourceSubsystemParser.readElement(DataSourcesExtension.java:650)
at org.jboss.as.connector.subsystems.datasources.DataSourcesExtension$DataSourceSubsystemParser.readElement(DataSourcesExtension.java:204)
at org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:122)
at org.jboss.staxmapper.XMLExtendedStreamReaderImpl.handleAny(XMLExtendedStreamReaderImpl.java:69)
at org.jboss.as.server.parsing.StandaloneXml_7.parseServerProfile(StandaloneXml_7.java:607)
at org.jboss.as.server.parsing.StandaloneXml_7.readServerElement(StandaloneXml_7.java:240)
at org.jboss.as.server.parsing.StandaloneXml_7.readElement(StandaloneXml_7.java:137)
at org.jboss.as.server.parsing.StandaloneXml.readElement(StandaloneXml.java:117)
at org.jboss.as.server.parsing.StandaloneXml.readElement(StandaloneXml.java:52)
at org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:122)
at org.jboss.staxmapper.XMLMapperImpl.parseDocument(XMLMapperImpl.java:76)
at org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java:126)
... 3 more
Caused by: com.ctc.wstx.exc.WstxParsingException: Received non-all-whitespace CHARACTERS or CDATA event in nextTag().
at [row,col {unknown-source}]: [141,7]
at com.ctc.wstx.sr.StreamScanner.constructWfcException(StreamScanner.java:621)
at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java:491)
at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java:475)
at com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:1224)
at org.jboss.staxmapper.XMLExtendedStreamReaderImpl.nextTag(XMLExtendedStreamReaderImpl.java:152)
at org.jboss.as.connector.subsystems.datasources.DsParser.parseDataSource_4_0(DsParser.java:1927)
at org.jboss.as.connector.subsystems.datasources.DsParser.parseDataSources(DsParser.java:229)
at org.jboss.as.connector.subsystems.datasources.DsParser.parse(DsParser.java:189)
at org.jboss.as.connector.subsystems.datasources.DataSourcesExtension$DataSourceSubsystemParser.readElement(DataSourcesExtension.java:643)
... 14 more 10:07:24,803 FATAL [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0056: Server boot has failed in an unrecoverable manner; exiting. See previous messages for details.
10:07:24,820 INFO [org.jboss.as] (MSC service thread 1-7) WFLYSRV0050: Keycloak 4.4.0.Final (WildFly Core 5.0.0.Final) stopped

  这是standalone.xml的文件配置:

   <datasource jndi-name="java:jboss/datasources/KeycloakDS" pool-name="KeycloakDS" use-java-context="true">
<connection-url>jdbc:mysql://localhost:3306/keycloak?useSSL=false&tcpRcvBuf=102400000</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<driver>mysql</driver>
<security>
<user-name>root</user-name>
<password>root</password>
</security>
<!--增加验证信息 -->
<!-- <validation>
<valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"/>
<background-validation>true</background-validation>
<exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"/>
</validation>
-->
</datasource> <drivers>
<driver name="h2" module="com.h2database.h2">
<xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
</driver>
<driver name="mysql" module="com.mysql">
<!-- <driver-class>com.mysql.jdbc.Driver</driver-class> -->
<xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
</driver>
发现问题:
1.认为是我的url-connection 写的有问题,不断地修改。
2.找到文件夹modules\system\layers\base\com\mysql\main    下的module 和mysql-connector-java.5.1.40jar
不断修改JAR包的版本和modules.xml地配置。
3.询问同事:一开始以为是字符集编码的问题,但是后面发现了at [row,col {unknown-source}]: [141,7]这个地方出现了问题。
从此打开了自己的认知大门:发现了自己一开始的问题所在,而我却忽略他了:
 
在修改standalone.xml时,在edit-plus出现如下页面。
 

问题原因:

从下图可以看到,因为不同编码方式的空格占位符不同,比如在ANSI编码里面,空格占用一个字符 ,但是在UTF-8里面,可能占用的是2个字符。
于是在Edit-plus中编辑的时候,出现以上情况的报错。  从而造成无法解析xml的情况。

解决途径:
1.手敲代码,
2.从其他博客中复制过来的代码,单行复制!单行复制!单行复制!
 
总结:今后从其他博客中复制过来的代码一定要提前检查各种问题,已经有很多次遇到这种情况:复制他人的代码,结果不断报错。   今后复制粘贴的时候要留个心眼。
 
 

Received non-all-whitespace CHARACTERS or CDATA event in nextTag(). ,无法整齐打印验证错误。 解析XML文档出现的问题的更多相关文章

  1. PHP处理XML文档,没有CDATA部分数据处理

    在博客备份时,导出了所有文章,导出是xml文档,文章内容在CDATA部分. 这里介绍下XML中CDATA: 所有 XML 文档中的文本均会被解析器解析.只有 CDATA 区段(CDATA sectio ...

  2. java解析XML之DOM解析和SAX解析(包含CDATA的问题)

    Dom解析功能强大,可增删改查,操作时会将XML文档读到内存,因此适用于小文档: SAX解析是从头到尾逐行逐个元素解析,修改较为不便,但适用于只读的大文档:SAX采用事件驱动的方式解析XML.如同在电 ...

  3. eclipse中show whitespace characters显示代码空格,TAB,回车 导致代码乱恶心

    Eclipse中show whitespace characters显示回车.空格符. 取消此功能的第二种方式:

  4. Atitit vod click event design flow  视频点播系统点击事件文档

    Atitit vod click event design flow  视频点播系统点击事件文档 重构规划1 Click cate1 Click  mov4 重构规划 事件注册,与事件分发管理器分开 ...

  5. libevent学习文档(三)working with event

    Events have similar lifecycles. Once you call a Libevent function to set up an event and associate i ...

  6. 解决Python2.7的UnicodeEncodeError:'ascii' codec can't encode characters in position 0-78: ordinal not in range(128)异常错误

    解决Python2.7的UnicodeEncodeError: 'ascii' codec can't encode异常错误 大家都知道,在使用python进行网络爬虫时,最头疼的就是转码问题,下面是 ...

  7. JAVA JDOM解析XML 带CDATA数据

    import java.io.StringReader;import java.util.*; import org.jdom.Document;import org.jdom.Element;imp ...

  8. Java解析XML字符串,取出其中<aaaa><![CDATA[(XXX)]]></aaa>里面的XXX值,也可以使用xml解析的其他方式,这是最简单的字符串解析

    直接贴一段业务代码,这段代码是解析请求返回的xml格式字符串,为了取出其中的值便于下一步的使用. @RequestMapping(value="/search",produces ...

  9. <!CDATA[]]用法详解

    所有 XML 文档中的文本均会被解析器解析. 只有 CDATA 区段(CDATA section)中的文本会被解析器忽略. PCDATA PCDATA 指的是被解析的字符数据(Parsed Chara ...

随机推荐

  1. 【洛谷】【动态规划(二维)】P1508 Likecloud-吃、吃、吃

    [题目描述:] 正处在某一特定时期之中的李大水牛由于消化系统比较发达,最近一直处在饥饿的状态中.某日上课,正当他饿得头昏眼花之时,眼前突然闪现出了一个n*m(n and m<=200)的矩型的巨 ...

  2. 利用Python实现12306爬虫--查票

    在上一篇文章(http://www.cnblogs.com/fangtaoa/p/8321449.html)中,我们实现了12306爬虫的登录功能,接下来,我们就来实现查票的功能. 其实实现查票的功能 ...

  3. Windows7下配置JMeter安装环境

    JMeter配置安装 1.安装JDK环境  下载地址:http://www.Oracle.com/technetwork/Java/javase/downloads/jdk8-downloads-21 ...

  4. autogen.sh脚本执行报错问题解决(针对DOMJudge平台搭建)

    错误信息:./autogen.sh: 9: ./autogen.sh: aclocal: not found 解决办法: $ sudo apt-get install automake $ sudo ...

  5. Python内置函数locals和globals

    globals()和locals() locals()实际上没有返回局部名字空间,它返回的是一个拷贝.所以对它进行修改,修改的是拷贝,而对实际的局部名字空间中的变量值并无影响. globals()返回 ...

  6. PAT乙级1002

    1002 写出这个数 (20 分)   读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n 小于 ...

  7. Struts2知识点小结(一)

    一.struts2简介 1.Struts2是一个基于MVC设计模式的Web应用框架        只要是web层框架 一般就会遵守MVC设计模式     2.struts2与struts1的关系?  ...

  8. Flume的一些报错问题解决(持续更新中)

    严谨转载--否则追究法律责任 作者----王加鸿                                                   ----------bug 1---------- ...

  9. 利用phar实行php反序列化命令执行(测试环境复现)

    测试环境的过程大概是:构成出来的phar文件,并修改为任意后缀上传至服务器.通过index.php中存在的文件操作函数参数可控,把参数设置为 phar://上传文件名 即可导致命令执行. index. ...

  10. QuestaSim 中文注释乱码

    在QuestaSim按如下顺序打开对应窗口, Tools -> Edit Preferences -> By Name -> Find 输入 encoding搜索对应项,将其valu ...