Updated count (*) sql to accomodate two different versions of hibernate - it could return either an integer or a long. Also tweaked a method parameters to use the correct Integer/Long class - newer versions of Hibernate throw class cast exceptions when Long is subsituted for integer.
Merge online and offline instruction files, so that it read out from SessionMap rather than the request scope form. This make error echo back screen does not lost file list. And delete/upload file java code turn out simple as well.