on 07-28-2004 7:21 AM
I am writing an application in web dynpro which uses web service model. In that model there are lot of complex data types.
External webservice i am using is
http://arcweb.esri.com/services/v2/MapImage.wsdl
I am facing couple of problems.
1.
If the webservice is having overloaded methods,it is generating error for the second overloaded method.The stub file itself contains statment as follow:
Response = new();
2.
While calling the methods there are some default values which are needed to be assigned to elements. So i am not binding such elements to any UI. I have created a context in a Component and liked with the web model. In woInit() method of the controller i am initializing request and binding it to the model. After that i am assigning the default values to some of the elements as follow for eg.
Request_xyz req = new Request_xyz();
wdCOntext.nodeRequest_xyz.bind(req);
req.setx("x");
XYZ x = new XYZ();
x.setT1("t1");
x.setT2{"t2");
req.setXYZ(x);
When i send the request what i observed that the values for the complex type XYZ is passing as null in the stub.
but the values of req.setx("x") is available.
Can you help me in this as it seems the problem with the serialization?
3.The function which I am trying to access needs some Complex data type array. When i checked the SOAP request i found that the namespace for the array type is getting blank values. Because of which SOAP response is giving exception.
The SOAP request is as below. For the <maker> which is an array ,the xmlns:tns='' is generated.
<mapImageOptions xsi:type='tns:MapImageOptions' xmlns:tns='http://www.themindelectric.com/package/com.esri.is.services.glue.v2.mapimage/'>
<dataSource xsi:type='xs:string'>GDT.Streets.US</dataSource>
<mapImageSize xsi:type='tns:MapImageSize'><width xsi:type='xs:int'>380</width><height xsi:type='xs:int'>500</height></mapImageSize>
<mapImageFormat xsi:type='xs:string'>gif</mapImageFormat>
<backgroundColor xsi:type='xs:string'>255,255,255</backgroundColor>
<outputCoordSys xsi:type='tns:CoordinateSystem' xmlns:tns='http://www.themindelectric.com/package/com.esri.is.services.common.v2.geom/'>
<projection xsi:type='xs:string'>4269</projection>
<datumTransformation xsi:type='xs:string'>dx</datumTransformation>
</outputCoordSys>
<drawScaleBar xsi:type='xs:boolean'>false</drawScaleBar>
<scaleBarPixelLocation xsi:nil='true' xsi:type='tns:PixelCoord'></scaleBarPixelLocation>
<returnLegend xsi:type='xs:boolean'>false</returnLegend>
[b<u>]<markers ns2:arrayType='tns:MarkerDescription[1]' xmlns:tns='' xmlns:ns2='http://schemas.xmlsoap.org/soap/encoding/'></u></b><item xsi:type='tns:MarkerDescription'><name xsi:type='xs:string'></name>
<iconDataSource xsi:type='xs:string'></iconDataSource><color xsi:type='xs:string'></color>
<label xsi:type='xs:string'></label>
<labelDescription xsi:nil='true' xsi:type='tns:LabelDescription'>
</labelDescription><location xsi:type='tns:Point' xmlns:tns='http://www.themindelectric.com/package/com.esri.is.services.common.v2.geom/'>
<x xsi:type='xs:double'>33.67</x><y xsi:type='xs:double'>39.44</y>
<coordinateSystem xsi:type='tns:CoordinateSystem'>
<projection xsi:type='xs:string'>4269</projection>
<datumTransformation xsi:type='xs:string'>dx</datumTransformation>
</coordinateSystem></location></item>
</markers><lines xsi:nil='true'>
</lines><polygons xsi:nil='true'></polygons><circles xsi:nil='true'></circles><displayLayers xsi:nil='true'></displayLayers>
</mapImageOptions>
Thanks,
Mital.
Hi Mital,
I believe that overloaded methods in web services are not WS-I compliant therefore I would caution you against using them.
All the Best
Peter
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
84 | |
10 | |
10 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.