diff --git a/app/models/journal.rb b/app/models/journal.rb
index 8070d78bb1a6dbee7e03ba41901fba899efb3aaa..0b807fb2dfa3f63012b2729bf27fc5115e76ee80 100644
--- a/app/models/journal.rb
+++ b/app/models/journal.rb
@@ -23,7 +23,12 @@ class Journal < ActiveRecord::Base
 
   # Make sure each journaled model instance only has unique version ids
   validates_uniqueness_of :version, :scope => [:journaled_id, :type]
-  belongs_to :journaled, :touch => true
+
+  # Define a default class_name to prevent `uninitialized constant Journal::Journaled`
+  # subclasses will be given an actual class name when they are created by aaj
+  #
+  #  e.g. IssueJournal will get :class_name => 'Issue'
+  belongs_to :journaled, :touch => true, :class_name => 'Journal'
   belongs_to :user
 
   # ActiveRecord::Base#changes is an existing method, so before serializing the +changes+ column,
diff --git a/test/unit/journal_test.rb b/test/unit/journal_test.rb
index b87f63a6b583e943e8eaf69c459fc3045c28ade4..9c50cb8a03fcfc4a6b9681e96fd75e16eb41d40d 100644
--- a/test/unit/journal_test.rb
+++ b/test/unit/journal_test.rb
@@ -94,4 +94,11 @@ class JournalTest < ActiveSupport::TestCase
 
     assert_not_equal start, @issue.reload.updated_on
   end
+
+  test "accessing #journaled on a Journal should not error (parent class)" do
+    journal = Journal.new
+    assert_nothing_raised do
+      assert_equal nil, journal.journaled
+    end
+  end
 end