【问题标题】:How to extend a protected method in Clojure如何在 Clojure 中扩展受保护的方法
【发布时间】:2011-01-05 02:44:53
【问题描述】:

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 中编写这个?

我正在尝试在 clojure 中编写 vaadin srvlet 类:

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

【问题讨论】:

    标签: java clojure vaadin leiningen


    【解决方案1】:

    我认为您正在寻找的是以下内容:

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

    看看代理的documentation

    【讨论】:

      【解决方案2】:

      您上面给出的代码用于通过 vaadin 框架为用 clojure 编写的 webapp 提供服务。 此代码旨在按原样作为 Java Servlet 运行,并且 webapp 逻辑将在 clojure 代码 (test.tlp) 中,您必须编译 servlet 并将其与 webapp 根目录中的 clojure 脚本一起打包。

      问候, 山木

      【讨论】:

      • 谢谢老兄.. 我知道,它的工作。但我需要将其转换为 clojure。
      猜你喜欢
      • 2014-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-31
      • 2021-07-18
      • 1970-01-01
      • 2017-08-22
      • 2016-02-19
      相关资源
      最近更新 更多