Connection context

if i open a connection in java stored procedure , does oracle open process for each connection?
how do i close this connection?
Thank's
Benny

If you are using the server-side internal driver, the answer is no, it won't open an additional process. Please refer to http://technet.oracle.com/doc/oracle8i_816/java.816/a81354/advanc4.htm#1001042
for more info.
Thanks.

Similar Messages

  • Java stored procedures connection context

    In my Oracle database there are two java stored procedures:
    A java stored procedure P1 having
    Connection conn1 = DriverManager.getConnection("jdbc:default:connection")
    and
    a java stored procedure P2 having
    Connection conn2 = DriverManager.getConnection("jdbc:default:connection")
    P1 calls P2 using conn1.CallableStatement.
    Here is the question: does P2 inherit the connection
    context conn1 (so that actualy conn2 = conn1) or P2's transactional
    scope is separate from P1's one?
    Thanks,
    -Eugene

    AFAIK, when you run Java in the database, for local SQL data access, there is only one default connection per session, P1 and P2 should share the same transaction context.
    Kuassi

  • Public connection context class

    Is there any way to force sqlj to generate a public
    connection context class ? Right now, it always generates
    connection context classes which are only accessible within
    the current package, not outside of the package.
    Regards,
    Francois Staes.

    Is there any way to force sqlj to generate a public
    connection context class ? Right now, it always generates
    connection context classes which are only accessible within
    the current package, not outside of the package.
    Regards,
    Francois Staes.

  • SQLJ Connection Context

    Hi,
    i was trying to create a SQLJ connection context following the procedure given in the following link.
    https://help.sap.com/saphelp_nw04/helpdata/en/70/a19cc472e72c4481172909938578fc/frameset.htm
    But i am getting  error when i am inserting this sqlj statement inside the class Ctx
    public class Ctx
         #sql public context Ctx with (dataSource = "java:comp/env/TMP_PERSISTENCE_EXAMPLE");//here i am getting this error
    Error               
    SQLJ: The ConnectionContext class "Ctx" must not be declared as an inner class of the class "temp.persistence.gettingstarted.dao.Ctx". It may be declared as a static inner class.     Ctx.sqlj     OpenSQLWeb/source/temp/persistence/gettingstarted/dao     
    could u tell me how i can resolve this.

    Hi,
      i think you are refering to the sqlj file
      with reference to the example its ctx.sqlj
      The contents of the file are
    <-- Start -->
    package temp.persistence.gettingstarted.dao;
    #sql public context Ctx with (dataSource = "java:comp/env/TMP_PERSISTENCE_EXAMPLE");
    <-- End -->
    its not a class file.
    If you have installed JDT, you will have the complete working example in 'C:\Program Files\SAP\JDT\eclipse\examples\J2EE_GettingStartedOpenSQL.zip'
    Hope that helps.
    Regards,
    S.Divakar

  • Null connection context using java wrapped wwsec_api

    How can I specify my OID connection information when using the PL/SQL wwsec_api with java wrappers?
    I am getting a null connection context, and I assume that it is looking for the directory connection information (OID host,port,user,password).
    Is this somehow specified in the .properties file?
    The java was created with Jpublisher per the Jdeveloper help instructions. Following is a code snippet using the java classes created.
    String userName = "username";
    WwsecApi anWwsecApi = new WwsecApi();
    WwsecApiRowtypeSql3 userInfo = (WwsecApiRowtypeSql3)anWwsecApi.personInfo(userName);
    if (userInfo.getEmpno() != null)
    out.print("Employee Number" + userInfo.getEmpno());
    else
    out.print("null");

    -- Set the session context for a lightweight user as follows in your java code before executing the API call.
    -- portal.wwctx_api.set_context(p_user_name => 'portal',p_password => 'password1',p_company => 'simplerewards');
    portal.wwctx_api_private.set_context (p_user_name => 'portal');

  • Null connection context with java wrapped wwsec_api

    How can I specify my OID connection information when using the PL/SQL wwsec_api with java wrappers?
    I am getting a null connection context, and I assume that it is looking for the directory connection information (OID host,port,user,password).
    Is this somehow specified in the .properties file?
    The java was created with Jpublisher per the Jdeveloper help instructions. Following is a code snippet using the java classes created.
    String userName = "username";
    WwsecApi anWwsecApi = new WwsecApi();
    WwsecApiRowtypeSql3 userInfo = (WwsecApiRowtypeSql3)anWwsecApi.personInfo(userName);
    if (userInfo.getEmpno() != null)
    out.print("Employee Number" + userInfo.getEmpno());
    else
    out.print("null");

    -- Set the session context for a lightweight user as follows in your java code before executing the API call.
    -- portal.wwctx_api.set_context(p_user_name => 'portal',p_password => 'password1',p_company => 'simplerewards');
    portal.wwctx_api_private.set_context (p_user_name => 'portal');

  • JDeveloper + Connection Context

    Hi All,
    I am new to JDeveloper.I want to run a stored procedure in it. I have specified the connection to database,username and password.
    While running the sqlj, it gives the error : no connection context was found.
    Please tell me what connection context is and how to set it.
    Thanks
    Srividya

    Hi All,
    I am new to JDeveloper.I want to run a stored procedure in it. I have specified the connection to database,username and password.
    While running the sqlj, it gives the error : no connection context was found.
    Please tell me what connection context is and how to set it.
    Thanks
    Srividya

  • SQLException: found null connection context

    Using JDeveloper, I set up a connection with success. However, running the program generates the following error:
    java.sql.SQLException: found null connection context
    The error persists even when I use [contextNameFromtheConnection] with #sql{...};
    Thanks for your time.
    null

    You need to set your connection at runtime in your program. For example, to set the default connection:
    oracle.sqlj.runtime.Oracle.connect("jdbc:oracle:thin:@localhost:1521:orcl","scott","tiger");
    Or, if you have created a JDBC connection conn you could reuse that as follows.
    oracle.sqlj.runtime.Oracle.connect(conn);
    Hope this helps. -- Ekkehard

  • Module: AppleODClientLDAP - unable to open connection to LDAP server - unable to create connection context

    Hi everybody,
    I'm running in an urgent problem, because binding to my OpenDirectory got lost. I've lots of "Module: AppleODClientLDAP - unable to open connection to LDAP server - unable to create connection context" messages in the system.log and OD service stoppped running. In the OD-section no server is listed any longer and all buttons are greyed. All network users for sure are not available, but all other services are up. I didn't changed anything to the existing services but started with the netinstall config. I got the following entries in the systemlog
    Jun 19 00:35:30 macminiserver.homenet bootpd[95005]: server name macminiserver.homenet
    Jun 19 00:35:30 macminiserver.homenet bootpd[95005]: interface en0: ip 192.168.0.11 mask 255.255.255.0
    Jun 19 00:35:30 macminiserver.homenet bootpd[95005]: subnets: Failed to convert 'domain_search': Empty array
    Jun 19 00:35:30 macminiserver.homenet bootpd[95005]: bsdpd: re-reading configuration
    Jun 19 00:35:30 macminiserver.homenet bootpd[95005]: bsdpd: shadow file size will be set to 48 megabytes
    Jun 19 00:35:30 macminiserver.homenet bootpd[95005]: bsdpd: age time 00:15:00
    Jun 19 00:35:30 macminiserver.homenet bootpd[95005]: bsdpd: no NetBoot images found
    Jun 19 00:35:30 macminiserver.homenet bootpd[95005]: bootpd: NetBoot service turned off
    Jun 19 00:35:30 macminiserver.homenet bootpd[95005]: DHCP REQUEST [en0]: 1,0:1b:77:36:47:f6 <NB01>
    Jun 19 00:35:30 macminiserver.homenet bootpd[95005]: ACK sent NB01 192.168.0.107 pktsize 304
    Since these logentries appeared, no network users and groups are available anymore. I'm running OS X ML 10.8.3 and DNS is fine.
    Are there any steps to perform to get LDAP working again? With all buttons in the server admin OD section greyed out I even can't setup a new directory.
    BR
    Jens

    I was able to restore the existing server with the automatic OD backup that Server.app creates. When my OD fails to start after a crash and db_recover commands don't work, it's always worked for me to restore the odmaster from a backup using the command:
    sudo slapconfig -restoredb /private/var/backups/ServerBackup_OpenDirectoryMaster.sparseimage
    I'm careful to keep an independent OD backup with Carbon Copy Cloner and this preflight script.
    You can also grab an earlier version of the sparse image ServerBackup_OpenDirectoryMaster.sparseimage from a Time Machine backup. It's also possible to rsync the database files directory from a Time Machine backup.

  • EA3 - LDAP connection: context ?

    If one doesn't select a context on LDAP connection screen, when trying to connect the Status displays "Failed : -null" and nothing else happens.
    A more detailed error message would be appreciated.
    If I reopen the the connection screen, I can see the context information is not kept. As far as I'm concerned I have no idea what this context stands for.

    I'm not saying the context list doesn't get populated, but that if I don't select a value in it, I get a dumb message.
    I don't remember having to choose a context when using EA2, and have absolutely no idea what this context is. I just wish there would be a more explanatory message than "Failure - null" if I don't choose a context in the LOV.
    Actually once I've chosen the LDAP server, the LOV gets automatically populated, but no default value is applied, so if I don't choose a value I'll get a dumb "Failure - null" message if I try to connect.
    If I click on the LOV I can see it was populated, so I chose the first context (diasplaying cn=OracleContext) without knowing what it was and the connection worked.
    Once the connection is established, if I right-click the connection name in the connections list and choose properties, I see the context LOV doesn't display the context I chose the previous time, the LOV is still populated but the value I chose the first time does not appear anymore. This does not prevent future connections, it's just the information is not displayed again.

  • THE DATABASE CONNECTION IS LOST :;; WIERD  ORA-01012 NOT LOGGED ON ERROR

    ERROR: ORA-01012 NOT LOGGED ON ERROR
    I AM USING A JAVA SWING INTERFACE (JDK 1.1.8), WHICH USES JNI TO CALL C PROGRAMS WHICH IN TURN CONNECTS TO THE DATABASE, ORACLE 8.1.6.
    A DATABASE CONNECTION IS ESTABLISED IN THE MAIN CLASS BY CALLING A FUNCTION FROM THE CONSTRUCTOR.
    FOR ALL OTHER FUNCTION CALLS WHICH ARE MADE FROM WITHIN THIS CONSTRUCTOR, THE CONNECTION STAYS.
    BUT AFTER THE CONTRUCTOR CALL IS COMPLETE, DATABASE CONNECTION IS STRANGELY LOST. THUS ALL OTHER FUNCTION CALLS FAIL BECAUSE OF CONNECTION ISSUES GIVING ORA-01012. THOUGH IF I CHECK UP IN THE DATABASE, THE CONNECTION DOES FIND AN ENTRY.
    SO IT APPEARS THAT SOMEHOW THE JAVA INTERFACE LOOSES TRACK OF CONNECTION. BUT STRANGELY ALL THE FUNCTIONS WORK IF CALLED FROM THE CONSTRUCTOR......... BUT THATS NOT THE IDEA.
    PLEASE HELP, THIS PROBLEM IS BUGGING ME FOR WEEKS NOW.
    THANKS
    AMIT

    apologise for the caps lock.
    i am working on a previous system with java swing front end which alread uses jni, and connects to database using pro *c.
    My problem is that the connection is lost as soon as the constructor of the main class is run, giving an
    ORA-1012 NOT LOGGED ON ERROR.
    But if i place the same calls in the contructor all the database call work.
    It somehow appears that the java interface looses the connection context. Though the session does find entry in the oracle dynamic tables as long as i dont close the front end main window, thereby meaning that its the jave interface which looses the context.
    part of the code of the main class eiquser.
    //constructor
    public EiqUser() {
         super();
         initMRI();
    private void initMRI() {
         try {
              /* initialize geoManager environment */
              int rccc = new EiqCfuncs().eiqInitEnv();
    //eiqinitenv is a c function which connects to database using pro *C
              EiqCfuncs cfuncs = new EiqCfuncs();
              //EiqCfuncs has the prototypes of c functions used bye the java interface
              this.ivjFileMenu.setText(cfuncs.eiqGetText(resNum.getTEXT_FILE_MENU())); // sets the menu name
    and so on.........
    public void eiqUser_WindowClosed(java.awt.event.WindowEvent windowEvent) {
         new EiqCfuncs().eiqTermEnv(); // gives ora-1012 error
    //eiqtermenv is supposed to disconnect from data base, but returns an ora-1012 not logged on erro
         return;
    //eiqtermenv closes the connection with the data base. But fails in this case. if i place the same call ( eiqtermenv) in the initMRI function or the contructor it succeeds.
    Plus if i dont use the java interace and use a c stub for executing the same sequence of functions, then i dont face any problems.
    the proc calls exectuted ultimately by...
    :::eiqinitenv
    exec sql connect using :sqlid identified by sqlpw; // succeeds giving sqlerr.sqlcode=0;
    ::::eiqterm env
    exec sql commit work; //fails giving 0ra-1012 error
    exec sql rollback work;
    Why is the java interface loosing track of the connection once done with the constructor of the main class?? The session still finds an entry in the oracle dynamic tables.
    Please help
    Thx
    Amit

  • How can I provide my own list of CA-certificates for TLS-connections from within a Add-On

    I'm considering writing an Add-On that does a DNSSEC/DANE lookup.
    My scenario is that a DNSSEC query for the TLSA (DANE) records of a site return a full Root Certificate for a site. (2,0,0 in DANE jargon.)
    I want to create new TLS context with a CA-pool containing just that Certificate, so that when I browse to the site, the TLS-layer verifies the site certificate against the DNSSEC-specified Root CA.
    My question: how do I program that in an add on? How can I specify a *certain* CA root certificate before opening the connection.

    Replying to myself to add some more information.
    For doing the DNSSEC-DANE lookup, I use a strategy as pioneered by the DNSSEC validation Add On.
    My question is how to create a TLS-connection context with a certain Root CA before connection to the site.

  • ORA-28500: connection from ORACLE to a non-Oracle system returned this message: ORA-02063: preceding line from OWB_75

    ORA-28500: connection from ORACLE to a non-Oracle system returned this message: ORA-02063: preceding line from OWB_75
    Scenario:
    I am having difficulty getting ODBC connection between Oracle OWB app with an 11gR2 DB (running on a VirtualBox Linux) and SQL Server 2008 running directly on the host. (Windows 8)
    I am trying to take a SQL Server 2008 feed into Oracle Ware house Builder, and think(!) I have read everything and configured it in accordance (but I presume not given 3 days of failed attempts to fix it). I have also read several blogs, hence there might be a few more settings in the configuration files than the formal documentation says, but these have come from blogs that have “Solved” problems for other similar situations.
    The environments:
    HOST:
    Name: RESOLVEIT-PC
    IP: 192.168.1.80
    Windows 8 (64bit) , with system DSN ODBC connection ACME_POS created with 32 bit ODBC set up (This setting still shows up fine in the 64 bit ODBC).
    GUEST VM:
    Name: OraDBSvr.com
    GUES fixed IP Address: 192.1.200
    Oracle VirtualBox (4.2.16)
    Oracle Redhat Linux 6 (x86)
    Oracle 11gR2 Enterprise Edition (11.2.0.1.0)
    ODBC: Freetds driver
    Configuration files:
    initacmepos.ora
    HS_FDS_CONNECT_INFO = 192.168.1.80/SQLEXPRESS/ACME_POS
    HS_FDS_TRACE_LEVEL = 0
    HS_FDS_SUPPORT_STATISTICS=FALSE
    HS_RPC_FETCH_REBLOCKING= OFF
    HS_FDS_FETCH_ROWS = 1
    HS_FDS_SHAREABLE_NAME = /usr/local/lib/libtdsodbc.so
    set ODBCINI=/opt/odbc/odbc.ini
    # set <envvar>=<value>
    odbc.ini
    [ACME_POS]
    Driver     = FreeTDS
    Description = ODBC Connection via FreeTDS
    Trace       = 1
    Servername  = 192.168.1.80
    Database    = dbo
    odbcinst.ini
    [PostgreSQL]
    Description                        = ODBC for PostgreSQL
    Driver                   = /usr/lib/psqlodbc.so
    Setup                    = /usr/lib/libodbcpsqlS.so
    Driver64                              = /usr/lib64/psqlodbc.so
    Setup64                              = /usr/lib64/libodbcpsqlS.so
    FileUsage                           = 1
    [MySQL]
    Description                        = ODBC for MySQL
    Driver                   = /usr/lib/libmyodbc5.so
    Setup                    = /usr/lib/libodbcmyS.so
    Driver64                              = /usr/lib64/libmyodbc5.so
    Setup64                              = /usr/lib64/libodbcmyS.so
    FileUsage                           = 1
    [FreeTDS]
    Discription             = TDS driver (Sybase / MS SQL)
    Driver                           = /usr/local/lib/libtdsodbc.so
    # Setup                         = /usr/local/lib/libtdsS.so
    FileUsage                           = 1
    CPTimeout               =
    CPReuse                 =
    [oracle@oraDBsvr etc]$
    freetds.conf
    #   $Id: freetds.conf,v 1.12 2007-12-25 06:02:36 jklowden Exp $
    # This file is installed by FreeTDS if no file by the same
    # name is found in the installation directory. 
    # For information about the layout of this file and its settings,
    # see the freetds.conf manpage "man freetds.conf". 
    # Global settings are overridden by those in a database
    # server specific section
    [global]
            # TDS protocol version
    ;              tds version = 4.2
                   # Whether to write a TDSDUMP file for diagnostic purposes
                   # (setting this to /tmp is insecure on a multi-user system)
    ;              dump file = /tmp/freetds.log
    ;              debug flags = 0xffff
                   # Command and connection timeouts
    ;              timeout = 10
    ;              connect timeout = 10
                   # If you get out-of-memory errors, it may mean that your client
                   # is trying to allocate a huge buffer for a TEXT field.
                   # Try setting 'text size' to a more reasonable limit
                   text size = 64512
    # A typical Sybase server
    [egServer50]
                   host = symachine.domain.com
                   port = 5000
                   tds version = 5.0
    # A typical Microsoft server
    [ACME_POS]
      host = 192.168.1.80
      port = 60801                                # also tried 1433
      instance = SQLEXPRESS
      tds version = 8.0
      client charset = UTF-8
    tsql -LH 192.168.1.80
         ServerName RESOLVEIT-PC
       InstanceName SQLEXPRESS
        IsClustered No
            Version 10.50.4000.0
                tcp 60801
                 np \\RESOLVEIT-PC\pipe\MSSQL$SQLEXPRESS\sql\query
                via RESOLVEIT-PC,0:1433
    Oracle listener:
    [oracle@oraDBsvr log]$ cat /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
    # listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
    # Generated by Oracle configuration tools.
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = acmepos)
    (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
    (PROGRAM = dg4odbc)
    (HS = OK)
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = oraDBsvr)(PORT = 1521))
    ADR_BASE_LISTENER = /u01/app/oracle
    [oracle@oraDBsvr log]$ lsnrctl status
    LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 16-SEP-2013 13:57:41
    Copyright (c) 1991, 2009, Oracle.  All rights reserved.
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oraDBsvr)(PORT=1521)))
    STATUS of the LISTENER
    Alias                     LISTENER
    Version                   TNSLSNR for Linux: Version 11.2.0.1.0 - Production
    Start Date                16-SEP-2013 13:50:34
    Uptime                    0 days 0 hr. 7 min. 7 sec
    Trace Level               off
    Security                  ON: Local OS Authentication
    SNMP                      OFF
    Listener Parameter File /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
    Listener Log File /u01/app/oracle/diag/tnslsnr/oraDBsvr/listener/alert/log.xml
    Listening Endpoints Summary...
    (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oraDBsvr)(PORT=1521)))
    Services Summary...
    Service "acmepos" has 1 instance(s).
    Instance "acmepos", status UNKNOWN, has 1 handler(s) for this service...
    Service "dw" has 1 instance(s).
    Instance "dw", status READY, has 1 handler(s) for this service...
    Service "dwXDB" has 1 instance(s).
    Instance "dw", status READY, has 1 handler(s) for this service...
    The command completed successfully
    Oracle tnsnames.ora
    [oracle@oraDBsvr admin]$ cat tnsnames.ora
    # tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
    # Generated by Oracle configuration tools.
    dw =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = dw)
    acmepos  =
    (DESCRIPTION=
    (ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
    (CONNECT_DATA=(SID=acmepos)
    (HS=OK)
    Oracle sqlnet.ora
    [oracle@oraDBsvr admin]$ cat sqlnet.ora
    # sqlnet.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora
    # Generated by Oracle configuration tools.
    NAMES.DIRECTORY_PATH= (EZCONNECT, TNSNAMES)
    ADR_BASE = /u01/app/oracle
    I can connect from the linux server to SQL Server, and query the database:
    [oracle@oraDBsvr etc]$ tsql -S acme_pos -U acme_dw_user -P acme1234
    locale is "en_US.utf8"
    locale charset is "UTF-8"
    using default charset "UTF-8"
    1> select last_name from dbo.employees;
    2> go
    last_name
    Davolio
    Fuller
    Leverling
    Peacock
    Buchanan
    Suyama
    King
    Callahan
    Dodsworth
    (9 rows affected)
    1>
    However, I can’t get a response through Oracle OWB , and I get:
    ORA-28500: connection from ORACLE to a non-Oracle system returned this message: ORA-02063: preceding line from OWB_75
    In the hs log file I get:
    [oracle@oraDBsvr log]$ cat acmepos_agt_3821.trc
    Oracle Corporation --- MONDAY    SEP 16 2013 13:51:22.170
    Heterogeneous Agent Release
    11.2.0.1.0
    HS Gateway:  NULL connection context at exit
    [oracle@oraDBsvr log]$
    I am really stuck now and going round in circles and can’t see the wood for trees! Can anyone please help?!!
    Many Thanks.
    Rafe.

    Let us rewrite your ODBC DSN a little bit... Your current odbc.ini looks like:
    [ACME_POS]
    Driver     = FreeTDS
    Description = ODBC Connection via FreeTDS
    Trace       = 1
    Servername  = 192.168.1.80
    Database    = dbo
    Let us change it a little bit so that we only need one config file - no odbcinst.ini nor freetds.conf file anymore:
    [ACME_POS]
    Driver =/usr/local/lib/libtdsodbc.so
    Server = 192.168.1.80
    Database
    = dbo     ####  I have some doubts that you have a SQL Server database called dbo - one database that always exists is master - so as a test use master here or get the real database name of the SQL Server database you want to connect
    Port = 60801 ## make sure it really is the correct port - best would be to check on the SQL server and then try telnet <ip> <port> if you can connect to the SQL server
    TDS_Version = 8.0
    QuotedId=YES
    Especially the last 2 parameters are mandatory. TDS_Version specifies the TDS Version you have to use to connect to the SQL Server and QuotedID is required for DG4ODBC as it surrounds objevt names by double quotes.
    What happens now when you try to connect with for example isql - the ODBC test utility shipped with the ODBC Driver manager?
    In addition, could you please do me another favour and check the word size of DG4ODBC and the ODBC Driver Manager as well as the ODBC Driver - just execute:
    file /u01/app/oracle/product/11.2.0/dbhome_1/bin/dg4odbc
    file /usr/local/lib/libtdsodbc.so
    file < the patch to your libodbc.so library>/libodbc.so
    and post the output.

  • ODBC Gateway on Linux error - connects ok with Sybase SQL Anywhere

    OS: CentOS 5.8 64-bit
    DB: Oracle XE 11gR1 64-bit
    Gateway: Oracle Gateway for ODBC 64-bit
    Database and gateway reside on same Linux Server.
    Connecting to remote Sybase SQL Anywhere 10 server on WindowsXP.
    Using SQL Anywhere 11 odbc driver and unixODBC driver manager on Linux server.
    isql tool connects without any problems.
    One LISTENER, service for db and gateway on same port.
    ===================================
    Via SQL*Plus, the following error occurs....
    SQL> select * from dual@dblink;
    select * from dual@dblink
    ERROR at line 1:
    ORA-28513: internal error in heterogeneous remote agent
    ORA-02063: preceding line from dblink
    ===================================
    sqlnet.ora
    # sqlnet.ora Network Configuration File: /u01/app/oracle/product/11.2.0/xe/network/admin/sqlnet.ora
    # Generated by Oracle configuration tools.
    NAMES.DIRECTORY_PATH=(TNSNAMES)
    ADR_BASE = /u01/app/oracle/product/11.2.0/xe
    ==================================
    tnsnames.ora
    # tnsnames.ora Network Configuration File:
    XE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = mysystem)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = XE)
    dblink =
    (DESCRIPTION =
    (ADDRESS =
    (PROTOCOL = TCP)(HOST = mysystem)(PORT = 1521)
    (CONNECT_DATA =
    (SID = dblink))
    (HS=OK))
    EXTPROC_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
    (CONNECT_DATA =
    (SID = PLSExtProc)
    (PRESENTATION = RO)
    =======================
    listener.ora
    # listener.ora Network Configuration File:
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ORACLE_HOME = /u01/app/oracle/product/11.2.0/xe)
    (PROGRAM = extproc)
    (SID_DESC =
    (SID_NAME = dblink)
    (ORACLE_HOME = /u01/app/oracle/product/11.2.0/gtw)
    (PROGRAM = dg4odbc)
    (ENVS=LD_LIBRARY_PATH=/opt/sqlanywhere11/lib64:/u01/app/oracle/product/11.2.0/gtw/lib)
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
    (ADDRESS = (PROTOCOL = TCP)(HOST = mysystem)(PORT = 1521))
    DEFAULT_SERVICE_LISTENER = (XE)
    ========================
    initdblink.ora
    # This is a sample agent init file that contains the HS parameters that are
    # needed for the Database Gateway for ODBC
    # HS init parameters
    HS_FDS_CONNECT_INFO=dblink
    HS_FDS_SHAREABLE_NAME=/usr/lib64/libodbc.so
    HS_FDS_TRACE_LEVEL=255
    HS_LANGUAGE=american_america.we8iso8859p1
    HS_NLS_NCHAR=UTF-8
    # ODBC specific environment variables
    set ODBCINI=/etc/odbc.ini
    ========================
    Oracle Corporation --- MONDAY OCT 15 2012 17:23:39.915
    Heterogeneous Agent Release
    11.2.0.1.0
    Oracle Corporation --- MONDAY OCT 15 2012 17:23:39.914
    Version 11.2.0.1.0
    Entered hgogprd
    HOSGIP for "HS_FDS_TRACE_LEVEL" returned "255"
    Entered hgosdip
    setting HS_OPEN_CURSORS to default of 50
    setting HS_FDS_RECOVERY_ACCOUNT to default of "RECOVER"
    setting HS_FDS_RECOVERY_PWD to default value
    setting HS_FDS_TRANSACTION_LOG to default of HS_TRANSACTION_LOG
    setting HS_IDLE_TIMEOUT to default of 0
    setting HS_FDS_TRANSACTION_ISOLATION to default of "READ_COMMITTED"
    HOSGIP returned value of "UTF-8" for HS_NLS_NCHAR
    setting HS_FDS_TIMESTAMP_MAPPING to default of "DATE"
    setting HS_FDS_DATE_MAPPING to default of "DATE"
    setting HS_RPC_FETCH_REBLOCKING to default of "ON"
    setting HS_FDS_FETCH_ROWS to default of "100"
    setting HS_FDS_RESULTSET_SUPPORT to default of "FALSE"
    setting HS_FDS_RSET_RETURN_ROWCOUNT to default of "FALSE"
    setting HS_FDS_PROC_IS_FUNC to default of "FALSE"
    setting HS_FDS_CHARACTER_SEMANTICS to default of "FALSE"
    setting HS_FDS_MAP_NCHAR to default of "TRUE"
    setting HS_NLS_DATE_FORMAT to default of "YYYY-MM-DD HH24:MI:SS"
    setting HS_FDS_REPORT_REAL_AS_DOUBLE to default of "FALSE"
    setting HS_LONG_PIECE_TRANSFER_SIZE to default of "65536"
    setting HS_SQL_HANDLE_STMT_REUSE to default of "FALSE"
    setting HS_FDS_QUERY_DRIVER to default of "TRUE"
    setting HS_FDS_SUPPORT_STATISTICS to default of "FALSE"
    Parameter HS_FDS_QUOTE_IDENTIFIER is not set
    setting HS_KEEP_REMOTE_COLUMN_SIZE to default of "OFF"
    setting HS_FDS_GRAPHIC_TO_MBCS to default of "FALSE"
    setting HS_FDS_MBCS_TO_GRAPHIC to default of "FALSE"
    Default value of 64 assumed for HS_FDS_SQLLEN_INTERPRETATION
    setting HS_CALL_NAME_ISP to "gtw$:SQLTables;gtw$:SQLColumns;gtw$:SQLPrimaryKeys;gtw$:SQLForeignKeys;gtw$:SQLProcedures;gtw$:SQLStatistics;gtw$:SQLGetInfo"
    setting HS_FDS_DELAYED_OPEN to default of "TRUE"
    setting HS_FDS_WORKAROUNDS to default of "0"
    Exiting hgosdip, rc=0
    ORACLE_SID is "dblink"
    Product-Info:
    Port Rls/Upd:1/0 PrdStat:0
    Agent:Oracle Database Gateway for ODBC
    Facility:hsa
    Class:ODBC, ClassVsn:11.2.0.1.0_0008, Instance:dblink
    Exiting hgogprd, rc=0
    hostmstr: 0: HOA After hoagprd
    Invalid HS_NLS_NCHAR value UTF-8 specified
    Setting HS_NLS_NCHAR to Server Default 2000
    Invalid HS_NLS_NCHAR value UTF-8 specified
    Setting HS_NLS_NCHAR to Server Default 2000
    hostmstr: 0: HOA Before hoainit
    Entered hgoinit
    HOCXU_COMP_CSET=1
    HOCXU_DRV_CSET=31
    HOCXU_DRV_NCHAR=2000
    HOCXU_DB_CSET=873
    HOCXU_SEM_VER=112000
    Exiting hgoinit, rc=28513
    hostmstr: 0: HOA After hoainit
    RPC Calling nscontrol(0), rc=0
    hostmstr: 0: RPC Before Exit Agent
    hostmstr: 0: HOA Before hoaexit
    Entered hgoexit
    HS Gateway: NULL connection context at exit
    Exiting hgoexit, rc=0 with error ptr FILE:hgoexit.c LINE:108 FUNCTION:hgoexit() ID:Connection context
    hostmstr: 0: HOA After hoaexit
    hostmstr: 0: RPC After Exit Agent
    =============================
    Also, does anyone know how to determine the location (full path) of the unixODBC driver manager ?
    Please assist if you can...thx.
    Edited by: user601798 on Oct 15, 2012 3:37 PM

    Let me start with the unixODBC driver:
    There's no generic location as it depends which package you've used to install the UnixODBC driver manager or how you compiled it from scratch. I commonly prefer to compile it from scratch as this offers me to install it to any location I like.
    If you're not sure where it is located, you could perform a search on your machine looking for libodbc.so. Then cross check it with "file <location>/libodbc.so" to see the lib is a 64bit library.
    So let's assume in the /usr/lib64 you found the libodbc.so library, then the setting
    HS_FDS_SHAREABLE_NAME=/usr/lib64/libodbc.so
    is correct. Else you need to adopt the parameter.
    Next step is to check out which unixODBC version is installed. That's commonly done by calling "odbcinst -j".
    Looking now ta the gateway init file there's a parameter HS_NLS_NCHAR set to UTF-8. UnixODBC is commonly compiled with UCS2 support, so please change it to HS_NLS_NCHAR=UCS2
    Could you also please post the content of the odbc.ini file "more /etc/odbc.ini"?
    Thanks,
    Klaus

  • Using OCIBindDynamic with non-blocking connections

    I need to use an OCI array interface for execute statements more than once per one request to server.
    When I have called stored procedure or function in the non-blocking connection context using OCIBindDynamic for parameter binding, application have been crashed at random time.
    I don't have any problems using default (blocking) mode.
    Environment:
    Oracle 8.1.7 release 3 for Windows
    MS Visual C++ 6.0 compiler
    Could anybody help me ?

    It's always possible in any read that the number of bytes read is less than the number of bytes requested. You need to keep reading until you have got everything you expected, and cope with every possible error condition on each iteration.
    EJP

Maybe you are looking for

  • How to correct an acquisition posting in an parallel ledger

    Hello, I have the following situation: We are using New GL concept and have setup one parallel ledger (16) We have setup two depreciation areas, one pointing to the 0L, the other one to parallel ledger During vendor posting  of an asset the capitalis

  • Running .bat files from java code

    Dear Forum, I have seen numerous postings on the web about this question, still I have found no answer that works (for me) I�m trying to run a simple .bat file from a piece of java code , however it does not work. No error message , but still. Does a

  • Integration content repositories

    We have various content repositories including Lotus Notes/Domino Documentum and MS Sharepoint how can we integrate the repositories and provide our users visibility across all of them at ease? has anyone used livelink for that? -- they advertise htt

  • Date find from week of year.

    Hi all, I have week number values of the year, ie values are ranging from 1-52. i want to find out start and end dates of the week. do we have any functions provided by oracle to achieve this. Please help me.

  • Is there an easy way to suppress errors/warnings?

    Hey all, I've run into an annoying problem. I am using a few swc files in my app. In those swc files, I have a public method that will run some code. So, i import the swc's into my FB app, then access those public methods from flashbuilder.  90% of t