Referenciando projetos web

Tenho duas aplicações web(aplicações “A” e “B”) e preciso utilizar classes e acessar páginas que estão dentro da aplicação “A” na da aplicação “B” e gostaria de sabe qual é a melhor forma de fazer isso?
Já fizemos a referência do war da aplicação “A” na aplicação “B” e conseguimos acessar as classes e páginas da aplicação “A”, porém tivemos que adicionar as classes que fazem acesso a banco da aplicação “A” no persistence da aplicação B.
Estou utilizando eclipse.
Esta é a melhor forma de fazer essas referencia ou existe alguma outra maneira ?

Você não deveria acessar páginas que estão em outro projeto, o ideal seria criar camadas de software, um projeto rodando o backend, o outro com os servlets rodando as páginas. Ai é só adicionar o backend no servlet como dependencia. O ideal é fazer isso com o maven, mas não precisa.
Se não me engano é só adicionar o projeto na aba projetos no build path. Mas pode dar uma pesquisada.

Vamos aplicar OO nesta questão?
Lembre-se: um dos argumentos mais utilizados para defender a utilização de OO é, justamente, reaproveitamento de código.
Quando começamos a estudar herança, temos questões que nos pedem para criar classes de acordo com alguns atributos e métodos (alguns específicos de cada classe e outros comuns entre elas).
Exemplo:
public class A { int b; String z; float l; }
public class B { int b; String x; float c; }
Estas classes podem ser reescritas assim:
public class S{ int b; }
public class A extends S {String z; float l; }
public class B extends S {String x; float c; }
Percebe como criamos uma nova classe S que possui atributos comuns a A e B? Então reescrevemos as classes A e B dizendo que elas SÃO uma classe S (estendem de S). Assim sendo, tanto A quanto B possuem um atributo b inteiro.
Para resolver teu problema, o ideal é, como o @angrymouse disse, modularizar.
Crie um projeto (jar) onde tudo o que você precisa das aplicações A e B estejam. Então, coloque este jar como dependência de cada um dos projetos e seja feliz.

Entendi, então as classes ficarão em um jar para que eu possa referenciar em cada um dos meus projetos. Agora em relação as paginas, existe alguma maneira de reutiliza-las ou eu devo escreve-las em cada um dos meus projetos ? Eu utilizo JSF.

Você está utilizando maven?
Eu não sou especialista em maven, mas posso te dizer que, dependendo de como você o configura, consegue fazer com que as páginas possam ser reaproveitadas.

Sim. Estou utilizando o maven.

Como eu te disse, eu utilizo, mas não tenho um conhecimento avançado em maven. Eu sei que é possível configurar, via pom.xml, o maven, de forma que o mesmo pegue arquivos de um outro projeto e inclua num terceiro.Agora, como isso é feito, já não consigo te dizer.

Vocês me ajudaram bastante. Obrigado a todos.

@martins.sjc utilizando o Mavenh o ideal seria você quebrar o projeto em projetos ou módulos menores e colocar eles como dependências… Algo como o esquema abaixo…

- projeto
 |- moduloA
 |- moduloB
 |- moduloComum1
 |- moduloComum2

ou

- projetoA
- projetoB
- projetoComum1
- projetoComum2

Ressuscitando tópicos mortos, @Eldius?