Parsowanie daty
Specyfikacja wymusza na serwerze HTTP obsługę daty w trzech formatach (ANSI C asctime(), RFC850 i RFC1123). Do ich obsługi utworzone zostały trzy klasy, oraz czwarta – abstrakcyjna (HTTPDate), zawierająca klika metod statycznych ułatwiających tworzenie obiektów klas potomnych. Aby można było szybko porównywać daty, klasa ta implementuje interfejs java.lang.Comparable. Informacja o dacie, która ma zostać sformatowana do wybranego standardu, przechowywana jest jako obiekt java.util.Date.
Tworzenie obiektu daty w wybranym formacie odbywa się zazwyczaj poprzez jedną z metod statycznych klasy HTTPDate. Jeżeli trzeba utworzyć datę na podstawie aktualnego czasu, lub czasu podanego w milisekundach od 1 stycznia 1970, zwracany jest obiekt daty w formacie RFC1123, który później można wysłać w odpowiedzi do klienta. Aby np. porównać datę ostatniej modyfikacji pliku z datą otrzymaną od klienta, tworzony jest obiekt HTTPDate na podstawie przekazanego Stringu daty. Mimo że otrzymany obiekt może być inny niż docelowy RFC1123, wszystkie one implementują ten sam interfejs i dziedziczą po HTTPDate, pozwalając na łatwe porównanie, ignorując to w jakim formacie klient wysłał datę do serwera.
Serwer HTTP 