Bueno, pues por fin he conseguido que funcione, aunque ahora tengo otro problema.
La solución ha sido poner la llamada al setup en la función onreadystatechange, pero en vez de pasarle el nombre del div, pasarle un array con los enlaces que contiene ese div de esta manera:
Código:
Shadowbox.setup(document.getElementById(capa).getElementsByTagName('a'),{ width:640, height:480 });
Con eso basta para que funcione, pero mi nuevo problema creo que es un poco mas generico, ya que no me abre ninguna pagina JSP con shadowbox, da igual donde ponga el link, no abre paginas JSP. Voy a investigar un poco más este tema.
Muchas gracias!
Saludos!