# Global error handling in rails

**URL:** <https://www.ruby-forum.com/t/global-error-handling-in-rails/70371>\
**Category:** Rails\
**Created:** [September 28, 2006, 7:19pm UTC](https://www.ruby-forum.com/t/global-error-handling-in-rails/70371 "2006-09-28T19:19:03Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![msoulier](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/97f17d/32.png) [@msoulier](https://www.ruby-forum.com/u/msoulier)\
**Post date:** [September 28, 2006, 7:19pm UTC](https://www.ruby-forum.com/t/global-error-handling-in-rails/70371/1 "2006-09-28T19:19:03Z")

</div>

Hey people,

I’m having a problem implementing global error handling in Rails.

I’m using “Agile Web D. with Rails”, and on page 464 it has  
some code for  
implementing email notification of such errors via the  
rescue\_action\_in\_public  
method globally in application.rb. I’ve implemented it, but I’m seeing  
this in  
my logs

NameError (uninitialized constant  
ActionWebService::Dispatcher::ActionController  
::UnknownAction):

/usr/local/lib/ruby/gems/1.8/gems/activesupport-1.3.1/lib/active\_support/dep  
endencies.rb:100:in `const\_missing’

```
/app/controllers/application.rb:14:in `rescue_action_in_public'

```

/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action\_controller/re  
scue.rb:33:in `rescue\_action’

And I’m getting “Application error (Rails)” in the browser.

Any suggestions?

Thanks,  
Mike

---

<div class="post-metadata">

**Author:** ![msoulier](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/97f17d/32.png) [@msoulier](https://www.ruby-forum.com/u/msoulier)\
**Post date:** [September 29, 2006, 3:14am UTC](https://www.ruby-forum.com/t/global-error-handling-in-rails/70371/2 "2006-09-29T03:14:23Z")

</div>

msoulier wrote:

> NameError (uninitialized constant  
> ActionWebService::Dispatcher::ActionController  
> ::UnknownAction):

Apparently the problem is documented in the errata on the website for  
the  
book. This fixes the problem.

[msoulier@tigger papproach]$ hg diff -r 27 -r 28

diff -r 282a076a19ac -r f1f71757bb90 app/controllers/application.rb

— a/app/controllers/application.rb Sun Sep 24 16:53:02 2006 -0400

+++ b/app/controllers/application.rb Thu Sep 28 20:27:56 2006 -0400

@@ -11,7 +11,7 @@ class ApplicationController \< ActionCont

```
 def rescue_action_in_public(exception)

     case exception

```

- 

```
   when ActiveRecord::RecordNotFound,

```

ActionController::UnknownAction

- 

```
   when ActiveRecord::RecordNotFound,

```

::ActionController::UnknownAction  
render(:file =\> “#{RAILS\_ROOT}/public/404.html”,

```
                :status => "404 Not Found")

     else

```

I don’t understand the fix, but it does work.

I don’t suppose anyone can explain it.

Mike
