Java &引用;模板为空或长度为零;使用声明性超链接
我试图通过下面的例子来整合声明性超链接。我在使用Java &引用;模板为空或长度为零;使用声明性超链接,java,jax-rs,jersey-2.0,Java,Jax Rs,Jersey 2.0,我试图通过下面的例子来整合声明性超链接。我在使用时遇到了一些问题。。。value=“/systemusers/{id}”..和一些正在使用。。。resource=SystemUser.class…。在我的代码中,如果我使用第一个解决方案,我会在JSon响应中正确地插入链接,而使用后者,我会得到一个“模板为null或长度为零”错误。问题是什么?错误指的是哪个模板? 以下是我的代码片段: @XmlRootElement public class SystemUser extends Account
时遇到了一些问题。。。value=“/systemusers/{id}”..
和一些正在使用。。。resource=SystemUser.class…
。在我的代码中,如果我使用第一个解决方案,我会在JSon响应中正确地插入链接,而使用后者,我会得到一个“模板为null或长度为零”
错误。问题是什么?错误指的是哪个模板?
以下是我的代码片段:
@XmlRootElement
public class SystemUser extends Account
{
private String addrRow1;
private String addrRow2;
private String addrRow3;
private String postCode;
private String city;
private String country;
private String responsiblePerson; // npid der resp. person
private String responsibleAgroup;
private String project;
private String personRole; // for ex. selfreg_host, technical, nethz_guest, ...
@InjectLink( value = "/users/{npid}", style = Style.ABSOLUTE, bindings = @Binding( name = "npid", value = "${instance.npid}" ), rel = "self" )
@XmlJavaTypeAdapter( XmlAdapter.class )
@XmlElement( name = "link" )
Link self;
...
如前所述,如果我指定值
参数
"link": {
"uri": "/IAMWS/services/users/10",
"params": {
"rel": "self"
},
"type": null,
"rel": "self",
"title": null,
"rels": [
"self"
],
"uriBuilder": {
"absolute": false
}
}
而如果我指定资源
参数,我会得到:
javax.servlet.ServletException: java.lang.IllegalArgumentException: Template is null or has zero length
org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:487)
org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:425)
org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:383)
org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:336)
org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:223)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
...
我错过了什么?你的问题运气好吗?我也面临同样的问题。在我的例子中,资源是一个接口,而不是一个实现。“resource=”应该是resource=。