Тип WSDL для геттера без параметра - PullRequest
5 голосов
/ 26 мая 2011

Я пытаюсь написать файл wsdl.И я начну с определения в элементе моих будущих операций.Поэтому мне нужно определить метод, как getAllObjects.Вот почему мне не нужно устанавливать какой-либо параметр getAllObjectsRequest.Может кто-нибудь сказать мне, как я должен определить свое сообщение и операции для метода, который не объявляет какие-либо входные параметры (например, ID в getById).

На данный момент у меня есть следующий код:

<type .....>
<xsd:element name="getAllObjectRequest">
                <xsd:complexType>
                    <xsd:sequence>
                    </xsd:sequence>
                </xsd:complexType>
</xsd:element>

        <xsd:element name="getAllObjectResponce">
            <xsd:complexType>
                <xsd:sequence>
                    <xsd:element name="allObject" type="wsbean:ObjectADB"
                        minOccurs="0" maxOccurs="unbounded"></xsd:element>
                </xsd:sequence>
            </xsd:complexType>
        </xsd:element>

Я думаю, что это не ядро.

Спасибо.

1 Ответ

9 голосов
/ 26 мая 2011

Этот синтаксис правильный.Если вам это не нравится, я предлагаю создать специальный тип маркера Void для таких сообщений:

<xsd:element name="getAllObjectRequest" type="Void"/>

<xsd:complexType name="Void">
    <xsd:sequence>
    </xsd:sequence>
</xsd:complexType>

Обратите внимание, что действительный запрос в сообщении SOAP выглядит следующим образом:

<getAllObjectRequest/>
...