Foi mal. Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bi PL/SQL Release 10.2.0.5.0 - Production CORE 10.2.0.5.0 Production TNS for HPUX: Version 10.2.0.5.0 - Production NLSRTL Version 10.2.0.5.0 - Production
De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Enviada em: sexta-feira, 11 de dezembro de 2015 18:22 Para: oracle_br@yahoogrupos.com.br Assunto: [** SPAM 7.4 **] [oracle_br] Re: Problema com o utl_http. Erro: ORA-12541: TNS:no listener Opa : então, a primeira coisa (que é crítica) e que vc não nos dá é a VERSÃO EXATA (e a Edição !!) do banco Oracle em questão - isso *** principalmente *** para comprovar que vc não está caindo na segurança de rede melhorada introduzida no 11g, o 11g passou a exigir um item de controle acicional, os ACLs (Access Control Lists) para QUALQUER tipo de acesso via rede à itens externos, seja pelas packages de mail, pela UTL_HTTP, pela UTL_INADDR... Isso é ABSOLUTAMENTE Crítico, repito : se vc estiver em banco 11g ou acima, sem setar os ACLs necessários vc NÃO TERÁ absolutamente nenhuma comunicação via rede.... Veja http://www.oracleflash.com/36/Oracle-11g-Access-Control-List-for-External-Network-Services.html para mais refs sobre o Assuntos. Isso estando 100% verificado e OK, aí temos : não, o RDBMS Oracle **** não tem *** capacidade de acessar uma "página web" , ele Não Tem um browser interno, Não Tem Como o RDBMS "executar"uma página web... E já que ele não tem essa capacidade, o que ele pode receber de um website qualquer é ou uma string com o texto todo da página web (veja http://www.gokhanatil.com/2013/06/how-to-read-web-pages-using-utl_http-request_pieces.html) OU vc pode acionar um webservice (NÃO É que a página vai ser aberta num browser, não é isso, vc estará acessando diretamente, em modo não-interativo e FORA do browser, o webservice) que vai transmitir strings, é isso , http://www.sqlquery.com/dbm0415.htm exemplifica... []s Chiappa OBS : vc perguntou de UTL_HTTP, e foi isso que respondemos - fique Claro que existem Várias Outras maneiras de se chamar um webservice a partir do database, como por exemplo usar JAVA - desde a versão 8i é opcional vc ter uma JVM dentro do banco, mas é possível, http://www.oracle.com/technetwork/developer-tools/jdev/dbcalloutws-howto-084195.html exemplifica, OU vc pode (do database 10g em diante) usar o UTL_DBWS (que basicamente é uma rotina JAVA que aciona métodos SOAP do seu webservice, SE ele foi assim programado/preparado), https://oracle-base.com/articles/10g/utl_dbws-10g exemplifica, OU a partir do 11g vc tem o NDWS (http://www.liberidu.com/blog/2009/07/14/howto-consume-webservices-via-plsql/ exemplifica) , OU ainda (o que pode ser uma opção interessante, também, se vc tem o APEX instalado no seu database Oracle - alguns releases/edições o trazem instalado após uma instalação default, e outros exigem instalação extra) seria usar o built-in APEX chamado APEX_WEB_SERVICE , https://oracle-base.com/articles/misc/apex_web_service-consuming-soap-and-rest-web-services exemplifica....