¿Cómo implementar editores GWT para subclases de un tipo?

Digamos que tengo una jerarquía de objetos como esta:

Cuenta> Sitio> Suministro

Una Cuenta es una compañía real, un Sitio es un edificio que tienen, y un Suministro es unaElecSupply oGasSupply. La oferta nunca se instancia y podría ser una clase abstracta en teoría.

Estoy usando Objectify para la persistencia, y tengo una página que muestra la lista de Suministros para cada Sitio, independientemente de si son o noElecSupply oGasSupply.

Ahora estoy implementando elGWT Editor Framework y se han topado con un problema con esta entidad polimórfica. ¿Cómo implemento un Editor y un conjunto de subeditores para un objeto como este?

@Entity
public class Supply implements Serializable
{
    @Id
    protected Long id;
    @Embedded
    protected List<BillingPeriod> billingPeriods = new ArrayList<BillingPeriod>();

    public Supply()
    {

    }
// ...
}

Las subclases: (ElecSupply tiene 5 campos únicos y GasSupply tiene solo uno)

@Subclass
public class ElecSupply extends Supply implements Serializable
{
    private String profile;
    private String mtc;
    private String llf;
    private String area;
    private String core;

    public ElecSupply()
    {

    }
}
@Subclass
public class GasSupply extends Supply implements Serializable
{
    private String mpr;

    public GasSupply()
    {

    }
// ...
}

¿Me gustaría saber si alguien tiene alguna experiencia con este tipo de estructura? He intentado hacer editores separados paraElecSupply yGasSupply, y luego mostrarlos u ocultarlos como parte de la página de edición.

La otra forma en que pensaba hacerlo sería tener un solo editor (para Suministro) y luego cargar diferentes subeditores según el tipo de objeto que estemos editando.

Cualquier luz arrojada será recibida con gratitud.

Respuestas a la pregunta(2)

Su respuesta a la pregunta