Элементы ColdFusion Web Services wsdl - PullRequest
2 голосов
/ 26 января 2011

Я работаю над обменом данными через веб-сервисы с другой организацией, которая использует ColdFusion.Мы оба будем отправлять и получать данные.В приведенном ниже примере мы будем делиться «электронными письмами» друг с другом.Мой WSDL (сгенерированный на основе моих классов .NET) определяет элементы (намного больше, чем в примере) и ComplexTypes, которые будут возвращаться в ответе.Их WSDL определяет, что они будут отправлять обратно строку (эта строка возвращает обратно данные, отформатированные, как я ожидал).Есть ли техническая причина, по которой их WSDL не определяет элементы, которые будут возвращаться в ответе?Если бы они могли технически сделать это, сколько усилий нужно реализовать в среде ColdFusion?

Примечание: Я разработчик .NET, и у меня нет опыта работы с ColdFusion, поэтомуЯ понятия не имею, в чем заключаются их ограничения.

Ниже приведены соответствующие части неактивной версии наших WSDL, образец которой был изменен на «электронная почта» для защиты невинных.

Соответствующиечасти .NET WSDL:

 <s:element name="EmailResponse">
    <s:complexType>
      <s:sequence>
        <s:element minOccurs="0" maxOccurs="1" name="EmailResult" type="tns:Emails" />
      </s:sequence>
    </s:complexType>
  </s:element>

  <s:complexType name="Emails">
    <s:sequence>
      <s:element minOccurs="0" maxOccurs="1" name="Email" type="tns:ArrayOfEmailObject" />
    </s:sequence>
  </s:complexType>
  <s:complexType name="ArrayOfEmailObject">
    <s:sequence>
      <s:element minOccurs="0" maxOccurs="unbounded" name="EmailObject" nillable="true" type="tns:EmailObject" />
    </s:sequence>
  </s:complexType>

  <s:complexType name="EmailObject">
    <s:sequence>
      <s:element minOccurs="1" maxOccurs="1" name="ID" type="s:int" />
      <s:element minOccurs="0" maxOccurs="1" name="subject" type="s:string" />
    </s:sequence>
  </s:complexType>

Соответствующая часть ColdFusion WSDL:

<wsdl:message name="displayEmailsResponse">
    <wsdl:part name="displayEmailsReturn" type="xsd:string" /> 
</wsdl:message>

Ответы [ 2 ]

3 голосов
/ 26 января 2011

Да, я думаю, что они могли бы это сделать.

Сколько нужно усилий для реализации в среде ColdFusion?

Просто нужно определить CFC и<cfproperty> правильно для зеркалирования ваших объектов Java.

см .: http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec22c24-78b2.html

0 голосов
/ 28 января 2011

Есть также некоторые ограничения, отмеченные между сборками CF и .NET. Я не уверен, применимы ли они к веб-сервисам, однако вы должны хотя бы знать о них. http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec13e1a-7fd4.html

Также обратите внимание, что ColdFusion написан на Java, поэтому могут возникнуть проблемы с преобразованием между Java и .Net. Надеюсь, это поможет.

...