Asp Forum
Home
|
Login
|
Register
|
Search
Forums
>
comp.lang.ruby
REXML formatting help due to changes from 1.8.4 to 1.8.6
Wes Gamble
3/12/2008 9:17:00 PM
Apparently there was an overhaul of REXML formatting between Ruby 1.8.4
and 1.8.6.
The new formatting of XML that I'm generating with REXML is not being
consumed correctly by the consumer anymore.
Elements containing values were written out like this in 1.8.4:
<concurrency>1008</concurrency>
Now they are written out like this:
<concurrency>
1008
</concurrency>
How can I get the old behavior back? I see some mention of formatters -
so any hints on a good reference for how to use the formatters would be
welcome.
Thanks,
Wes
--
Posted via
http://www.ruby-...
.
1 Answer
Wes Gamble
3/12/2008 9:30:00 PM
0
(I see now there's been a lot of discussion about this ;])
SOLUTION:
I changed the following method (where @document is a XML doc. created by
REXML):
def write()
File.open("#{@file_path}", 'w') do |f|
@document.write(f, 0)
end
end
to:
def write()
formatter = REXML::Formatters::Default.new
File.open("#{@file_path}", 'w') do |f|
formatter.write(@document, f)
end
end
after making sure to require 'rexml/formatters/default' and I'm back in
business.
I can imagine that a lot of people have run into this, and given that
we're probably generating XML to communicate information to another
system, I'm sure it has spawned some consternation. Backwards
compatibility can be a tricky thing :).
Hope this helps,
Wes
--
Posted via
http://www.ruby-...
.
Servizio di avviso nuovi messaggi
Ricevi direttamente nella tua mail i nuovi messaggi per
REXML formatting help due to changes from 1.8.4 to 1.8.6
Inserendo la tua e-mail nella casella sotto, riceverai un avviso tramite posta elettronica ogni volta che il motore di ricerca troverà un nuovo messaggio per te
Il servizio è completamente GRATUITO!
x
Login to ForumsZone
Login with Google
Login with E-Mail & Password