Właśnie o tym myślę na serwerze JEE Glassfish przy użyciu Jersey.
@GET
@Path("/{name}/{date}")
public String getMessages(@PathParam("name") String name, @PathParam("date") Date date)
Podoba mi się pomysł, aby móc powiedzieć ludziom korzystającym z usługi RESTful, że „Data tutaj jest wszystkim, co działa z klasą Date w Javie”. Jest to dość proste z punktu widzenia, że mogą po prostu spojrzeć na specyfikację daty i będą już mieć działający model, z którym będą mogli testować.
Problemem, o który się martwię, jest to, że kiedy to robię, JAX-RS nie jest zbyt miły, gdy Date () nie lubi tego, co dostaje w konstruktorze. Ponieważ Date () generuje błąd, jeśli nie może przeanalizować tego, co zostało podane (np. Jeśli przekażesz ciąg „dzisiaj” zamiast prawdziwej daty), serwer JEE zwraca błąd 404.
Czy to dobra praktyka? Czy istnieje lepszy sposób, aby to zrobić, o czym nie myślę?
DateTimeFormatter
. Dla Javy <= 7ThreadLocal