← Prev in month ← Prev in thread
Next in thread → Next in month →

Interpretation of minOccur=0 and nillable=tue in the envelope.

From
Klein, Avi <>
Date
2004-05-30T06:39:59+00:00
ID
Thread
Interpretation of minOccur=0 and nillable=tue in the envelope.
Hi all,

 

This is an old issue we once had an E-mail thread on and is
still unresolved for the SAP Consumer.

 

I would appreciate your input on how do you interpret the
following case:

 

In the WSDL, the specific data type contains an element
which is “minOccur=0” and in runtime this element is in fact
null. How should it be presented in the envelope:

 
<elementname
     xsi:nill=true/> 

 
<elementname/>
     

 
omitted al together
     

 

 

In the WSDL, the specific data type contains an element
which is “nillable="true" and in runtime this element is in
fact null. How should it be presented in the envelope:

 
<elementname
     xsi:nill=true/> 

 
<elementname/>
     

 
omitted al together
     

 

I experience different behavior from the IBM producer and
the Oracle producer for these cases: for example IBM producer permits
xsi:nill=true for registration context in getMarkup while Oracle don’t.
And Oracle allows omitting minOccur=0 elements while IBM don’t.

 

 

[

This is the xsd:

  <element name="getMarkup">

    <complexType>

     
<sequence>

       
<element
name="registrationContext" type="types:RegistrationContext"
nillable="true"/>

       
<element name="portletContext"     
type="types:PortletContext"/>

       
<element name="runtimeContext"      type="types:RuntimeContext"/>

       
<element
name="userContext"        
type="types:UserContext" nillable="true"/>

       
<element
name="markupParams"       
type="types:MarkupParams"/>

     
</sequence>

    </complexType> 

]

 

For the following request to Oracle producer:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wn3="http://www.w3.org/1999/XMLSchema" xmlns:wn2="http://www.w3.org/2000/10/XMLSchema" xmlns:wn1="http://www.w3.org/2001/XMLSchema" xmlns:wn0="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wn4="urn:oasis:names:tc:wsrp:v1:wsdl" xmlns:tns="urn:oasis:names:tc:wsrp:v1:wsdl">

       <SOAP-ENV:Body>

             <prt0:getMarkup xmlns:prt0="urn:oasis:names:tc:wsrp:v1:types">

                    <prt0:registrationContext>

                           <prt0:registrationHandle>C:148.87.122.191:4c7e10:f942d6eb23:-1f4</prt0:registrationHandle>

                    </prt0:registrationContext>

                    <prt0:portletContext>

                           <prt0:portletHandle>E:1:default</prt0:portletHandle>

                    </prt0:portletContext>

                    <prt0:runtimeContext>

                           <prt0:userAuthentication>wsrp:none</prt0:userAuthentication>

                           <prt0:portletInstanceKey/>

                    </prt0:runtimeContext>

                    <prt0:userContext>

                           <prt0:userContextKey>USER.PRIVATE_DATASOURCE.un:testadmin</prt0:userContextKey>

                    </prt0:userContext>

                    <prt0:markupParams>

                           <prt0:secureClientCommunication>false</prt0:secureClientCommunication>

                           <wn1:locales>en-US</wn1:locales>

                           <wn1:mimeTypes>text/html</wn1:mimeTypes>

                           <prt0:mode>wsrp:view</prt0:mode>

                           <prt0:windowState>wsrp:normal</prt0:windowState>

                           <prt0:navigationalState/>

                    </prt0:markupParams>

             </prt0:getMarkup>

       </SOAP-ENV:Body>

</SOAP-ENV:Envelope>

 

I get:

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns0="urn:oasis:names:tc:wsrp:v1:types" env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

       <env:Body>

             <env:Fault>

                    <faultcode>env:Server</faultcode>

                    <faultstring>Internal Server Error (deserialization error:
deserialization error: expected element is missing:
{http://www.w3.org/2001/XMLSchema}locales)</faultstring>

             </env:Fault>

       </env:Body>

</env:Envelope>

 

 

I’ll appreciate any lead on what does your producer
expect to receive as a valid request (a sample of a received valid request
envelope etc.).

 

Thanks a lot,

 

Avi.
← Prev in month ← Prev in thread
Next in thread → Next in month →