Hi
all,
I'm having a problem
with namespace prefixes in 1.1. My schema has a sequence of 0..n customer
accounts. Say the accounts belong to ns1. Each account has an
account key, belonging to a different namespace, ns2. Each account key has
3 mandatory and 2 optional children. I'm only populating the mandatory
children. The first mandatory child is a ref from a 3rd namespace,
ns3. The next 2 mandatory children are part of the account key's
namespace. When Axis sends a response to a client, the array
gets serialized like this:
<ns1:clientAccount
xmlns:ns1="...">
<ns2:accountKey xmlns:ns2="...">
<ns3:child1 xmlns=ns3="...">...</ns3:child1>
<child2>...<child2>
<child3>...<child3>
</ns2:accountKey>
</ns1:clientAccount>
<ns4:clientAccount
xmlns:ns4="...">
<ns5:accountKey xmlns:ns5="...">
<ns6:child1 xmlns=ns6="...">...</ns6:child1>
<ns5:child2>...</ns5:child2>
<ns5:child3>...</ns5:child3>
</ns5:accountKey>
</ns4:clientAccount>
The problem is
that child2 and child3 in the first clientAccount need namespace prefixes but
don't have them. There is a default namespace output by Axis but those
children are not in it. Oddly, subsequent accountKeys in the array are
fine. At the risk of confusing things further, when we output the content
of our response using SerializationContextImpl(writer, msgCtx).serialize(), things are fine. Using the debugger,
I can see that Axis and our code are calling that method with the same
params. Dunno about the constructor yet.
I'm SLOWLY working through this with the debugger
but would appreciate some hints.
thanks
John Gregg
Application Systems
Engineer
Wells Fargo Private Client Services
Technology