0

我已经创建了一个解决方案。添加了 WSDL 文件。这继续弹出以下错误“需要长度”。

我在帖子中尝试了上面的代码(,但似乎不起作用。我们在哪里指定操作名称?

——阿南德

4

1 回答 1

2

在让它在 java c# .net 等中工作之前,您需要正确获取 SOAP xml。

操作名称作为标签添加到 soap 主体元素中。例如,您的操作名称是 OTRS UI Web 服务中指定的 createMyOTRSTicket。发送的 SOAP 请求应如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" 
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
    <createMyOTRSTicket xmlns="WS">          
         <UserLogin>MyUserName</UserLogin>
         <Password>MyPassword</Password>
             <Queue>'some queue name'</Queue>
             <State>'some state name'</State>
             <Priority>1</Priority>
             <!-- ...etc.. --> 
         <Article>
             <Subject>some subject</Subject>
             <Body>some body</Body>
             <ContentType>text/plain; charset=utf8</ContentType>
        </Article>
    </createMyOTRSTicket >
</soap:Body>
</soap:Envelope>

请参阅API,了解 TicketCreate 需要哪些元素以及哪些元素是可选

Soap 消息应发送到 /nph-genericinterface.pl/Webservice/CreateTicketWS,其中 CreateTicketWS 是 Web 服务的名称。另请注意,属性 xmlns="WS" 指的是您在“网络传输”配置中指定的命名空间,也位于 GenericInterface Web 服务管理中。我希望这可以帮助你。抱歉,对于 SOAP 和 OTRS 的新手来说,这可能有点令人困惑。

于 2013-08-20T01:27:16.917 回答