Re: Attribute "id" was already specified for element "multiRef" Exception, how to custmoize soap response.

2006-08-23 Thread xu cai
Anne, thanks for your valuable reply, it helps and I learn much from it. 
 
On 8/23/06, Anne Thomas Manes <[EMAIL PROTECTED]> wrote:
To turn off multi-refs, add this parameter to the WSDD:
This is the Axis option you use to turn off multi-refs. The resultingmessage is SOAP compliant. (The SOAP spec doesn't require use ofmulti-refs, and it doesn't specify how to indicate whether to use them
or not.)Regarding SOAP encoding versus literal:SOAP encoding is an out-dated data model for mapping language objectsto XML. Literal maps the language object to a structure defined by XMLSchema. When SOAP was first published in 2000, the XML Schema
specification wasn't completed, so the SOAP authors defined their owndata model. But SOAP encoding was not completely specified, and itoften generates gnarly interoperability issues. The WS-I Basic Profile
outlaws use of SOAP encoding, and in SOAP 1.2, support for SOAPencoding is optional.Another pertinent fact: SOAP encoding is much slower than literal.You can indicate that you want to use literal in the WSDL, WSDD, or Java2WSDL.
In the WSDL binding, you specify: In WSDD, you specify:  style="wrapped" use="literal"In Java2WSDL, you specify:
   -y, --style WRAPPED  -u, --use LITERALAnneOn 8/22/06, xu cai <[EMAIL PROTECTED]> wrote:>> hi Anne,>Thanks for your valued reply.
>I appreciate it.>Could you answer me some questions  further ?> 1) For options 3, How to turn off multi-refs ?> Is the multi-ref option a part of soap spec, or just a part of Axis
> implementation ?>> 2) For option 4,  Use literal rather than SOAP encoding> what's the difference of literal and soap encoding ?> how to change encoding style ?> it's the axis implementation issue or spec issue ?
 On 8/19/06, Anne Thomas Manes <[EMAIL PROTECTED]> wrote:> >> Options:>> 1. Change the schema and specify that the "id" attribute must be
> namespace qualified,>e.g., > 2. Change the schema and specify a different name for the attribute> 3. Turn off multi-refs
> 4. Use literal rather than SOAP encoding>> Anne>> On 8/18/06, xu cai <[EMAIL PROTECTED]> wrote:> >> > I got a weird issue.
> > In my case, the soap response generated by axis engine is not a valid xml,> > because there are two "id" attribute in multiRef element.> >> > see  the snippet :> >
> >> > soapenv:encodingStyle=" http://schemas.xmlsoap.org/> > soap/encoding/" id="mgw_monitoring_enabled" xsi:type="ns4:ReplyColumn"
> > xmlns:ns4=" http://www.foo> > .com/" xmlns:soapenc="> > http://schemas.xmlsoap.org/soap/encoding/
">Y> >> > the first "id" attribute is the id of the element, it's referenced by> other> > element. as you know, the soap response generated by axis always looks so,
> > there are so many "mutiRef" element. ...> >> > the second "id" attribute is the caused by my wsdl file , it means the> "id"> > of this record, it's the content of the reply data.
> > WSDL interface is finalized, I also think the "id" attribute make sense> and> > should be changed.> >> > So my question is,  is there any way to fix this porblem. allow customer
> add> > a attribute "id" to their expected reply data ?> >> > Since "id" attribute is used by "multiRef", can we define "id" attribute> in
> > wsdl ?  > >>  > many thanks> >> >> >> > --> > - xucai>> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]> For additional commands, e-mail: [EMAIL PROTECTED]
> --> - xucai-To unsubscribe, e-mail: 
[EMAIL PROTECTED]For additional commands, e-mail: [EMAIL PROTECTED]-- - xucai 


Re: Attribute "id" was already specified for element "multiRef" Exception, how to custmoize soap response.

2006-08-22 Thread Anne Thomas Manes

To turn off multi-refs, add this parameter to the WSDD:



This is the Axis option you use to turn off multi-refs. The resulting
message is SOAP compliant. (The SOAP spec doesn't require use of
multi-refs, and it doesn't specify how to indicate whether to use them
or not.)

Regarding SOAP encoding versus literal:

SOAP encoding is an out-dated data model for mapping language objects
to XML. Literal maps the language object to a structure defined by XML
Schema. When SOAP was first published in 2000, the XML Schema
specification wasn't completed, so the SOAP authors defined their own
data model. But SOAP encoding was not completely specified, and it
often generates gnarly interoperability issues. The WS-I Basic Profile
outlaws use of SOAP encoding, and in SOAP 1.2, support for SOAP
encoding is optional.

Another pertinent fact: SOAP encoding is much slower than literal.

You can indicate that you want to use literal in the WSDL, WSDD, or Java2WSDL.
In the WSDL binding, you specify:

 

In WSDD, you specify:

  style="wrapped" use="literal"

In Java2WSDL, you specify:

   -y, --style WRAPPED
  -u, --use LITERAL

Anne

On 8/22/06, xu cai <[EMAIL PROTECTED]> wrote:


hi Anne,
   Thanks for your valued reply.
   I appreciate it.
   Could you answer me some questions  further ?
1) For options 3, How to turn off multi-refs ?
Is the multi-ref option a part of soap spec, or just a part of Axis
implementation ?

2) For option 4,  Use literal rather than SOAP encoding
what's the difference of literal and soap encoding ?
how to change encoding style ?
it's the axis implementation issue or spec issue ?



On 8/19/06, Anne Thomas Manes <[EMAIL PROTECTED]> wrote:
>
Options:

1. Change the schema and specify that the "id" attribute must be
namespace qualified,
   e.g., 
2. Change the schema and specify a different name for the attribute
3. Turn off multi-refs
4. Use literal rather than SOAP encoding

Anne

On 8/18/06, xu cai <[EMAIL PROTECTED]> wrote:
>
> I got a weird issue.
> In my case, the soap response generated by axis engine is not a valid xml,
> because there are two "id" attribute in multiRef element.
>
> see  the snippet :
>
> soapenv:encodingStyle=" http://schemas.xmlsoap.org/
> soap/encoding/" id="mgw_monitoring_enabled" xsi:type="ns4:ReplyColumn"
> xmlns:ns4=" http://www.foo
> .com/" xmlns:soapenc="
> http://schemas.xmlsoap.org/soap/encoding/";>Y
>
> the first "id" attribute is the id of the element, it's referenced by
other
> element. as you know, the soap response generated by axis always looks so,
> there are so many "mutiRef" element. ...
>
> the second "id" attribute is the caused by my wsdl file , it means the
"id"
> of this record, it's the content of the reply data.
> WSDL interface is finalized, I also think the "id" attribute make sense
and
> should be changed.
>
> So my question is,  is there any way to fix this porblem. allow customer
add
> a attribute "id" to their expected reply data ?
>
> Since "id" attribute is used by "multiRef", can we define "id" attribute
in
> wsdl ?  
>
 > many thanks
>
>
>
> --
> - xucai

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
- xucai


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Attribute "id" was already specified for element "multiRef" Exception, how to custmoize soap response.

2006-08-22 Thread xu cai
hi Anne,
   Thanks for your valued reply. 
   I appreciate it. 
   Could you answer me some questions  further ?
1) For options 3, How to turn off multi-refs ?
Is the multi-ref option a part of soap spec, or just a part of Axis implementation ?
 
2) For option 4,  Use literal rather than SOAP encoding
what's the difference of literal and soap encoding ?  
how to change encoding style ?
it's the axis implementation issue or spec issue ?
 
On 8/19/06, Anne Thomas Manes <[EMAIL PROTECTED]> wrote:
Options:1. Change the schema and specify that the "id" attribute must benamespace qualified,
   e.g., 2. Change the schema and specify a different name for the attribute3. Turn off multi-refs4. Use literal rather than SOAP encoding
AnneOn 8/18/06, xu cai <[EMAIL PROTECTED]> wrote:>> I got a weird issue.> In my case, the soap response generated by axis engine is not a valid xml,
> because there are two "id" attribute in multiRef element.>> see  the snippet :>>> soapenv:encodingStyle="
http://schemas.xmlsoap.org/> soap/encoding/" id="mgw_monitoring_enabled" xsi:type="ns4:ReplyColumn"> xmlns:ns4="
http://www.foo> .com/" xmlns:soapenc="> http://schemas.xmlsoap.org/soap/encoding/">Y>> the first "id" attribute is the id of the element, it's referenced by other
> element. as you know, the soap response generated by axis always looks so,> there are so many "mutiRef" element. ...>> the second "id" attribute is the caused by my wsdl file , it means the "id"
> of this record, it's the content of the reply data.> WSDL interface is finalized, I also think the "id" attribute make sense and> should be changed.>> So my question is,  is there any way to fix this porblem. allow customer add
> a attribute "id" to their expected reply data ?>> Since "id" attribute is used by "multiRef", can we define "id" attribute in> wsdl ?  >
> many thanks --> - xucai-To unsubscribe, e-mail: 
[EMAIL PROTECTED]For additional commands, e-mail: [EMAIL PROTECTED]-- - xucai 


Re: Attribute "id" was already specified for element "multiRef" Exception, how to custmoize soap response.

2006-08-18 Thread Anne Thomas Manes

Options:

1. Change the schema and specify that the "id" attribute must be
namespace qualified,
   e.g., 
2. Change the schema and specify a different name for the attribute
3. Turn off multi-refs
4. Use literal rather than SOAP encoding

Anne

On 8/18/06, xu cai <[EMAIL PROTECTED]> wrote:


I got a weird issue.
In my case, the soap response generated by axis engine is not a valid xml,
because there are two "id" attribute in multiRef element.

see  the snippet :

   http://schemas.xmlsoap.org/
soap/encoding/" id="mgw_monitoring_enabled" xsi:type="ns4:ReplyColumn"
xmlns:ns4="http://www.foo
.com/" xmlns:soapenc="
http://schemas.xmlsoap.org/soap/encoding/";>Y

the first "id" attribute is the id of the element, it's referenced by other
element. as you know, the soap response generated by axis always looks so,
there are so many "mutiRef" element. ...

the second "id" attribute is the caused by my wsdl file , it means the "id"
of this record, it's the content of the reply data.
WSDL interface is finalized, I also think the "id" attribute make sense and
should be changed.

So my question is,  is there any way to fix this porblem. allow customer add
a attribute "id" to their expected reply data ?

Since "id" attribute is used by "multiRef", can we define "id" attribute in
wsdl ?  

many thanks



--
- xucai


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Attribute "id" was already specified for element "multiRef" Exception, how to custmoize soap response.

2006-08-18 Thread xu cai
I got a weird issue.
In my case, the soap response generated by axis engine is not a valid xml, because there are two "id" attribute in multiRef element.  
 
see  the snippet : 
 
   id="id4" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" 
id="mgw_monitoring_enabled" xsi:type="ns4:ReplyColumn" xmlns:ns4="http://www.foo.com/" xmlns:soapenc="Y
http://schemas.xmlsoap.org/soap/encoding/">Y>   
the first "id" attribute is the id of the element, it's referenced by other element. as you know, the soap response generated by axis always looks so, there are so many "mutiRef" element. ...

 
the second "id" attribute is the caused by my wsdl file , it means the "id" of this record, it's the content of the reply data. 
WSDL interface is finalized, I also think the "id" attribute make sense and should be changed.
 
So my question is,  is there any way to fix this porblem. allow customer add a attribute "id" to their expected reply data ?
 
Since "id" attribute is used by "multiRef", can we define "id" attribute in wsdl ?  
 
many thanks
-- - xucai