> Bond - James D. wrote:
> > Hopefully this is a simple one.  I have a semi-non-standard xml file that 
> > has attributes in the Top-level element and I'm not able to set the 
> > attributes on it.  How would I do that with XMLConfiguration?  I tried the 
> > following but it didn't work:
> > 
> > xmlCfg.setProperty("[EMAIL PROTECTED]", ""+System.currentTimeMillis());
> 
> Hm, your code should work. I added the following unit test, which runs 
> successful:
> 
>      /**
>       * Tests setting an attribute on the root element.
>       */
>      public void testSetRootAttribute() throws ConfigurationException
>      {
>          conf.setProperty("[EMAIL PROTECTED]", "true");
>          assertEquals("Root attribute not set", "true", conf
>                  .getString("[EMAIL PROTECTED]"));
>          conf.save(testSaveConf);
>          XMLConfiguration checkConf = new XMLConfiguration();
>          checkConf.setFile(testSaveConf);
>          assertTrue("Attribute not found after save", checkConf
>                  .containsKey("[EMAIL PROTECTED]"));
>      }
> 
> (where conf is a XMLConfiguration). As you can see, I also only specify 
> the attribute part of the key.
> 
> Can you double-check with this code? Or can you provide an example code 
> fragment, which does not work?
> 
> Oliver

Ok, I can't get it to work ... here's my code:

String xmlTemplate = "c:\\temp\\ordermessage.xml";
String newXmlTemplate = "c:\\temp\\changedordermessage.xml";

XMLConfiguration xmlCfg = new XMLConfiguration(xmlTemplate);
xmlCfg.setValidating(false);
xmlCfg.setEncoding("UTF-8");
xmlCfg.setProperty("[EMAIL PROTECTED]", ""+System.currentTimeMillis());
xmlCfg.setProperty("[EMAIL PROTECTED]", new Date().toString());
FileWriter outter = new FileWriter(newXmlTemplate);
xmlCfg.save(outter);
outter.close();
xmlCfg.clear();

And here is the XML file:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cXML SYSTEM "http://xml.cXML.org/schemas/cXML/1.2.008/cXML.dtd";>
<cXML payloadID="29066032971189013758490" timestamp="2007-09-12T09:34:16-05:00">
  <Header>
    <To>
      <Credential domain="testID">
        <Identity>12345</Identity>
      </Credential>
    </To>
  </Header>
</cXML>




-- 
James Dalrymple


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to