2011-02-22 38 views
1

我有一個開發resteay + ejb + json的問題。使用Jboss-5.1.0.GA。我從resteasy-jaxrs中得到了一些例子,並適用於我的案例。 增加罐子(這個問我的JBoss在其他情況下捕獲異常 - 找不到類)轉換成\ jboss-5.1.0.GA \服務器\ DEFAULT \ LIB \找不到適用於媒體類型的JAXBContextFinder:application/json

resteasy-jaxb-provider-1.2.1.GA jaxrs-api-2.0.1.GA resteasy-jaxrs-2.0.1.GA

獲取例外

09:43:15,502 ERROR [SynchronousDispatcher:error] Failed executing GET /basic 
    org.jboss.resteasy.plugins.providers.jaxb.JAXBMarshalException: Could not find JAXBContextFinder for media type: application/json  
    at org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBProvider.findJAXBContext(AbstractJAXBProvider.java:50) 
    at org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBProvider.getMarshaller(AbstractJAXBProvider.java:127) 
    at org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBProvider.writeTo(AbstractJAXBProvider.java:103) 

<dependency> 
    <groupId>org.jboss.resteasy</groupId> 
    <artifactId>resteasy-jaxrs</artifactId> 
    <version>2.0.0.GA</version> 
</dependency> 
<dependency> 
    <groupId>org.jboss.resteasy</groupId> 
    <artifactId>resteasy-jaxb-provider</artifactId> 
    <version>1.1.GA</version> 
</dependency> 

@Stateless 
public class SimpleResourceBean implements SimpleResource { 

    @Override 
    public Book getBasic() { 
     System.out.println("getBasic()"); 
     return new Book("AAA", "CCC", "SSSS"); 
    } 
} 

@Path("/") 
public interface SimpleResource { 

    @GET 
    @Path("basic") 
    // @Produces("text/plain") 
    @Produces("application/json") 
    Book getBasic(); 

} 

@BadgerFish 
@XmlRootElement(name = "book") 
public class Book 
{ 
    private String author; 
    private String ISBN; 
    private String title; 

    public Book() 
    { 
    } 

    public Book(String author, String ISBN, String title) 
    { 
     this.author = author; 
     this.ISBN = ISBN; 
     this.title = title; 
    } 

    @XmlElement 
    public String getAuthor() 
    { 
     return author; 
    } 

    public void setAuthor(String author) 
    { 
     this.author = author; 
    } 

    @XmlElement 
    public String getISBN() 
    { 
     return ISBN; 
    } 

    public void setISBN(String ISBN) 
    { 
     this.ISBN = ISBN; 
    } 

    @XmlAttribute 
    public String getTitle() 
    { 
     return title; 
    } 

    public void setTitle(String title) 
    { 
     this.title = title; 
    } 
} 

請,任何建議。 致以問候 Artem

回答

0

我用傑克遜提供商

<dependency> 
     <groupId>org.jboss.resteasy</groupId> 
     <artifactId>resteasy-jackson-provider</artifactId> 
     <version>2.0.1.GA</version> 
    </dependency> 

和解決的問題。

注意RestEasy的傑克遜提供商取決於RestEasy的,拋放提供商

0

添加以下jar解決我的問題:

<dependency> 
     <groupId>org.jboss.resteasy</groupId> 
     <artifactId>resteasy-jettison-provider</artifactId> 
     <version>2.2.0.GA</version> 
</dependency> 
相關問題