Hi Oliver:

Thank you for clarifying. Incidentally, if you go to the Commons Configuration 
home page under Documentation, click 2.1.1 > User’s Guide > Declaring and 
Creating Beans > An Example or click 
http://commons.apache.org/proper/commons-configuration/userguide/howto_beans.html#An_Example.
 The Java code example uses the dot notation:  

        BeanDeclaration decl = new XMLBeanDeclaration(config, 
“gui.windowManager”);

I’d recommend adding a note to the documentation that states the default 
expression engine is being used in the example. I think I probably cut and 
paste an example that was using the XML path expression engine instead.

Thanks again,

John

> On Oct 28, 2017, at 11:57 AM, Oliver Heger <oliver.he...@oliver-heger.de> 
> wrote:
> 
> Hello,
> 
> Am 27.10.2017 um 22:26 schrieb John Boyer:
>> Hello:
>> 
>> I’m working on migrating my codebase from Commons Configuration 1.x to 2.x. 
>> However, in version 2, I receive an error indicating that the key I used in 
>> 1.x is invalid:
>> 
>>      org.apache.commons.configuration2.ex.ConfigurationRuntimeException: 
>> Passed in key must select exactly one node (found 0): ios.invitation
>> 
>> 
>> —————————————————————————————————————————————————————-
>> The string dump of my XMLConfiguration appears as follows:
>> 
>> 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=donotre...@example.com
>> ios/invitation/@contentType=text/plain
>> ios/invitation/@senderLastName=Skedi
> 
> From this dump it looks as if the configuration is using an
> XPathExpressionEngine. Note that the slash is used as separator for
> property keys.
> 
>> 
>> 
>> —————————————————————————————————————————————————————-
>> The XML file is:
>> 
>> <?xml version="1.0" encoding="UTF-8"?>
>> <config>
>>      <ios>
>>              <!-- recipientFullName, toEmailAddress, and body need to be set 
>> -->
>>              <invitation
>>                      
>> config-class=“com.example.email.DefaultEventEmailFormatter”
>>                      contentType="text/plain"
>>                      fromEmailAddress=“donotre...@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>
>> 
>> —————————————————————————————————————————————————————-
>> The Java code snippet:
>> 
>> XMLConfiguration xmlConfig = builder.getConfiguration();
>> log.info(ConfigurationUtils.toString(xmlConfig));
>> 
>> BeanDeclaration decl = new XMLBeanDeclaration(xmlConfig, 
>> “ios.invitation”);//where `ios.invitation` is the key
> 
> They key you pass to the bean declaration is expressed in terms of the
> default expression engine. To be compliant with the configuration, you
> should use the key "ios/invitation".
> 
> I do not know why the problem occurs after you switch to Configuration
> 2.x. But the cause seems to be that the key you use is actually wrong
> because it cannot be interpreted correctly by the expression engine.
> 
> Oliver
> 
>> 
>> —————————————————————————————————————————————————————-
>> 
>> Can anyone help me to resolve this problem?
>> 
>> Thank you for your time in advance.
>> 
>> Regards,
>> 
>> John Boyer
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
>> For additional commands, e-mail: user-h...@commons.apache.org
>> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
> For additional commands, e-mail: user-h...@commons.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
For additional commands, e-mail: user-h...@commons.apache.org

Reply via email to