gpt4 book ai didi

java - 由于意外元素 "pool",JBoss 7.1.1 未启动

转载 作者:搜寻专家 更新时间:2023-10-31 20:21:02 26 4
gpt4 key购买 nike

我在添加池元素时收到以下错误消息:

Caused by: org.jboss.as.connector.util.ParserException: IJ010061: Unexpected element: pool

如果我删除 pool 元素,它就会工作。我检查了 docs 文件夹中的 XSD,我很确定这是对的吗?为什么会失败?

    <subsystem xmlns="urn:jboss:domain:resource-adapters:1.0">
<resource-adapters>
<resource-adapter>
<archive>
jackrabbit-jca-2.6.2.rar
</archive>
<transaction-support>XATransaction</transaction-support>
<connection-definitions>
<connection-definition class-name="org.apache.jackrabbit.jca.JCAManagedConnectionFactory" jndi-name="java:/jca/JcrRepository" enabled="true" use-java-context="true" pool-name="jackrabbit-jca-2_6_2_rar-Pool" use-ccm="true">
<pool>
<min-pool-size>1</min-pool-size>
<max-pool-size>4</max-pool-size>
</pool>
</connection-definition>
</connection-definitions>
</resource-adapter>
</resource-adapters>
</subsystem>

最佳答案

这不是错误,这是一个功能;)

...

让我们稍微深入一下负责任的实现:

当您查看负责解析器的源代码时,您可以看到以下内容

     case TRANSACTION_SUPPORT: {
if (txSupportMatched) {
throw new ParserException(bundle.unexpectedElement(TRANSACTIONSUPPORT.getXmlName()));
}
String value = rawElementText(reader);
TRANSACTIONSUPPORT.parseAndSetParameter(value, operation, reader);
isXa = value != null && TransactionSupportEnum.valueOf(value) == TransactionSupportEnum.XATransaction;
txSupportMatched = true;
break;
}

这就是resource-adapter-tag的解析。如果您编写 XATransaction 关键字,则(默认情况下为 false)isXa-var 切换为 true。

现在 connection-definition-tag 的解析器需要一个 xa-pool-tag

           case XA_POOL: {
if (! isXa) throw new ParserException(bundle.unexpectedElement(CommonConnDef.Tag.XA_POOL.name()));
if (poolDefined)
throw new ParserException(bundle.multiplePools());
parseXaPool(reader, connectionDefinitionNode);
poolDefined = true;
break;
}
case POOL: {
if (isXa) throw new ParserException(bundle.unexpectedElement(CommonConnDef.Tag.POOL.name()));
if (poolDefined)
throw new ParserException(bundle.multiplePools());
parsePool(reader, connectionDefinitionNode);
poolDefined = true;
break;
}

根据 XATransaction 定义,ironjacamar-impl 创建不同的池实现。并且模式的 xa-poolType 允许比标准池类型更多的配置。

但我认为这应该记录在某处,至少在 schema.xsd 中

关于java - 由于意外元素 "pool",JBoss 7.1.1 未启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17910832/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com