Legacy MySQL database and relationships

Hi,

I´m able to get the data I want with AchievoPerson.find and
AchievoProject.find, but the has_and_belongs_to_many associations wont
work.
Any suggestions or links to posts that might help me out would be
highly appreciated!

p = AchievoPerson.find(:first) # => Find a person which is connected
to projects in the project_person table

p.projects

NameError: uninitialized constant AchievoPerson::AchievoProjects
  from ../rails/activesupport/lib/active_support/dependencies.rb:
492:in `const_missing'
  from ../rails/activerecord/lib/active_record/base.rb:1909:in
`compute_type'
  from ../rails/activerecord/lib/active_record/reflection.rb:129:in
`send'
  from ../rails/activerecord/lib/active_record/reflection.rb:129:in
`klass'
  from ../rails/activerecord/lib/active_record/reflection.rb:137:in
`quoted_table_name'
  from ../rails/activerecord/lib/active_record/associations/
has_and_belongs_to_many_association.rb:82:in `construct_sql'
  from ../rails/activerecord/lib/active_record/associations/
association_collection.rb:8:in `initialize'
  from ../rails/activerecord/lib/active_record/associations.rb:1128:in
`new'
  from ../rails/activerecord/lib/active_record/associations.rb:1128:in
`projects'

class AchievoProject < ActiveRecord::Base
  establish_connection :achievo
  self.abstract_class = true
  set_primary_key "id"

  def self.table_name() "project" end
  def get_active
    AchievoProject.find(:all, :conditions =>{:status => 'active'} )
  end

  has_and_belongs_to_many :persons, :class_name =>
"AchievoPersons", :join_table => "project_person", :foreign_key =>
"projectid"
end

class AchievoPerson < ActiveRecord::Base
  establish_connection :achievo
  set_primary_key "id"

  def self.table_name() "person" end
  has_and_belongs_to_many :projects, :class_name =>
"AchievoProjects", :join_table => "project_person", :foreign_key =>
"personid"
end

This

class AchievoProject < ActiveRecord::Base

and this

has_and_belongs_to_many :projects, :class_name =>
"AchievoProjects", :join_table => "project_person", :foreign_key =>
"personid"

must match: if you tell active record that the class is called
AchievoProjects but it's actually called AchievoProject then it's not
going to fly.

Fred