Bonjour,
je suis entrain de développer un ptit client pour des webServices, dans les spec d'un webService donnée j'ai comme paramètres IN:
List <Contract>
[Contract
1. SIMOrder simOrder
2. List<AccessoriesOrder> accessoriesOrderList
3. HansetOrder handsetOrder
],
[SIMOrder
1. String ftReference(AAA-001)]
[ AccessoriesOrder
1. String ftReference(AAA-002)]
2. String sellingPrice(10.20)]
[HandSetOrder
1. String ftReference(AAA-003)]
2. String sellingPrice(12.20)
]
Du coup j'ai codé des classes pour avoir cette architecure et à la fin je passe
un objet Contract dont la classe est la suivante:
et dans mon client du webService:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 public class Contract { private SIMOrder simOrder; private HandsetOrder handSetOrder; private List accessoriesOrderList; public Contract() { super(); // TODO Auto-generated constructor stub } public Contract(SIMOrder simOrder, HandsetOrder handSetOrder, List accessoriesOrderList) { super(); this.simOrder = simOrder; this.handSetOrder = handSetOrder; this.accessoriesOrderList = accessoriesOrderList; } public HandsetOrder getHandSetOrder() { return handSetOrder; } public void setHandSetOrder(HandsetOrder handSetOrder) { this.handSetOrder = handSetOrder; } public SIMOrder getSimOrder() { return simOrder; } public void setSimOrder(SIMOrder simOrder) { this.simOrder = simOrder; } public List getAccessoriesOrderList() { return accessoriesOrderList; } public void setAccessoriesOrderList(List accessoriesOrderList) { this.accessoriesOrderList = accessoriesOrderList; } }
En gros je passe aux objets Bean,générés à partir du wsdl fourni, mon objet Contract mais j'ai l'exception suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 ////// /Test 3 GenerateOrderRequestBean orderReqBean = new GenerateOrderRequestBean (); orderReqBean.setUserId("dealer"); Contract contract = new Contract(); SIMOrder simOrder = new SIMOrder(); simOrder.setFtReference("61"); contract.setSimOrder(simOrder); Contract[] contracts = {contract}; //contracts.add(contract); //orderReqBean.setContractList(contractCollection); orderReqBean.setContractList(contracts); GenerateOrderResponseBean orderRspBean = port.generateOrder(orderReqBean); String errorCode = orderRspBean.getCodeError(); String returnCode =orderRspBean.getCodeReturn(); logger.info("After get Response Bean Test 3 : "+returnCode+" Error is: "+errorCode);
INFO: After get Response Bean Test 1 : FAILURE Error is: ERROR :: System or Application error. Please contact stock administrator.
Apr 15, 2008 4:09:30 PM org.apache.axis.attachments.AttachmentsImpl getAttachmentCount
WARNING: Exception:
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.io.IOException: No serializer found for class com.cge.mvne.ft.customer.simCardManager.webServicesObjects.Contract in registry org.apache.axis.encoding.TypeMappingDelegate@1286b10
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:java.io.IOException: No serializer found for class com.cge.mvne.ft.customer.simCardManager.webServicesObjects.Contract in registry org.apache.axis.encoding.TypeMappingDelegate@1286b10
Partager