cancel
Showing results for 
Search instead for 
Did you mean: 

URGENT: Problem returning Comlex Types from Web Services

Former Member
0 Kudos

Hi,

     I have a web service generated out of an Ejb using the WebService wizard in the Netweaver Developer Studio. This WebService returns a complex type: ABC which is well defined as a seriazable class in the EJB Project itself.

   Now this complex type ABC consists of the following

    1. String str

    2. int x

    3. DEF def (note that DEF is again a complex type and is Serializable)

    4. XYZ[] xyzlist (nore that XYZ is again a complex type and is Serializable)

   After the Web Service is published using a Successful Deployment of the ear file

   we try to test it using the web based test interface

     http://localhost:50000/ABCService/Config

     We then give in the input parameters to the Web Service for the SOAP Request.

     When we get the SOAP Response, we do see the str and x i.e. 1 and 2 above.

     But the complex types DEF and XYZ[] are not even mentioned and looks like the webservice completely ignores them.

   pls advise if anyone has faced this problem. This is a very basic issue and would hinder a lot of Web Services development.

.V

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi,

I am writing an application in WebDynpo which needs to call External web service. This service has many complex data types. 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>

<markers ns2:arrayType='tns:MarkerDescription[1]' xmlns:tns='' xmlns:ns2='http://schemas.xmlsoap.org/soap/encoding/'>

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

Another problem:

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();

can anyone guide me on this?

Thanks,

Mital.

Former Member
0 Kudos

Hello Jake,

please keep in mind that the Sneak Preview Edition of Web AS 6.30 is a beta-version for evaluation purposes only. Not all the features that will work in the commercially available version work for this edition.

So your problem could be related to a bug, but it also could have other reasons.

One possible reason could be that you have not initialized the DEF and XYZ[] structures. And if they are "Null", they aren't sent (according to the WSDL definition).

Another possible reason is, that you first created the ABC structure, with only 1. and 2. and then created the VI. If you add afterwards DEF and XYZ to the ABC, the VI must be re-generated aferwards.

In the case this is a bug: in two months we will have an updated Sneak Preview Edition on SDN, the error you experience now should then be gone.

I hope this helps.

Many greetings

Ivo

Former Member
0 Kudos

Hi,

I am trying to use and external webservice model in web dynpro application.

http://arcweb.esri.com/services/v2/MapImage.wsdl

It has got many complex data types. Specially when i want to pass array of complex data type, i am getting SOAP error. As the xmlns:tns='' is generated in the SOAP request.

Also the values being set in the controller are getting null when sending the request. If i hard code this values in the stub files then the request works.

System COnfiguration:

Sap NetWeaver Web Aplication Server 6.40

Developer studio.2.5

Can you please guide me in this situation?

Thanks,

Mital