标签: xerces

XIncludeAwareParserConfiguration与XMLParserConfiguration不兼容

在AIX平台上将ear文件部署到WLS 10.3时,我收到此错误.同样的耳朵在Windows/Linux平台上运行良好.

Caused by: java.lang.ClassCastException: org.apache.xerces.parsers.XIncludeAwareParserConfiguration incompatible with org.apache.xerces.xni.parser.XMLParserConfiguration
    at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
    at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(Unknown Source)
    at weblogic.xml.jaxp.WebLogicDocumentBuilderFactory.newDocumentBuilder(WebLogicDocumentBuilderFactory.java:140)
    at com.bea.security.xacml.policy.PolicyUtils.getRootNode(PolicyUtils.java:54)
    at com.bea.security.xacml.policy.PolicyUtils.read(PolicyUtils.java:86)
    at com.bea.security.providers.xacml.store.BasePolicyStore.getAbstractPolicy(BasePolicyStore.java:1251)
    at com.bea.security.providers.xacml.store.BasePolicyStore.readPolicy(BasePolicyStore.java:1231)
    at com.bea.security.providers.xacml.store.BasePolicyStore.readPolicy(BasePolicyStore.java:1114)
    at com.bea.security.providers.xacml.entitlement.PolicyManager.listPolicies(PolicyManager.java:747)
    at weblogic.security.providers.xacml.DeployableAuthorizationProviderV2Helper.startDeployPolicies(DeployableAuthorizationProviderV2Helper.java:90)
    at weblogic.security.providers.xacml.authorization.XACMLAuthorizationProviderImpl.startDeployPolicies(XACMLAuthorizationProviderImpl.java:269)
    at com.bea.common.security.internal.legacy.service.PolicyDeployerProviderImpl$V2Adapter.startDeployPolicies(PolicyDeployerProviderImpl.java:69)
    at com.bea.common.security.internal.service.PolicyDeploymentServiceImpl$DeploymentHandlerImpl.<init>(PolicyDeploymentServiceImpl.java:143)
    at com.bea.common.security.internal.service.PolicyDeploymentServiceImpl$DeploymentHandlerImpl.<init>(PolicyDeploymentServiceImpl.java:129)
    at com.bea.common.security.internal.service.PolicyDeploymentServiceImpl$ServiceImpl.startDeployPolicies(PolicyDeploymentServiceImpl.java:97)
    at weblogic.security.service.WLSPolicyDeploymentServiceWrapper$DeploymentHandlerImpl.<init>(WLSPolicyDeploymentServiceWrapper.java:70)
    at weblogic.security.service.WLSPolicyDeploymentServiceWrapper$DeploymentHandlerImpl.<init>(WLSPolicyDeploymentServiceWrapper.java:60)
    at weblogic.security.service.WLSPolicyDeploymentServiceWrapper.startDeployPolicies(WLSPolicyDeploymentServiceWrapper.java:40)
    at weblogic.security.service.AuthorizationManager.startDeployPolicies(AuthorizationManager.java:489)
    at weblogic.servlet.security.internal.WebAppSecurityWLS.<init>(WebAppSecurityWLS.java:72)
    at weblogic.servlet.security.internal.ServletSecurityManager.<init>(ServletSecurityManager.java:39)
    at weblogic.servlet.internal.WebAppServletContext.<init>(WebAppServletContext.java:416)
    at weblogic.servlet.internal.WebAppServletContext.<init>(WebAppServletContext.java:464)
    at weblogic.servlet.internal.HttpServer.loadWebApp(HttpServer.java:414)
    at weblogic.servlet.internal.WebAppModule.registerWebApp(WebAppModule.java:901)
    at weblogic.servlet.internal.WebAppModule.prepare(WebAppModule.java:345)
Run Code Online (Sandbox Code Playgroud)

java parsing xerces

6
推荐指数
1
解决办法
3万
查看次数

未找到 Java xerces DocumentBuilderFactoryimpl - 怎么办?

我收到这条消息:

javax.xml.parsers.FactoryConfigurationError:提供程序org.apache.xerces.jaxp.DocumentBuilderFactoryImp

但我似乎无法解决问题。我用谷歌搜索过,但找不到任何好的解决方案。

有谁知道可能出了什么问题吗?也许如何解决它:)

java jboss xerces

6
推荐指数
1
解决办法
1万
查看次数

Java 6中的xerces序列化

在Java 6中,整个xerces XML解析器/序列化器实现现在位于Java运行时(rt.jar)中.这些包已经在com.sun.*命名空间下移动,这使它们不受限制,以便在客户端代码中显式引用.使用解析器时这不是问题,解析器是通过javax API定义的工厂实例化的.

但是,我们的代码也使用xerces序列化(org.apache.xml.serialize.*).AFAICT,没有用于创建Serializer和OutputFormat实例的javax.xml API定义工厂.这似乎意味着获得一个的唯一方法是显式调用com.sun.org.apache.xml.serialize.*API.

我在javax.xml.stream中找到了序列化类,但它们似乎没有像xerces OutputFormat类那样提供任何输出格式化控件.

题:

是否有访问了Xerces序列化功能(其中一种方式通过使用javax标准API在rt.jar中),而不包括xerces.jar的,也没有明确的实例化的com.sun.*类?

如果没有,是否有符合javax API的方式来实现相同的效果?

java xml-serialization xerces

6
推荐指数
1
解决办法
4737
查看次数

Delphi XE中没有更多xercesxmldom单元?

我想知道该xercesxmldom单元作为XML DOM实现之一发生了什么.
它似乎在Delphi XE中消失了.
为什么?

(我搜索了文档;找不到关于xercesxmldom消失的任何相关信息).

编辑:这些是我存档的来源:

R:\>dir /s /b xercesxmldom.pas
R:\D2006-Enterprise-D10-BDS-4.0\source\Win32\xml\xercesxmldom.pas
R:\D2007-Enterprise-D11-RadStudio-5.0\source\Win32\xml\xercesxmldom.pas
R:\D2009-Enterprise-D12-RadStudio-6.0\source\Win32\xml\xercesxmldom.pas
R:\D2010-Enterprise-D14-RadStudio-7.0\source\Win32\xml\xercesxmldom.pas
R:\D7.01.Architect\Source\Xml\xercesxmldom.pas
Run Code Online (Sandbox Code Playgroud)

R:\DXE-Enterprise-D15-RadStudio-8.0源树中没有任何内容......

--jeroen

delphi xerces xmldom delphi-xe

6
推荐指数
1
解决办法
1609
查看次数

我有UTF-8 - 但仍然得到"1字节UTF-8序列的无效字节1"

我动态创建一个XML String(不读取文件).然后我使用Cocoon 3通过FOP将其转换为PDF.在中间某处的Xerces运行.当我使用硬编码的东西时,一切正常.一旦我将德语变音符号放入数据库并使用该数据丰富我的xml,我得到:

Caused by: org.apache.cocoon.pipeline.ProcessingException: Can't parse the XML string.
at org.apache.cocoon.sax.component.XMLGenerator$StringGenerator.execute(XMLGenerator.java:326)
at org.apache.cocoon.sax.component.XMLGenerator.execute(XMLGenerator.java:104)
at org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:146)
at org.apache.cocoon.pipeline.AbstractPipeline.execute(AbstractPipeline.java:76)
at de.grobmeier.tab.webapp.modules.documents.InvoicePipeline.generateInvoice(InvoicePipeline.java:74)
... 87 more

Caused by: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 1 of 1-byte UTF-8 sequence.
    at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:684)
    at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:554)
Run Code Online (Sandbox Code Playgroud)

然后我调试了我的应用程序并发现,我的"Ä"(数据库中出现)的字节值为196,即十六进制的C4.这就是我所期望的:http://www.utf8-zeichentabelle.de/

我不知道为什么我的代码失败了.

然后我尝试手动添加BOM,如下所示:

byte[] bom = new byte[3];
bom[0] = (byte) 0xEF;
bom[1] = (byte) 0xBB;
bom[2] = (byte) 0xBF;
String myString = new String(bom) + inputString;
Run Code Online (Sandbox Code Playgroud)

我知道这不是很好,但我尝试了 - 当然它失败了.我试图在前面添加一个xml标头:

<?xml version="1.0" encoding="UTF-8"?>
Run Code Online (Sandbox Code Playgroud)

哪个也失败了.然后我把它结合起来.失败.

毕竟我尝试过这样的事情:

xmlInput = new String(xmlInput.getBytes("UTF8"), …
Run Code Online (Sandbox Code Playgroud)

java xml encoding utf-8 xerces

6
推荐指数
1
解决办法
3万
查看次数

XMLSchema的解决方法不支持maxOccurs大于5000

我的问题是解析具有maxOccurs大于5000(但不是unbounded)的元素的XSD架构.

这实际上是Xerces(我正在使用的版本2.9.1)或JAXP中的一个已知问题,如下所述:http://bugs.sun.com/view_bug.do;jsessionid=85335466c2c1fc52f0245d20b2e?bug_id= 4990915

我已经知道,如果我将XSD中的maxOccurs数字从大于5000的数字更改为unbounded一切正常.遗憾的是,在我的情况下,这不是一个选项(我不能插入XSD文件).

我的问题是:

  • 有人知道Xerces中有关此问题的其他一些解决方法吗?要么
  • 有人可以推荐另一个没有此限制的XML解析器吗?

谢谢!

java xsd jaxp xerces xml-parsing

6
推荐指数
3
解决办法
9330
查看次数

WAS 8.5: java.lang.ClassCastException: org.apache.xerces.jaxp.SAXParserFactoryImpl incompatible with javax.xml.parsers.SAXParserFactory

I am deploying a J2EE web application in Websphere Application Server 8.5.

The web application has a shared library with all the third party libraries. All the internally coded libraries are inside the WEB-INF/lib folder.

The problem is that in only some jsps WAS it is throwing the following exception.

我认为它与xercesImpl-2.8.1.jar有关但我不明白为什么它会抛出这个异常以及它为什么只抛出一些页面.

在tomcat它完美地工作.

java.lang.ClassCastException: org.apache.xerces.jaxp.SAXParserFactoryImpl incompatible with javax.xml.parsers.SAXParserFactory
    at javax.xml.parsers.SAXParserFactory.newInstance(Unknown Source)
    at org.apache.taglibs.standard.tlv.JstlBaseTLV.validate(JstlBaseTLV.java:152)
    at org.apache.taglibs.standard.tlv.JstlCoreTLV.validate(JstlCoreTLV.java:96)
    at com.ibm.ws.jsp.translator.visitor.validator.ValidateVisitor.validateTagLib(ValidateVisitor.java:1129)
    at com.ibm.ws.jsp.translator.visitor.validator.ValidateVisitor.visitJspRootStart(ValidateVisitor.java:491)
    at com.ibm.ws.jsp.translator.visitor.JspVisitor.processJspElement(JspVisitor.java:233)
    at com.ibm.ws.jsp.translator.visitor.JspVisitor.visit(JspVisitor.java:216)
    at com.ibm.ws.jsp.translator.JspTranslator.processVisitors(JspTranslator.java:127)
    at com.ibm.ws.jsp.translator.utils.JspTranslatorUtil.translateJsp(JspTranslatorUtil.java:254)
    at com.ibm.ws.jsp.translator.utils.JspTranslatorUtil.translateJspAndCompile(JspTranslatorUtil.java:121)
    at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.translateJsp(AbstractJSPExtensionServletWrapper.java:535) …
Run Code Online (Sandbox Code Playgroud)

java websphere xerces classloader

6
推荐指数
1
解决办法
2万
查看次数

导入Xerces库时无法构建应用程序(退出值1)

当我在Xerces库中导入时,我似乎无法构建我的应用程序.由于之前的问题,我已经在使用multidex,因此我知道这一切都已正确设置.

我花了几天时间在线查看并尝试各种版本的Xerces并调整到我的build.gradle但无法解决问题.我已经尝试过清理重建,重新设置Android Studio /我的PC,使用jar直接编译,现在正式出于想法.

下面是我的build.gradle设置:

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        applicationId "#packageid#"
        minSdkVersion 18
        targetSdkVersion 23
        versionCode 1
        versionName "0.8"
        multiDexEnabled true
    }

    buildTypes {
        debug {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
//    compile fileTree(include: ['*.jar'], dir: 'libs')
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:multidex:1.0.1'
    compile 'com.google.android.gms:play-services:8.4.0'
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:support-v4:23.1.1'
    compile 'com.android.support:design:23.1.1'
    compile 'me.dm7.barcodescanner:zbar:1.8.4'
    compile project(':rangebar-1.3')
    compile('com.crashlytics.sdk.android:crashlytics:2.5.5@aar') {
        transitive = true;
    }
    compile 'com.batch.android:batch-sdk:1.5'
    compile 'xerces:xercesImpl:2.11.0' …
Run Code Online (Sandbox Code Playgroud)

java xerces gradle xml-parsing android-studio

6
推荐指数
1
解决办法
1343
查看次数

xi:包含在jar文件中的xml文件中不能在WildFly中工作

这是场景:

我捆绑了.xml应用程序在.jar文件中运行所需的几个(有些配置)文件.jar文件具有以下结构:

settings-1.0.0.jar
? resources/
  ? 1.xml
  ? 2.xml
  ? 3.xml
? META-INF/
  ? MANIFEST.MF
Run Code Online (Sandbox Code Playgroud)

1.xml 具有以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<document xmlns:xi="http://www.w3.org/2001/XInclude">
    <!-- Include 2 -->
    <xi:include
        href="resource:resources/2.xml" />
    <!-- Include 3 -->
    <xi:include
        href="resource:resources/3.xml" />
    <!--
    <map>
    </map>
    -->
</document>
Run Code Online (Sandbox Code Playgroud)

基于这篇文章.当尝试访问这些包含(成功部署我的应用程序后)后,我收到以下错误:

Caused by: org.xml.sax.SAXParseException; lineNumber: 5; columnNumber: 43; An 'include' failed, and no 'fallback' element was found.
    at org.apache.xerces.parsers.DOMParser.parse(DOMParser.java:245)
    at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:298)
    at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:121)
    at org.zcore.dkp.backend.mapper.MappingParser.parse(MappingParser.java:60)
    ... 327 more
Run Code Online (Sandbox Code Playgroud)

我尝试了(&错误)所有可以考虑的选项.xi:include.xml文件 …

java xml module xerces wildfly

6
推荐指数
1
解决办法
507
查看次数

Xerces 中缺少 JAXP 1.5 支持 - 可能的解决方法?

我遇到了 Xerces 库的一些问题,我依赖的第三方库使用了它。

Xerces 尚不支持 JAXP 1.5,JAXP 1.5 包含在最新版本的 JDK 1.7 和 JDK 8 中。如果将 Xerces 用作 XML 解析器,这会导致一些问题,当系统知道多个 XML 解析器时可能会发生这种情况。删除xercesImpl-v2.9.0.jar立即解决了问题,但随后第 3 方库不再工作。

我可以看到该问题的两种解决方案:

  1. 似乎实际使用的 Xerces 库中唯一的位是org.apache.xerces.util.XMLCatalogResolver, 在CustomResolver.java. 目录解析器是否有其他选项而不是 Xerces 选项?

  2. 另一种选择似乎是在 JVM 启动时为 XML 解析显式设置系统属性。这样 JVM 就可以告诉要使用哪个 XML 解析器,并且它不会再选择 Xerces。

我发现了以下三个属性:

 -Djavax.xml.transform.TransformerFactory
 -Djavax.xml.parsers.SAXParserFactory
 -Djavax.xml.parsers.DocumentBuilderFactory
Run Code Online (Sandbox Code Playgroud)

不过,这会导致两个问题:

  • 这三个属性是唯一需要设置以便将 JVM 重定向到特定 XML 解析器的系统属性吗?
  • 明确设置属性会产生任何副作用吗?

java xml jaxp xerces

5
推荐指数
1
解决办法
1325
查看次数