Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

IO Error: End of TNS data channel after subsequent call of webservice from java stored procedure

despaDec 28 2018 — edited Jan 2 2019

We are using Oracle Database 12.1.0.2.0 with 1.7.0_101 Java version. In Java Developer (12.1.3.0.0 with Java 1.7.0_51), we created following method:

private static String callSoapWebService(String soapEndpointUrl, String stringXml, String soapAction) {

        String xmlResponse = null;

        // System.out.println(stringXml);

        try {

            // Create SOAP Connection

            SOAPConnectionFactory soapConnectionFactory = SOAPConnectionFactory.newInstance();

            SOAPConnection soapConnection = soapConnectionFactory.createConnection();

            System.setProperty("https.protocols", "TLSv1.2");

            System.setProperty("javax.net.ssl.trustStore", "c:\\CERT\\cacerts");

            System.setProperty("javax.net.ssl.trustStorePassword", "changeit");

            System.setProperty("sun.net.client.defaultConnectTimeout", "2000");

            System.setProperty("sun.rmi.transport.proxy.connectTimeout",  "8000");

            // Send SOAP Message to SOAP Server

            SOAPMessage soapResponse = soapConnection.call(createSOAPRequest(soapAction, stringXml), soapEndpointUrl);

            ByteArrayOutputStream out = new ByteArrayOutputStream();

            soapResponse.writeTo(out);        

            xmlResponse = out.toString();

            xmlResponse = xmlResponse.replaceAll("(\\r|\\n)", "");          

            soapConnection.close();

        } catch (Exception e) {

            xmlResponse = null;

            e.printStackTrace();

        }

        return xmlResponse;

    }

When the method is called from Java Developer for multiple time everything is working fine. But when we call it from Oracle database as java stored procedure, only first time we get response. After second attempt, the error is raised: IO Error: End of TNS data channel. I found in log (incdir_...) following:

Dump file D:\APP\ORACLE\diag\rdbms\orcl\orcl\incident\incdir_77077\orcl_s000_3664_i77077.trc

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

Windows NT Version V6.1 Service Pack 1

CPU                 : 4 - type 8664, 4 Physical Cores

Process Affinity    : 0x0x0000000000000000

Memory (Avail/Total): Ph:5672M/8191M, Ph+PgF:11530M/16381M

VM name             : VMWare Version (6)

Instance name: orcl

Redo thread mounted by this instance: 1

Oracle process number: 23

Windows thread id: 3664, image: ORACLE.EXE (S000)

*** 2018-12-28 11:28:08.928

*** SESSION ID:(368.29614) 2018-12-28 11:28:08.928

*** CLIENT ID:() 2018-12-28 11:28:08.928

*** SERVICE NAME:(orcl) 2018-12-28 11:28:08.928

*** MODULE NAME:(SQL Developer) 2018-12-28 11:28:08.928

*** CLIENT DRIVER:(jdbcthin) 2018-12-28 11:28:08.928

*** ACTION NAME:() 2018-12-28 11:28:08.928

[TOC00000]

Jump to table of contents

Dump continued from file: D:\APP\ORACLE\diag\rdbms\orcl\orcl\trace\orcl_s000_3664.trc

[TOC00001]

ORA-07445: exception encountered: core dump [joniul_set_native_libraries()+28] [ACCESS_VIOLATION] [ADDR:0x0] [PC:0x14910B62C] [UNABLE_TO_READ] []

[TOC00001-END]

[TOC00002]

========= Dump for incident 77077 (ORA 7445 [joniul_set_native_libraries]) ========

[TOC00003]

----- Beginning of Customized Incident Dump(s) -----

Exception [type: ACCESS_VIOLATION, UNABLE_TO_READ] [ADDR:0x0] [PC:0x14910B62C, joniul_set_native_libraries()+28]

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production

Process Id: 0x00000548  Thread Id : 0x00000e50    Time : Fri Dec 28 11:28:08

Excp. Code: 0xc0000005  Excp. Type: ACCESS_VIO    Flags: 0x00000000

This post has been answered by John Thorton on Dec 31 2018
Jump to Answer

Comments

Post Details

Added on Dec 28 2018
2 comments
717 views