-
1. SAOP Client request generating problem
dulo Apr 5, 2011 11:11 AM (in response to dulo)part of code that sets Map for the request is:
requestMap.put("getLocationForGroup.addresses", "anything");
requestMap.put("getLocationForGroup.requestedAccuracy", "20");
requestMap.put("getLocationForGroup.acceptableAccuracy", "20");
requestMap.put("getLocationForGroup.tolerance", "NoDelay");
as you can see, problem is, that node addresses is missing in the request. Could you help me with this problem pls ?
-
2. SAOP Client request generating problem
tfennelly Apr 6, 2011 5:46 AM (in response to dulo)As I just pointed out to someone else... better idea would be to avoid that soapUI client and instead use an action pipeline that string a transformer action (to generate the SOAP payload) together with a HttpRouter action (to route the SOAP payload to the endpoint and get back the response).
On the face of it, it may seem like a bit more work, but you have full control and visibility with this option. My bet is that you'd get this working a lot faster and with a lot less bother.
-
3. SAOP Client request generating problem
rahmanford Apr 7, 2011 3:20 AM (in response to dulo)Hi,
Are you trying to create a soap client using ESB or normal soap client for the Terminal Location ?
Regards,
rahman
-
4. SAOP Client request generating problem
dulo Apr 7, 2011 10:43 AM (in response to rahmanford)A'm trying to create ESB and to use org.jboss.soa.esb.actions.soap.SOAPClient to generate and send request for the Terminal Location
-
5. SAOP Client request generating problem
dulo Apr 20, 2011 5:04 AM (in response to dulo)Hi, I have finally found the solution so I'm gonna share it.
The key problem is that WSDL schema defines maxOccurs="unbounded" for element "addresses". So when I want to put it into request map a have to use collections. Here is example:
List<String> list = new ArrayList<String>();
list.add("anything");
requestMap.put("getLocationForGroup.addresses", list);
Enjoy
-
6. Re: SAOP Client request generating problem
dulo Jun 2, 2011 11:09 AM (in response to dulo)I just noticed, that soapclient generates request like this
<soapenv:Envelope xmlns:loc="http://www.csapi.org/schema/parlayx/terminal_location/v2_3/local" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header />
<soapenv:Body>
<loc:getLocationForGroup>
<!--1 or more repetitions: - cloned-->
<loc:addresses /><loc:addresses /><loc:addresses />
<loc:requestedAccuracy />
<loc:acceptableAccuracy>20</loc:acceptableAccuracy>
<!--Optional:-->
<loc:maximumAge>
<metric />
<units />
</loc:maximumAge>
<!--Optional:-->
<loc:responseTime>
<metric />
<units />
</loc:responseTime>
<loc:tolerance>NoDelay</loc:tolerance>
</loc:getLocationForGroup>
</soapenv:Body>
</soapenv:Envelope>
so it can be seen, that elements named "addresses" are empty inspite of fact I set addresses :
List<String> list = new ArrayList<String>();
list.add("anything1");
list.add("anything2");
list.add("anything3");
requestMap.put("getLocationForGroup.addresses", list);
Could you tell me where is the problem, pls?