2011-08-15 12 views
6

¿Hay alguna forma de utilizar un objeto inmutable como un modelo dentro de una vista de estado en Spring Web Flow? Sé primavera WebFlow tiende generalmente hacia los emisores de este tipo de cosas, pero me preguntaba si alguien sabía de un DataBinder costumbre o WebDataBinder que pudiera manejar el enlace de datos utilizando un constructor?primavera Webflow DataBinding a objetos inmutables a través de un constructor?

También soy consciente de que hay (SPR-1488) esta tarea JIRA contra el problema, que defendía el acceso de campo directo. ¿Las personas abogan por esta forma de hacer las cosas? Para mí, no me siento bien.

Gracias,

Stuart

+0

También estoy tratando de resolver esto. –

+0

Ver mi solución. Yo también quería esta característica. –

Respuesta

2

me han puesto un ejemplo de cómo se puede hacer esto utilizando ObjectMapper de Jackson (JSON que además hace un buen trabajo mapear nada a objetos inmutables).

https://gist.github.com/4458079

Un par de cosas a tener en cuenta es que no se puede utilizar @ModelAttribute si desea utilizar la validación de la primavera (BindingResult) a menos que reemplace todos los dispositivos de resolución de argumento. Sin embargo @Valid (con validación) debe trabajar y @RequestBody también funcionará (con la validación fuera) con mi solución.

Aunque está usando Jackson para mapear parámetros de solicitud a objetos, no hay proceso JSON involucrado. Si quieres eso, mira MappingJacksonHttpMessageConverter.

Como un enchufe desvergonzado débil lo necesitaba junto con mi Immutable ORM called: JIRM ya que prefiero los objetos inmutables para las arquitecturas controladas por mensajes.

Cuestiones relacionadas