Как расширить защищенный метод в Clojure - PullRequest
2 голосов
/ 05 января 2011

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 .....
}

Как написать это в Clojure?

Я пытаюсь написать класс vaadin srvlet в ближайшем будущем:

http://dev.vaadin.com/wiki/Articles/ClojureScripting

Ответы [ 2 ]

1 голос
/ 14 апреля 2011

Я думаю, что вы ищете следующее:

(def Clojure4Vaadin 
  (proxy [com.vaadin.terminal.gwt.server.AbstractApplicationServlet] []
    (getApplicationClass [] com.vaadin.Application)))

Посмотрите документацию прокси.

0 голосов
/ 05 января 2011

Код, который вы дали выше, используется для обслуживания веб-приложения, написанного на языке clojure через платформу vaadin.Этот код должен запускаться как Java-сервлет как есть, а логика webapp должна быть в коде clojure (test.tlp), вам придется скомпилировать сервлет и упаковать его с помощью скрипта clojure в корневом каталоге webapp.1001 *

С уважением, Шанму

...