2010-11-05 22 views
17

RESTeasy modelli bir jsp veya html sayfası döndürmenin yolu, kullanımı kolay bir yay var mı? ModelAndView yayına benzer bir şey yapmak istiyorum,/contact/loomer söyleme isteğim var ve jsp şablonunda alaylı bir nesne döndürmesini sağladım. Gördüğüm tüm örnekler JSON/XML için. Jersey’de görüntülenebilir olanı kullanabileceğimi biliyorum, ancak sadece RESTeasy şeylerini kullanmalıyım.RESTeasy ve modele sahip bir JSP sayfasına dönme

Teşekkürler!

Tamam
@POST 
    @PUT 
    @Consumes(MediaType.APPLICATION_FORM_URLENCODED) 
    @Produces(MediaType.TEXT_HTML) 
    public ModelAndView saveContactForm(@Form Contact contact) 
     throws URISyntaxException 
    { 
     service.save(contact); 
     return viewAll(); 
    } 

cevap

20

, ben ilgi duyan herkes bunu anladım:

böyle bir şey (ama bahar ModelAndView olmadan) istiyorum. Bir örnek bulduktan sonra aslında oldukça önemsizdi.

@GET 
@Path("{eventid}") 
@Produces("text/html") 
public void getEvent(@Context HttpServletResponse response, 
     @Context HttpServletRequest request, 
     @PathParam("eventid") Long eventid) throws ServletException, 
     IOException { 

    EventDao eventdao = DaoFactory.getEventDao(); 
    Event event = eventdao.find(eventid); 

    request.setAttribute("event", event); 
    request.getRequestDispatcher("eventView.jsp").forward(request, response); 

    } 
+1

Bunun, desteklenen bir yöntem olup olmadığını veya uygulamanın yalnızca bir yan etkisinin olup olmadığını merak ediyorum. Umarım eski :-) – marcus

0

Yukarıdaki cevabı kadar oy var ama 2.3.2.Final kadar RestEasy Tamam iş gibi görünüyor, en son (bugün için) 2.3.5.Final olduğunu. Glassfish 3.1.2.2 ile birlikte Jersey ile Tamam çalışıyor gibi görünüyor.

Bu, denediğimde 2.3.2.Final üzerindeki RestEasy ile çalışmaz. Ancak değilim

: '$ Proxy262 org.apache.catalina.core.ApplicationHttpRequest için döküm edilemez java.lang.ClassCastException' o neyin sebep olduğunu anlamaya biraz zaman aldı olarak bu gözlemi paylaşmak için düşünülen bunu çözmek için ne kadar derin dalış çalışırken, ben doğrudan HttpServletRequest erişebilir ve bir RESTEasy View çıktı yönlendirmeden önce kendi özelliklerini enjekte 3.0.6.Finalorg.jboss.resteasy.resteasy-html sürümünü kullanarak bazı düşünceler karşısında https://stackoverflow.com/a/5149950/1398360

Şerefe

3

geldi.

@GET 
@Path("{eventid}") 
@Produces("text/html") 
public View getEvent(@Context HttpServletResponse response, 
        @Context HttpServletRequest request, 
        @PathParam("eventid") Long eventid){ 

    EventDao eventdao = DaoFactory.getEventDao(); 
    Event event = eventdao.find(eventid); 

    request.setAttribute("event", event); 
    return new View("eventView.jsp"); 
} 

Bu

sizin web.xml rewire gerek kalmadan Htmleasy Eklentinin bazı davranışını taklit eder.

+0

RESTeasy görüntüleme nesnesi nedir? Benzer sorunları yaşıyorum. RESTEasy'nin bu kısımlarının çok zayıf bir şekilde belgelendiğine şaşırdım. – Sonny

+0

'http: // docs.jboss.org/resteasy/docs/3.0.6.Final/javadocs/index.html' Bana göre RESTEasy json veya xml döndürmeyi tercih ediyor. MVC döndüren jsp görünümleri olarak kullanmak modeli büyütüyor. Bahse girerim bu yüzden Htmleasy yazılmıştır. – majorbanzai

İlgili konular