TomEE 및 CXF를 사용하여 REST 클라이언트를 구현하는 데 올바른 종속성을 찾을 수 없습니다.MultivaluedMap을 사용하여 tomee 및 CXF를 사용하여 REST 클라이언트를 구현하는 방법은 무엇입니까?
<dependency>
<groupId>org.apache.openejb</groupId>
<artifactId>tomee-jaxrs</artifactId>
<version>1.7.1</version>
<scope>provided</scope>
</dependency>
초기 클라이언트 구현이 간단하다
내 모듈이 의존성을 가지고있다. 그것은 post 메소드를 제공하고 MultiValueMap을 제출해야합니다.
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.MultivaluedMap;
import org.apache.cxf.jaxrs.client.WebClient;
import org.apache.cxf.jaxrs.ext.form.Form;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class RestClient<T> {
private static final Logger LOG = LoggerFactory.getLogger(RestClient.class);
private WebClient client;
private Class<T> type;
public RestClient(Class<T> aType, String aBaseUrl, String aPath) {
this.client = WebClient.create(aBaseUrl);
this.client.path(aPath);
this.client.accept(MediaType.APPLICATION_JSON);
this.type = aType;
}
public T post(MultivaluedMap<String, String> params) {
LOG.debug("sending POST request to: " + this.client.getCurrentURI());
Form theForm = new Form(params);
T theReponse = (T) this.client.post(theForm, this.type.getClass());
return theReponse;
}
}
문제는 내가 javax.ws.rs.core.MultivaluedMap의 구현을 알아낼 수 있다는 것입니다. 결과에서 나는 나의 방법을 부를 수 없다. : CXF가 pom.xml에서 완전히 제공되지 않았으며이 인터페이스를 구현하지 않았습니까? tomEE를 사용하여 CXF를 올바르게 사용하려면 어떤 종속성을 사용해야합니까?
내가 웹에 어떤 예를 찾을 수 없습니다. CXF와
감사합니다. 당신! 도움이되었습니다. 어쨌든 json에서 T로 마샬링하는 것은 작동하지 않지만 다른 문제입니다. –