cancel
Showing results for 
Search instead for 
Did you mean: 

Unable to execute webservice model.

Former Member
0 Kudos

Hi,

The scenario I have in hand is this -

I have created a Webdynpro application wherein I have a <b>Webservice model</b>(Created from a WSDL file), a <b>custom controller</b>, a <b>view</b> which is mapped to my controller.

The structure of my context is as below -

Context
  |-OrderWS
      |- RequestNode
          |-Item
             |-Item1
             |-Item2
             |-Item3
          |-Order
             |-ItemA
             |-ItemB
       |-ResponseNode

The properties of the nodes are as below -

Property of <b>orderWS node</b>

Cardinality : 0...1

Collection Type: list

initialleadselection:true

selection:0..1

singleton: true

typedaccessrequired: true

Property of <b>Requestnode</b>

Cardinality : 0...1

Collection Type: list

initialleadselection:true

selection:0..1

singleton: true

typedaccessrequired: true

Property of <b>NodeA</b> & <b>Node B</b>

Cardinality : 0...1

Collection Type: list

initialleadselection:true

selection:0..1

singleton: true

typedaccessrequired: true

I have done the necessary mappings between my view

<->Controller <-> Model.

When I execute my application , I get an error message "Service call exception; nested exception is: com.sap.engine.services.webservices.jaxrpc.exceptions.XmlMarshalException: XML Serialization Error. Property [Node B] of class [com.sample.createorder.proxies.types.DT_OrderREQUEST_HTTP] must exist and can not be null. This is required by schema description."

Is this because I have not set certain values of the "order" node?

Have I missed out anything necessary to execute the model?

Please suggest.

-Ashwini.

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hello Ashwini,

Check out this thread . I guess this work around will solve your problem.

Bala

Former Member
0 Kudos

Hi Ashwini,

You need to set certain attributes before calling the webservice.

Please check the mandatory attributes and set those attributes uisng

wdContext.current<<Node>>element().set<<Attrib>>(<<Value>>)

and call the webservice.

Best Regards, Anilkumar

Former Member
0 Kudos

You will not be able to change it from the view. Try to change it from the controller as the nodes are mapped to the controller from the view.

Noufal

Former Member
0 Kudos

Hi Ashwini,

change the cardinality property of your Request node to 1...1 or 1...n. It shouldn't be 0...1.

Regards,

Satyajit.

Message was edited by: Satyajit Chakraborty

Former Member
0 Kudos

Hi Satyajit,

How do I change the cardinality of the Request node? I did try changing the same from the Properties tab, but could not as it was not editable..

Please help.

Regards,

Ashwini