We currently have an application developed for Tomcat using some JS (prototype, jquery) and some frameworks like Spring, hibernate, jxl, jfreechart, struts) and the customer is now saying we need to move this to a CF10 server.
I am trying to determine how much rework will be needed.
Thank you for any advice you can give.
I wouldn't call it rework. Makes it sound like you are going to do a literal translation.
Translating software from one platform to another is different from translating text from one language to another. Bear that in mind, and you will avoid the most frequent pitfall. In the end most developers who do a literal translation are unaware that that is the main reason their task took twice as long as expected. If at all they finished it.
I can think of a better analogy. A North American grey wolf, a German shepherd and a chihuahua are dogs. In terms of shape, anatomical function and behaviour, they have a lot in common. But they also have obvious differences. That is analogous to software applications that do the same thing, but that are built on different platforms.
So how do you go from German shepherd to chihuahua (without some Frankenstein species in between)? You should treat your project as you would the building of a new application.
You will have to do some work first, before you can estimate how much effort the conversion will take. Perform an analysis of the requirements. This should include research into existing libraries that can be carried over to ColdFusion as-is, and functionality that would have to be written afresh in ColdFusion. It is vital to include an evaluation in this early stage. It should result in the decision whether what you plan to do is possible and, if so, value-for-money. In other words, whether to continue or stop.
Then design the application. As (good) design is independent of the implementation platform, you could borrow a lot from the original design, if there is one. It is a gamble up until this point. That is because you are spending your own money without the certain knowledge that the project is feasible. Should the project proceed, then you will include analysis and design to the costs.
Assuming the analysis and design have gone well, you are now in a position to estimate the effort required to implement the software in ColdFusion. Implementation follows from design.
Break the design down into detailed implementation steps in ColdFusion. Atomic steps. That is, steps that cannot be broken down any further without losing context.
Estimate the effort for each step. Then find the total estimate. Always include allowances (which you can justify).