Java EE tendrĂ¡ un framework MVC: JSR 371
domingo, septiembre 28, 2014 at 7:55PM
Abraham

A principios de este año Oracle realizó una encuesta cuyo objetivo era pedir realimentación a la comunidad sobre lo que debería ser la especificación de Java EE 8, un movimiento similar a lo que ya hizo para Java EE 7. Una de las cosas que pidió la comunidad es que Java EE pasase a tener soporte para un framework tipo Modelo-Vista-Controlador:

Pues bien, parece que Oracle ha escuchado a la comunidad y ha creado el JSR 371 "Model-View-Controller (MVC 1.0) Specification". Esta especificación, que apenas acaba de arrancar, tardará un par de años en completarse y no es seguro que forme parte de Java EE 8, si bien en algún momento se incorporará a Java EE. Ahora mismo la fecha prevista de finalización es el tercer trimestre de 2016. El objetivo final de esta especificación es es definir un framework MVC completamente independiente de JSF que sea un estándar dentro de la plataforma Java. Esta podría ser la apariencia que tenga el código de un controlador de este framework:

@Path("/")
@Singleton
@Template
@Produces("text/html;qs=5")
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Bookstore {

    private final Map,  items = new TreeMap();
    private String name;

    public Bookstore() {
        setName("Czech Bookstore");
        getItems().put("1", new Book("Svejk", "Jaroslav Hasek"));
        getItems().put("2", new Book("Krakatit", "Karel Capek"));
        getItems().put("3", new CD("Ma Vlast 1", "Bedrich Smetana", new Track[]{
            new Track("Vysehrad",180),
            new Track("Vltava",172),
            new Track("Sarka",32)}));
    }

    @Path("items/{itemid}/")
    public Item getItem(@PathParam("itemid") String itemid) {
        Item i = getItems().get(itemid);
        if (i == null) {
            throw new NotFoundException(Response
                    .status(Response.Status.NOT_FOUND)
                    .entity("Item, " + itemid + ", is not found")
                    .build());
        }

        return i;
    }

    @GET
    @Produces({MediaType.APPLICATION_XML, MediaType.TEXT_XML, MediaType.APPLICATION_JSON})
    public Bookstore getXml() {
        return this;
    }

    public long getSystemTime() {
        return System.currentTimeMillis();
    }

    public Map,  getItems() {
        return items;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

¿Qué os parece la idea de tener un framework MVC dentro de Java EE? ¿Creéis que será problemático tener dos framework web estándar (JSF y este nuevo)?

 

 

Article originally appeared on javaHispano (http://www.javahispano.org/).
See website for complete article licensing information.