Skip to Content
avatar image
Former Member

WebDynpro External Web Service Model

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.

GDT.Streets.US

<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>

<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] http://schemas.xmlsoap.org/soap/encoding/'> xsi:type='tns:MarkerDescription'>

<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'>

<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.

Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

1 Answer

  • Jul 29, 2004 at 01:30 PM

    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

    Add comment
    10|10000 characters needed characters exceeded