Java 如何使用ApacheCamel和Jetty创建REST micros服务
我一直在尝试使用ApacheCamel创建基于REST的微服务。根据我的实验,我是如何使用Jetty创建echo服务的: 专家 在Maven构建中包含以下依赖项:Java 如何使用ApacheCamel和Jetty创建REST micros服务,java,rest,apache-camel,Java,Rest,Apache Camel,我一直在尝试使用ApacheCamel创建基于REST的微服务。根据我的实验,我是如何使用Jetty创建echo服务的: 专家 在Maven构建中包含以下依赖项: <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-jetty</artifactId> </dependency> 集成测试 然后可以使用Chrome exten
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-jetty</artifactId>
</dependency>
集成测试
然后可以使用Chrome extension Postman进行测试,您可以使用它发送POST请求,然后回复:
这是使用ApacheCamel创建基于REST的服务的推荐方法吗?上述方法可能存在哪些问题?有几种方法可以使用Camel公开REST服务 纯服务-这是您已经做过的。似乎是快捷简单的方式(可能太简单了) REST骆驼端点(感谢noMad) 在带有框架的容器中。我最喜欢的是和。启动需要更多的时间,运行需要更多的内存,但框架允许附加功能,如身份验证、音频化、日志记录等
如果有人找到了另一种方法,请添加答案或评论,我也渴望找到新的选项如果您想使用Camel创建基于REST的服务,我建议查看Camel REST DSL:我目前正在创建一个基于Camel的伪REST服务,用于内部评估。它将Camel的REST DSL与Jetty以及JSON HAL支持、Spring安全性、Amazon X射线和Mongo视图等其他技术结合使用。如果你感兴趣,你可以。但是,请注意,这更多的是一个技术演示,而不是一个真正的成熟APIs,因为您需要一个提示:Camel's REST DSL^^如果您也渴望找到新的选项,为什么不将问题向上投票?:)
import org.apache.camel.CamelContext;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.impl.DefaultCamelContext;
public class EchoHttpServer {
public static void main(String[] args) throws Exception {
CamelContext context = new DefaultCamelContext();
context.addRoutes(new RouteBuilder() {
@Override
public void configure() throws Exception {
from("jetty://http://localhost:8099/echo?httpMethodRestrict=POST")
.convertBodyTo(String.class)
.to("file://D:/work")
.process(exchange -> exchange.getOut().setBody(exchange.getIn().getBody()));
}
});
context.start();
}
}