Почему мой XMLBeanDeclaration является недопустимым после перехода на Commons Configuration 2.x?

Я работаю над переносом моей кодовой базы из конфигурации Commons 1.x в 2.x. Однако в версии 2 я получаю сообщение об ошибке, указывающее, что ключ, который я использовал в 1.x, недействителен:

org.apache.commons.configuration2.ex.ConfigurationRuntimeException: Passed in key must select exactly one node (found 0): ios.invitation

Струнный дамп моего XMLConfiguration выглядит следующим образом:

ios/invitation/@config-class=com.example.email.DefaultEventEmailFormatter
ios/invitation/@fileName=request-cancel
ios/invitation/@subject=Itty-Bitty Skedi | Invitation
ios/invitation/@name=Invitation
ios/invitation/@senderFirstName=Itty-Bitty
ios/invitation/@shortDescription=You have a new notification waiting for you in the Skedi app.
ios/invitation/@fromEmailAddress=donotreply@example.com
ios/invitation/@contentType=text/plain
ios/invitation/@senderLastName=Skedi

XML-файл:

<?xml version="1.0" encoding="UTF-8"?>
<config>
    <ios>
        <invitation
            config-class=“com.example.email.DefaultEventEmailFormatter”
            contentType="text/plain"
            fromEmailAddress=“donotreply@example.com”
            senderFirstName="Itty-Bitty"
            senderLastName="Skedi"
            subject="Itty-Bitty Skedi | Invitation"
            shortDescription="You have a new notification waiting for you in the Skedi app."
            name="Invitation"
            fileName="request-cancel"/>
    </ios>
</config>

Фрагмент кода Java:

XMLConfiguration xmlConfig = builder.getConfiguration();
log.info(ConfigurationUtils.toString(xmlConfig));

BeanDeclaration decl = new XMLBeanDeclaration(xmlConfig, “ios.invitation”);//where `ios.invitation` is the key

Может ли кто-нибудь помочь мне решить эту проблему?

Спасибо за ваше время!

0 ответов

Другие вопросы по тегам