Exposing Soap WebService Enum

Exposing Soap WebService Enum

  

Hello all

I am using version 10, and I am trying to expose a soap WebService recreating the following element in outsytems:


<s:simpleType name="Test1">

        <s:restriction base="s:string">

          <s:enumeration value="Input" />

          <s:enumeration value="Output" />

        </s:restriction>

    </s:simpleType>


To understand how the outsystems responses to it, I consume this element and saw how was created in the platform. Then i tried to do the  same to expose: create a static entity (enum_test) with "input" and "output" records, define the attribute element Test1 as Enum_Test identifier and in the method create an input parameter with type Enum_Test identifier, this simple type element is not created in the generated WSDL file.


How do I recreate this element in outsystems in order to get it in the WSDL file?

Solution

Hi Rita,


You cannot do it, Enum support in SOAP is for consume only. 

I suggest you to vote on this idea: https://www.outsystems.com/ideas/2171/webservices-enumerated-types-in-expose-soap


Regards,

João Rosado

Solution

hello João

Thanks for your reply, I have already voted for that idea! 

Another question is it possible to recreate  "ref" instead of type in outsystems (either to consume or to expose), see below:

<s:element name="Teste1">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" ref="s2:Teste2" />
          </s:sequence>
        </s:complexType>
      </s:element>

Ps: This is an old WSDL file so it's possible it doesn't have the best practices 





Hi,


The consume does not have that limitation listed, so I think it should work. If it doesn't, we would like to have your wsdl example to see if it can be improved. So in that case do a submit feedback from service studio if you have difficulties importing it.


The expose on the other hand is not designed to be flexible at that point. It was not meant for developers to be able to create a service that exposes with the desired structure/content/names to match exactly an existing wsdl.


Regards,
João Rosado

Hi

I try to consume it, but it didn't work.

 Attached you can find the file 

That is exactly my case, I have an existing web service that uses the WSDL  file an I am trying to recreate the content in outsystems to expose it, and these were the two limitations I found (Ref and Enum)