get any transaction in p2p manner using bitcoinj
GetData can fetch only unconfirmed transactions, and that's what Peer.downloadDependenciesInternal is doing.

You might want to contact the developer of the now defunct biteasy.com block explorer, he was using (and extending on) bitcoinj.