Porting legacy C++ code Java - Answer
Damian's comments were spot on - although he did have an advantage :). Essentially you have no choice but to build functional tests against the original app to prove that the new Java code produces identical results. I also implied in the original posting that not all the code was being ported - the accumulation and session management code wraps the calculation code which will remain in C++. The functional tests have already proved there worth by identifying an issue with data marshalling in Java, that didn't exist in the legacy application.
TDD is a must when developing the new code for obvious reasons.