2008-09-15 5 views
16

내가 개발중인 Java 웹 응용 프로그램의 REST 라이트 버전을 찾고 있습니다.Java의 REST

나는 RESTlet (www.restlet.org)과 Struts 2를위한 REST 플러그인을 보았지만, 내 마음을 수정하지는 못했다. 가볍기 때문에 RESTlet쪽으로 기울어 져 있습니다.

누구나 프레임 워크 나 프레임 워크없이 RESTful 레이어를 구현 한 사람이 있습니까?

새로운 웹 레이어로 인해 발생했던 성능 문제가 있습니까?

REST의 도입으로 인해 관리하기 어렵거나 부당한 복잡성이 프로젝트에 추가 되었습니까? (약간의 복잡성은 이해할 만하지만, 내가 의미하는 바는 그냥 REST를 추가하기 위해 디자인을 과도하게 사용하는 것입니다)

+0

참조 http://meta.stackexchange.com/questions/71068/a-few-possible-duplicate-questions-about-java-rest-what-should-we-do – ripper234

답변

3

음, Enunciate를 꽤 많이 사용했습니다. 간단한 주석을 사용하여 REST 및/또는 SOAP 끝점을 제공합니다.

http://enunciate.codehaus.org

플러스, 라이언 히튼은 항상 너무 것들에 대한 최고 수준의 지원을 제공하고 있습니다.

1

나는 gliffy.com에 대한 REST API를 작업 중이며 우리는 자체적으로 롤링을 끝 냈습니다. 우리는 Struts 2, Spring 또는 다른 프레임 워크를 가져오고 싶지 않았습니다. 나는 RESTLet을보고 매우 혼란스럽고 복잡하다는 것을 알았다.

아파치는 JAX-RS 스펙의 구현을 가지고 있지만 파이널 라이즈되지 않았으며 약간의 기이함을 가지고있다. 우리는 잠정적으로 우리의 솔루션을 오픈 소스로 계획하고 있지만, 몇 달 동안은 아닙니다.

자신을 구르는 것이 쉽습니다. 서블릿 스펙은 필요한 모든 것을 제공하며 Hibernate를 통해 데이터베이스에 쉽게 연결할 수 있습니다 (EJB3를 사용하지 않고 JPA를 설정하는 방법은 http://www.naildrivin5.com/daveblog5000/?p=39 참조).

1

나는 restlet이 정말 우아한 아키텍처라고 발견했습니다. 나는 .net 세계에서 일하고있어 나를위한 선택 사항은 아니었지만, 같은 기본 원칙 인 restlet에 따라 나만의 프레임 워크를 만들 수 있었다.

JAX-RS를 : 나는 또한, 편안하고 서비스에 액세스하기위한 새로운 JCP의 API가 알고

3

, 하나는 크게 응용 프로그램을 단순화했다 기반 REST 우리의 WCF 계약 기반의 SOA 애플리케이션의 변환을 발견했다 나는 그들이 그 규격에 좋은 일을했다고 생각 - JCP311 https://jsr311.dev.java.net/

오픈 소스 버전은 내가 JAX-RS의 엄청난 팬이에요 프로젝트 뉴저지

+0

저지 [1]은 JSR-311. Glassfish는 자체적으로 또는 Sun의 Open Source 응용 프로그램 서버 인 Glassfish [3]의 일부로 다운로드 할 수 있습니다. Restlet [4]의 곧 출시 될 2.0 릴리스는 또한 JSR-311을 구현합니다. [1] htt256 : [4] http://restlet.org/ –

+0

JSR-311은 RESTful 서비스에 액세스하기위한 것이 아니라 ** RESTful 서비스를 제공/제공/구현합니다. RESTful 서비스에 액세스하려면 클라이언트 역할을하지만 Jersey는 REST 클라이언트 라이브러리를 제공합니다. –

20

라고합니다. 나는 많은 프로젝트에서 그것을 사용하고 함께 일하는 기쁨을 누렸다.

JAX-RS는 URI 매핑, HTTP 메소드 및 컨텐트 협상을 다루는 간단한 주석이있는 POJO를 사용하여 REST 리소스를 모두 만들 수 있도록 지원한다. 배울 복잡한 API가 없습니다. 핵심 REST 개념 (URI, 헤더/응답 코드 및 내용 협상) 만 있으면됩니다. FWIW JAX-RS는 컨트롤러의 관점에서 보면 꽤 괜찮습니다.

거기에는 수많은 JAX-RS 구현이 있습니다. this thread for a discussion을 참조하십시오.

내 개인적인 권장 사항은 그 중 가장 크고 가장 활발한 커뮤니티가 있고 쓰기 (WADL 지원, 암시 적보기, 스프링 통합, 멋진 REST 클라이언트 API) 당시 최고의 기능을 가지고 있습니다. JBoss/SEAM을 사용하고 있다면 RESTeasy가 좀 더 잘 통합 될 수 있습니다.

8

저는 Restlet을 좋아합니다.하지만 주로이 앱을 사용하여 RESTful 웹 서비스가되는 앱을 구현합니다. 기존 애플리케이션에 RESTful API를 추가하려고하는 것 같습니다. 그렇다면 JAX-RS (또는 Enunciate)의 주석 기반 접근 방식이 프로젝트에 더 적합 할 수 있습니다.

Restlet에 관해서는 개발자와 커뮤니티에 깊은 인상을 받았습니다. 그들은 매우 적극적이고, 적극적이며, 반응 적이며, 안정적이고 효율적이며 신뢰할 수 있고 효과적인 프레임 워크에 전념합니다. 프레임 워크에서 가장 좋아하는 측면은 REST 패러다임의 기본 구현입니다. 따라서 Restlet 앱의 외부 API와 내부 구현 간에는 임피던스 불일치가 없습니다. 또한 JBoss, Tomcat, Jetty 등과 같은 Java 응용 프로그램 컨테이너/서버 또는 독립 실행 형 HTTP 서버 라이브러리로 실행될 수있는 유연성이 정말 좋습니다.