2

如果没有人将用 Erlang (http://wiki.basho.com/Webmachine.html) 编写的 Basho WebMachine 工具包移植到 Java,我会感到惊讶,但我似乎找不到一个!

我知道 Java REST 工具包(JAX-RS、RESTlets、1060 NetKernel 等)有各种尝试,但我不希望有人对 REST 风格的解释——我只想要一个“可执行的 HTTP 模型”,这正是WebMachine 似乎是什么,但我想要它在 Java 中(即不是 Ruby、Python、Clojure 等端口......!)。当然,WebMachine 不是那么“功能性”,以至于它不能轻易地移植到 Java,但也许我错了(我有点怀疑实际上可能是这种情况)......?

作为记录,我多年前在 Java 中实现了自己的 WebMachine 尝试(建立在 Apache HTTPClient 之上),但它只实现了 HTTP 规范的一个非常小的子集,我真的不想复活该代码(用 JDK 1.4 编写),并为 HTTP 的所有特性扩展了它,那时我从来没有费心去理解或实现。

4

5 回答 5

0

看看晾衣绳。它是用 Clojure 编写的,但描述表明它适用于所有 JVM 语言。

于 2012-07-08T22:04:05.963 回答
0

我基于 Ruby Webmachine 端口编写了一个端口,它被称为 Bishop,并且在大多数情况下与该端口非常接近。

GitHub 项目页面

于 2013-09-20T15:32:44.547 回答
0

JAX-RS 2.0一个“可执行的 HTTP 模型”,或者任何您想称呼它的名称。选择 Glassfish Jersey,你不会失望的。它绝对是 RESTfulness 和风格不可知论者。我认为 JAX-RS/Jersey 的基于注释的方法比 Webmachine 的基于接口的方法强大得多。

于 2015-07-29T18:55:36.980 回答
-1

我不熟悉 java 中类似的东西,但是Netty呢?

正如他们标记的那样:

Netty 是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。

它建立在NIO之上,允许您在协议之间切换,而无需更改应用程序的其余部分。

于 2012-03-16T00:11:55.540 回答
-1

在 webmachine 中,你有很多可以定义和导出的回调,比如resource_exists,等to_jsonto_html而在 java 中做同样的事情并不是最合适的,因为你最终会得到很多样板代码。

在 java 中,您可以使用诸如 spring mvc 框架之类的东西来构建 Web 资源。

于 2012-03-29T14:19:59.590 回答