also, my particular case is with asp content; but i am sure that the
problem can be reproduced with any web stack or even a static text
file with these characters.

On Apr 13, 6:52 pm, buddycat <[email protected]> wrote:
> so i use lib/asp.rb module to get legacy asp content from internal
> win2k/iis5/asp (classic not .net) servers as a mixin and require it in
> my application_controller.rb as i have many asp pages. i do it this
> way because it gives me a smooth incremental upgrade path to rails
> from asp by replacing page for page as we write a better rails
> replacement. this way my routes are all rails and i just call
> asp_get_content when i have an asp page to wrap.
>
> controller:
> def my_legacy_page
>   asp_get_content
> end
>
> lib/asp.rb
> module asp
>   def asp_get_content
>
>   �...@asp_response = Net::HTTP.start(host, port) {|x|
>       x.read_timeout = 1200
>       x.send_request(method, path, data, headers)
>     }
>
>     # return false on redirects so we can use custom renders like so:
>     # render :foo => :bar if asp_get_content while still allowing just
>     # asp_get_content without anything else for standard stuff
>     case @asp_response
>     when Net::HTTPRedirection
>         redirect_to "#...@asp_response['location']}"
>         false
>     else
>        true
>     end
> end
>
> view:
> <%= @asp_response.body %>
>
> to reproduce the issue, just add
>
> <%= chr(150) %> to the asp page. rails will choke with invalid byte
> sequence utf-8 as soon as the response.rb tries to parse
> @asp_response.body. see the above comments for the stack trace.
>
> this is just my particular situation. i suspect you can add any high,
> non-standard ascii code that windows likes like ascii 128-159. my test
> case is ascii 150 that will reliably reproduce the issue. my point is
> not with encoding per se, i just think that rails should be a bit more
> fault tolerant around encodings as interop makes it almost a certainty
> that we will pull incontent with bad encodings just as we pull in
> malformed html. we cope with the latter well but now need to do so
> with the former. imho.
>
> thanks...gg
>
> On Apr 13, 5:05 am, Conrad Taylor <[email protected]> wrote:
>
> > 2009/4/13 buddycat <[email protected]>
>
> > > hector,
>
> > > further update:
>
> > > i was able to set both my internal and external encoding thanks to
> > > hongli lai at phusion passenger. he helped me with a wrapper for my
> > > local ruby that uses the encoding option. not suggesting that this is
> > > his preferred method though, but you don't seem to be able to pass
> > > ruby options any other way that i'm aware of in passenger's apache
> > > config.
>
> > > /usr/local/ruby1.9/bin/ruby_wrapper:
> > > #!/bin/bash
> > > exec /usr/local/ruby1.9/bin/ruby -E utf-8:utf-8 "$@"
>
> > > then in apache2.conf:
> > > PassengerRuby /usr/local/ruby1.9/bin/ruby_wrapper
>
> > > restart apache.
>
> > > in a controller:
> > > raise "#{Encoding.default_internal} #{Encoding.default_internal}"
>
> > > results in:
> > > utf-8 utf-8
>
> > > so all is good. for my app anyway. irb and script/console is a pain.
>
> > > unfortunately, after all this, my asp pages still get ascii encoded
> > > when brought in by net::http (after adding all the asp settings i can
> > > to convince it to use utf). also, more unfortunately, your assertion
> > > that if i have the default encodings set right (particularly
> > > default_internal which i do now), that it will silently and fautlessly
> > > convert my ascii page without error. no joy. got same utf encoding
> > > error that i started with.
>
> > > so...guess i am back to doing explicit encoding like you suggested or
> > > going back to iconv.
>
> > > all in all i have to say that ruby1.9 and rails2.3 and encoding and
> > > irb and compiling your own ruby and... are still very rough.
>
> > > ...gg
>
> > Do you have a test case that I can reproduce the issue that you're seeing?
>
> > Thanks,
>
> > -Conrad
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to