2013-01-17 15 views
13

Mam plik konfiguracyjny XML podobny do tego:Apache Commons XMLConfiguration - jak pobrać listę obiektów w danym węźle?

<?xml version="1.0" encoding="ISO-8859-1" ?> 
<config> 
    <mainServerHostname>MainServer</mainServerHostname> 
    <failoverServers> 
     <server> 
      <ipAddress>192.168.0.5</ipAddress> 
      <priority>1</priority> 
     </server> 
     <server> 
      <ipAddress>192.168.0.6</ipAddress> 
      <priority>2</priority> 
     </server> 
    </failoverServers> 
</config> 

Teraz wiem, że za pomocą następującego kodu (po skonfigurowaniu obiektu XMLConfiguration i nazywając go config):

config.getList("failoverServers.server.ipAddress"); 

I można uzyskać listę wszystkich adresów IP. Jest to przydatne, ale co będzie jeszcze bardziej przydatny byłby gdybym mógł zrobić coś takiego:

config.getList("failoverServers.server"); 

i uzyskać listę obiektów, z których każdy ma IPaddress i priorytet. O ile mogę powiedzieć, nie ma sposobu, aby to zrobić. Czy ktoś ma jakieś pomysły na temat tego, w jaki sposób mogę osiągnąć ten typ funkcjonalności? Byłbym nawet całkowicie gotowy do zdefiniowania struktur danych odpowiadających strukturze XML, do której Java mogłaby zmapować dane, gdyby to ułatwiło sprawę (w rzeczywistości prawdopodobnie byłoby jeszcze lepiej). Dzięki za pomoc!

Odpowiedz

Powiązane problemy