Json 如何在客户端中使用apache cxf jaxb数据绑定
如何在方法的参数或返回类型中使用xml/json/pojo编写cxf ws的客户机代码? 以下是我编写的部分代码: 我的实体代码是:Json 如何在客户端中使用apache cxf jaxb数据绑定,json,xml,jaxb,cxf,jax-ws,Json,Xml,Jaxb,Cxf,Jax Ws,如何在方法的参数或返回类型中使用xml/json/pojo编写cxf ws的客户机代码? 以下是我编写的部分代码: 我的实体代码是: @XmlRootElement @XmlAccessorType(XmlAccessType.FIELD) public class Company implements Serializable{ private static final long serialVersionUID = 2735346136202386685L; private
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Company implements Serializable{
private static final long serialVersionUID = 2735346136202386685L;
private String id;
private String name;
...
我的服务器代码是:
@WebService(name="CompanyService",targetNamespace="http://test.cxf.com")
public interface CompanyServiceIF extends Remote{
/**
* add a new company
*
* @param company
* @return
*/
@WebResult(name = "addByObjectResponse", targetNamespace = "http://test.cxf.com/", partName = "parameters")
@WebMethod(operationName = "add", action = "urn:addCompany")
String addCompany(@WebParam(name="company")Company company);
...
我的客户代码是:
JaxWsDynamicClientFactory clientFactory = JaxWsDynamicClientFactory.newInstance();
Client client = clientFactory.createClient("http://127.0.0.1:8080/CXFTest/companyService?wsdl");
client.getInInterceptors().add(new LoggingInInterceptor());
client.getInFaultInterceptors().add(new LoggingOutInterceptor());
QName serviceName=new QName("http://test.cxf.com", "add");
Object[] result = client.invoke(serviceName, "");
我想这就是你想要的,我需要使用JaxWsDynamicClientFactory,因为我不想通过服务操作接口,假设我无法获得服务,我从一开始就已经看到了这个示例