TMACUL

CA SDM Brasil::. LINGUAGEM SPEL: Como executar funções SPEL por meio de Webservices - 2016-06-20

Blog Post created by TMACUL Champion on Jan 31, 2017

LINGUAGEM SPEL: Como executar funções SPEL por meio de Webservices


Hoje li um artigo muito legal disponível na comunidade CA que ensina como executar funções SPEL por meio de Webservices (SOAP).

Basicamente funciona assim:
1) O método precisa ser registrado em um arquivo .MAJ na pasta $NX_ROOT/site/mods/majic. Exemplo:
// FILENAME: z_api.maj
OBJECT api {
FACTORY {
METHODS {
z_echo(...);
};
};
};

2) O método precisa ser criado em um arquivo .SPL na mesma pasta Majic informada no passo anterior. Exemplo:
// FILENAME: z_api.spl
api::z_echo(...) {
int i;
for (i=0;i<argc;i++) {
set_return_data(i, argv[i]);
}
}

3) A chamada SOAP é feita utilizando o seguinte formato de envelope:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://www.ca.com/UnicenterServicePlus/ServiceDesk">
<soapenv:Header/>
<soapenv:Body>
<ser:callServerMethod>
<sid>1141608663</sid>
<methodName>z_echo</methodName>
<factoryName>api</factoryName>
<formatList></formatList>
<parameters>
<string>Hello</string>
<string>World</string>
<string>!!!</string>
</parameters>
</ser:callServerMethod>
</soapenv:Body>
</soapenv:Envelope>

4) A resposta é dada no formato abaixo:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<callServerMethodResponse xmlns="http://www.ca.com/UnicenterServicePlus/ServiceDesk">
<callServerMethodReturn xmlns=""><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<ServerReturn>
<Param0>Hello</Param0>
<Param1>World</Param1>
<Param2>!!!</Param2>
</ServerReturn>]]></callServerMethodReturn>
</callServerMethodResponse>
</soapenv:Body>
</soapenv:Envelope>

Neste exemplo de função "z_echo", todos os parametros informados na chamada são devolvidos da mesma forma.
Agora é só usar a imaginação... :)

 

Mais informações no link abaixo:
SPEL: How to call SDM method using WebServies 

Timur

 

Abraço a todos!

 

 

publish originally: May 20 of 2016

From: CA SDM Brasil 

criada Por: Daniel Bighelini

 

 

 

CA SDM Brasil Sumário - Índice 

Outcomes