使用@HeaderParam&amp; amp;的cxf休息服务的HTML客户端列表<附件>

时间:2015-08-27 12:13:29

标签: java html web-services rest

我有@HeaderParam的cxf rest服务和List Attachment作为参数。我必须创建html客户端来调用服务。任何人都可以帮我设置headerparams,因为当我点击服务时,我得到以下异常

java.lang.RuntimeException: org.apache.cxf.interceptor.Fault: value can't be null for parameter param1

因为此参数设置为@NotNull&amp; NotBlank,并且无法在标题中找到。

1 个答案:

答案 0 :(得分:0)

此异常,因为必需的标头不可用作HttpRequest标头的一部分。

你必须煮熟你的代码来设置自定义标题。类似下面的代码,以便您的REST资源将使用传入请求标头中的参数

HttpClient client = HttpClientBuilder.create().build();
HttpGet request = new HttpGet("Your URL");

//Adding custom headers
request.addHeader("HEADER_NAME", "VALUE");
HttpResponse response = client.execute(request);

System.out.println("Http Response Code : " 
            + response.getStatusLine().getStatusCode());

BufferedReader reader = new BufferedReader(
    new InputStreamReader(response.getEntity().getContent()));

StringBuffer result = new StringBuffer();
String line = "";
while ((line = reader.readLine()) != null) {
    result.append(line);
}