Bom dia
Gostaria de saber se é possivel e como posso executar um WebService de asp.net (asm) no oracle Forms PL/SQL.
Cumprimentos,
Daniel Gomes
Executar um WebService
-
- Moderador
- Mensagens: 1396
- Registrado em: Sex, 01 Fev 2008 2:06 pm
- Localização: Rio de Janeiro - RJ
- Contato:

CREATE OR REPLACE FUNCTION get_city_from_zipcode (p_zipcode IN VARCHAR2)
RETURN VARCHAR2
AS
l_request soap_api.t_request;
l_response soap_api.t_response;
l_return VARCHAR2(32767);
l_url VARCHAR2(32767);
l_namespace VARCHAR2(32767);
l_method VARCHAR2(32767);
l_soap_action VARCHAR2(32767);
l_result_name VARCHAR2(32767);
BEGIN
-- Set proxy details if no direct net connection.
--UTL_HTTP.set_proxy('myproxy:4480', NULL);
--UTL_HTTP.set_persistent_conn_support(TRUE);
-- Set proxy authentication if necessary.
--soap_api.set_proxy_authentication(p_username => 'myusername',
-- p_password => 'mypassword');
l_url := 'http://webservices.imacination.com/distance/Distance.jws';
l_namespace := 'xmlns="' || l_url || '"';
l_method := 'getCity';
l_soap_action := l_url || '#getCity';
l_result_name := 'getCityReturn';
l_request := soap_api.new_request(p_method => l_method,
p_namespace => l_namespace);
soap_api.add_parameter(p_request => l_request,
p_name => 'zip',
p_type => 'xsd:string',
p_value => p_zipcode);
l_response := soap_api.invoke(p_request => l_request,
p_url => l_url,
p_action => l_soap_action);
l_return := soap_api.get_return_value(p_response => l_response,
p_name => l_result_name,
p_namespace => l_namespace);
RETURN l_return;
END;
/
-
- Moderador
- Mensagens: 1396
- Registrado em: Sex, 01 Fev 2008 2:06 pm
- Localização: Rio de Janeiro - RJ
- Contato:

l_soap_action
-
- Moderador
- Mensagens: 1396
- Registrado em: Sex, 01 Fev 2008 2:06 pm
- Localização: Rio de Janeiro - RJ
- Contato:

Bom Daniel...
o que quer fazer?
consumir via pl/sql um serviço que foi escrito em asp.net .. certo?!
os serviço pode ter diferentes port types (estes são os métodos que o desenvolvedor do serviço disponibilizado implementou) e dai resta você saber qual você quer chamar e passar isso via parametro atraves da url do end Point do serviço
basicamente
este trecho abaixo que você deve customizar
o que quer fazer?
consumir via pl/sql um serviço que foi escrito em asp.net .. certo?!
os serviço pode ter diferentes port types (estes são os métodos que o desenvolvedor do serviço disponibilizado implementou) e dai resta você saber qual você quer chamar e passar isso via parametro atraves da url do end Point do serviço
basicamente
este trecho abaixo que você deve customizar
l_url := 'http://webservices.imacination.com/distance/Distance.jws';
l_namespace := 'xmlns="' || l_url || '"';
l_method := 'getCity';
l_soap_action := l_url || '#getCity';
l_result_name := 'getCityReturn';
-
- Rank: Programador Júnior
- Mensagens: 21
- Registrado em: Qua, 16 Dez 2009 10:12 pm
- Localização: Lisboa
Sim Vitor irá a ser atraves do url mas no meu WSD tenho varias Funçoes ,
No exemplo que deste está bem explicito, mas pelo que estas a indicar so consigo consumir uma function por cada Instancia Correcto?
Neste Caso,
l_url := 'http://webservices.imacination.com/dist ... stance.jws';
l_namespace := 'xmlns="' || l_url || '"';
l_method := 'getCity';
l_soap_action := l_url || '#getCity';
l_result_name := 'getCityReturn';
Agora queria chamar a funçao morada
Teria de Fazer uma nova função no PL/SQL e depois
l_url := 'http://webservices.imacination.com/dist ... stance.jws';
l_namespace := 'xmlns="' || l_url || '"';
l_method := 'getmorda';
l_soap_action := l_url || '#getmorada';
l_result_name := 'getmoradaReturn';
Certo?
Cumprimentos,
DG
No exemplo que deste está bem explicito, mas pelo que estas a indicar so consigo consumir uma function por cada Instancia Correcto?
Neste Caso,
l_url := 'http://webservices.imacination.com/dist ... stance.jws';
l_namespace := 'xmlns="' || l_url || '"';
l_method := 'getCity';
l_soap_action := l_url || '#getCity';
l_result_name := 'getCityReturn';
Agora queria chamar a funçao morada
Teria de Fazer uma nova função no PL/SQL e depois
l_url := 'http://webservices.imacination.com/dist ... stance.jws';
l_namespace := 'xmlns="' || l_url || '"';
l_method := 'getmorda';
l_soap_action := l_url || '#getmorada';
l_result_name := 'getmoradaReturn';
Certo?
Cumprimentos,
DG
-
- Moderador
- Mensagens: 1396
- Registrado em: Sex, 01 Fev 2008 2:06 pm
- Localização: Rio de Janeiro - RJ
- Contato:

o que postei foi so um exemplo para você se guiar..
nada impede que você crie um oracle type e faça todas as chamadas que precisa dentro da mesma function e va adicionando o retorno no seu type e dai retorne ele da sua function.. se o fizer você so chamara a sua function uma vez..
nada impede que você crie um oracle type e faça todas as chamadas que precisa dentro da mesma function e va adicionando o retorno no seu type e dai retorne ele da sua function.. se o fizer você so chamara a sua function uma vez..
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 6 visitantes