views:

538

answers:

3

My wife is starting a new business and wants me to create a website for her that will allow clients to book appointments. I could obviously go ahead and start building something from scratch, but given that this is a fairly standard problem, I would prefer to reuse an existing solution (preferably in Java, but there is some flexibility on this) or build on top of a hosted solution like Google Calendar. What would you recommend?

+2  A: 

There are extensive tools for the Google Calendar API. Specifically read the Google Calendar Developer's Guide.

cletus
Depends on the business. I wouldn't want to trust my business' appointments to Google. There are tons of calender API out there.
Aiden Bell
I know I'd trust Google in this department more than Microsoft (Exchange) although the issue with Exchange is not about privacy, it's about it working efficiently or at all. But many people have the same privacy concerns. Fair enough but it's overblown I think.
cletus
+3  A: 

Do NOT build your own from scratch; it's a surprisingly hard process (if you're curious, look into the iCalendar standard; there's a surprisingly large amount of complexity involved). As someone who has tried to develop this sort of thing from scratch before, I'd highly recommend using an existing hosted solution such as Google Calendar.

McWafflestix
A: 

You can take a look at DayPilot (my project).

http://www.daypilot.org

It's a set of ASP.NET controls including:

  1. Calendar - traditional vertical Outlook-like day/week view
  2. Month - traditional 6x7 Outlook-like month view
  3. Scheduler - horizontal multi-resource scheduler

For a low-budget project with basic requirements, there is an open-source edition available:

A step-by-step tutorial for the Lite version is available. It can help if you are new to ASP.NET:

A Java version is in progress but it's still in "alpha":

The event calendar controls (and that includes DayPilot's competition) are getting more and more sophisticated and easier to use. Sometimes it can be even easier to use the controls rather than an API of a hosted service. An you will have full control over the UI and data.

Dan