Cómo extender un método protegido en Clojure
Pregunta
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import clojure.lang.RT;
import com.vaadin.Application;
import com.vaadin.terminal.gwt.server.AbstractApplicationServlet;
public class Clojure4Vaadin extends AbstractApplicationServlet {
@Override
protected Class<? extends Application> getApplicationClass()throws ClassNotFoundException {
return Application.class;
}
.... Some code .....
}
Cómo escribir esto en Clojure?
Estoy tratando de escribir la clase vaadin srvlet
en clojure:
Solución
Creo que lo que estás buscando es la siguiente:
(def Clojure4Vaadin
(proxy [com.vaadin.terminal.gwt.server.AbstractApplicationServlet] []
(getApplicationClass [] com.vaadin.Application)))
Tener un vistazo a la documentación de proxy.
Otros consejos
El código que has dado anteriormente se utiliza para servir a una aplicación web escrita en clojure a través del marco vaadin. Este código está destinado a ser ejecutado como Java Servlet, ya que es la lógica y la aplicación de web sería en el código clojure (test.tlp), que tendría que compilar el servlet y empaquetarlo con el guión clojure en el directorio raíz de aplicación web.
Saludos, Shanmu
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow