I have been tapped to rewrite a desktop app from scratch. It currently exists as a VB app using an access database. Our field sales team spends their day in the field then when they get home(or before they go out) they VPN into the office, run this desktop app and communicate with the server to upload the days collected data and download updated cube data, app changes, etc. During the day they use this app to record data from store to store, so it is used all day, but only “online” with eh server a few minutes each day.
I am considering rewriting this in java. What recommendations do you guys have for the type of communication I should use to exchange data with the server once or twice a day? Webstart comes to mind for app updates, etc. The project leader has deemed an xml architecture and to throw away the access db.
C# has also come to mind.
Comments, thoughts, suggestions?