I have already posted this problem on the forum,
but dare to do it again as I was unable to find
In the controller's context I have a structure like
this (in fact the structure is more complex, but it's
enough to describe the problem; I have also shortened
the node names for simplicity):
where [MN] is "model node", [MA] is "model attribute".
The above structure in the controller's context
is mapped into the same structure in the model layer.
This structure (in the model layer) is used
as input/output data for calling a web service
(component controller acts as a service controller).
Before calling the web service, I set the values of both:
- Context.updateDoc.boxId and
The problem is that after calling the web service,
I get the following error message:
"Service call exception; nested exception is:
XML Serialization Error. Property [Dinfo] of class
must exist and can not be null.
This is required by schema description."
This message suggests that there is no docInfo subtree
in the data structure passed to the web service (docInfo
is of type Dinfo).
The problem does not appear when I set the value
of an attribute which is a direct child of the
updateDoc node (boxId is an example of such an
attribute). The error pops up only with attributes
nested deeper in the tree structure.
I use the following pattern for setting the attribute values (I set the values in the controller's code):
For example in order to set the value of the docId,
I have checked that the value does get set in the
context (I display it in the view). But as soon as
I call the web service, I get the above serialization
error (which indicates that the data structure passed
to the web service does not contain the required
I have double checked all of the mappings.
I have double checked if the WSDL of the web service
hasn't been modified after I created the model.
As I said, the problem is only with nested attributes
(the ones that are children of the updateDoc node do
not cause any problems).