我有一個web服務,並從這個web服務,我應該傳遞一個obejct到另一個服務。我嘗試使用@Pathparam和@QueryParam,但Iam沒有獲取我的服務中的值。將對象傳遞給另一個web服務
我在哪裏傳遞對象的代碼是
public void MediatorCmpService() {
ClientConfig config = new DefaultClientConfig();
Client client = Client.create(config);
WebResource service = client.resource(getBaseURI());
boolean flag = validateConfig(iFGetResponse);
if (flag) {
CustomerData customerData = transformationPayload(iFGetResponse);
TrilliumxmlProducer tri=new TrilliumxmlProducer(customerData);
}
System.out.println(flag);
}
在這裏,我傳遞customerData反對我TrilliumxmlProducer服務。但是,這對象沒有被傳遞到TrilliumxmlProducer服務
的TrilliumxmlProducer的代碼是
@Path("/generateTrillium")
public class TrilliumxmlProducer {
// This method is called if XMLis request
public TrilliumxmlProducer(CustomerData customerData) throws JAXBException {
getXML(customerData);
// TODO Auto-generated constructor stub
}
@GET
@Produces({ MediaType.APPLICATION_XML })
public CustomerData getXML(@QueryParam("customerData") CustomerData customerData) throws JAXBException {
System.out.println("--------2----------" + customerData.getREQUESTTYPE());
return customerData;
}
}
這裏我的目標是給空指針異常。任何人都可以幫我在這裏
感謝您的回覆所以我是否可以將該對象直接傳遞給服務方法,即在服務方法中我可以接受作爲公共CustomerData getXML(CustomerData customerData) – user1984839 2013-03-20 14:04:34
我不太確定你要做什麼。如果你想傳遞一個對象,你應該用JSON或者XML(在請求體中),使用POST(創建)或者PUT(用於更新)。 RESTFul web服務通常只使用GET進行讀取/讀取操作。 – 2013-03-20 14:09:06