Creación de un "foro y chat" desde cero

Hola que tal javeros, el motivo de estas lineas son para solicitarles ideas de como crear un foro y chat en mi pagina web, los dos basandome en java, la inquietud surge porqué he visto algunos CMS como Drupal, WordPress, etc. que lo incluyen facilmente agregando modulos al mismo pero... como se hace desde cero? que herramientas en el ámbito de java puedo usar? se puede usando Struts 1(última version), con jsp's o utilizando algún framework en especial?
Bueno espero comentarios y sugerencias. Gracias.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Uno como

Uno como este?

Aca hay mas informacion:

:) :)

Imagen de ghosttigger1203

Hola Oscar, gracias por

Hola Oscar, gracias por responder. Respecto a los links que me pasaste, probaré la aplicación a ver hasta donde va el proyecto de javamexico 2.0, pero me gustaria como una sintesis en cuestion de que necesito para realizar un foro desde cero(una lista de lo que debo contemplar para poder iniciar el modulo) pensaras que lo puedo bajar de los links pero en lo personal me gusta hacer las cosas desde cero y no solo copiarlas, aunque contradiga el dicho, para que inventar el hilo negro si ya está jejejeje. Bueno un saludo y espero comentarios.

Ah, pero por supuesto. La

Ah, pero por supuesto. La idea no era que hicieras copy/paste, sino que leyeras el contenido y vieras que se usa en ese proyecto, así que regresa de nuevo a verlo y encontrarás que se usa:

  • Maven
  • Tapestry 5
  • Spring
  • Hibernate
    • Puedes usar eclipse o IntelliJ IDEA o basicamente cualquier IDE que prefieras.

      En los links, vienen algunas explicaciones de más alto nivel. Para no tener que responder aquí de nuevo ( y quedarme corto ) lo mejor sería que empezaras leyendolas.

      Si te quedan dudas ( que seguro te surgirán ) puedes regresar y escribir algo como "Vi que usa Tapestry 5 pero por que maven esto y lo otro y aquello" O "Puedo utilizar otra base de datos y bla bla bla bla?"

      Espero que te sirva