Restlet:将Java接口作为@Put参数传递

时间:2013-04-13 14:39:50

标签: java rest interface restlet restlet-2.0

我想将一个java接口传递给@Put调用:

public interface IMyInterface {
...
}

public class MyClass implements IMyInterface, Serializable {
...
}

public class Service extends ServerResource {

    @Put
    public void f(IMyInterface a) {
        ...
    }

}

当我通过ClientResource调用f()时,我收到错误消息“Unsupported Media Type(415)”,我认为这是因为IMyInterface不可序列化。

是否可以将MyClass对象作为IMyInterface传递?

1 个答案:

答案 0 :(得分:0)

您需要在@XmlSeeAlso和@XmlJavaTypeAdapter注释的帮助下使JSON / XML序列化程序与interfces一起使用。

请参阅:

举个例子。添加

并不会有什么坏处
@Consumes("application/xml")
@Consumes("application/json")
@PUT
public void f(IMyInterface a) {
    ...
}