Hi,
the problem occurs if you have columns with byte data.
to exclude them of the serialization is used
def serializable_hash(options=nil)
options ||= {}
options.merge!( :except=> [:MY_BYTEDATA_COLUMN] ) if
options[:except].blank?
super(options)
end
dc dieci wrote in post #1010652:> Hi guys,
> I have a simple controller
>
> def gmap
> @intentsearches = Intentsearch.all
> logger.info @intentsearches
> respond_to do |format|
> format.html {render :gmap}
> format.xml {render :xml => @intentsearches }
> format.json { render :json => @intentsearches }
> end
> end
>
>
> and want a json response, but i do get the following error
>
>
> Completed 500 Internal Server Error in 107ms
>
> ArgumentError (redundant UTF-8 sequence):
> app/controllers/intentsearches_controller.rb:103:in `gmap''
> app/controllers/intentsearches_controller.rb:100:in `gmap''
>
> Rendered
>
/usr/lib/ruby/gems/1.8/gems/actionpack-3.0.9/lib/action_dispatch/middleware/templates/rescues/_trace.erb> (1.0ms)
> Rendered
>
/usr/lib/ruby/gems/1.8/gems/actionpack-3.0.9/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb> (36.4ms)
> Rendered
>
/usr/lib/ruby/gems/1.8/gems/actionpack-3.0.9/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb> within rescues/layout (40.7ms)
>
>
> I am sending a http request with only one header param
> Accept : application/json
>
>
> Does anyone know about this issue?
>
> Best,
>
> philip
>
>
> update:
> some more investigation revealed the following.
>
> when i do call the to_json method in the console on a single object it
> all works fine.
> the error occurs only when i get a collection of objects.
>
>
> ArgumentError: redundant UTF-8 sequence
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:130:in> `unpack''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:130:in> `escape''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:125:in> `gsub''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:125:in> `escape''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:68:in> `escape''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:173:in> `encode_json''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:47:in> `encode''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:77:in> `check_for_circular_references''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:45:in> `encode''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:247:in> `encode_json''
> from (irb):26:in `map''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:247:in> `each''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:247:in> `map''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:247:in> `encode_json''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:47:in> `encode''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:77:in> `check_for_circular_references''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:45:in> `encode''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:247:in> `encode_json''
> from (irb):26:in `map''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:247:in> `each''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:247:in> `map''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:247:in> `encode_json''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:214:in> `encode_json''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:214:in> `map''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:214:in> `encode_json''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:47:in> `encode''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:77:in> `check_for_circular_references''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:45:in> `encode''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/json/encoding.rb:30:in> `encode''
> from
>
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/core_ext/object/to_json.rb:15:in> `to_json''
--
Posted via http://www.ruby-forum.com/.
--
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
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en.