webMethods

webMethods

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
Expand all | Collapse all

JDBC adapter connection failing after application DB upgraded to Oracle 19c

  • 1.  JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Wed February 17, 2021 12:36 PM

    Hi All,

    Any suggestion to fix this issue??

    We are using webMethods IS 9.7. One of our application DB is upgraded from Oracle12C to 19C. After the upgrade we are facing below issue :

    [ADA.1.204] Cannot connect to the database with DataSource class “oracle.jdbc.pool.OracleDataSource”.
    Io exception: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=318767104)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4))))

    Below configurations used:

    |Connection Properties|
    |Transaction Type|LOCAL_TRANSACTION|
    |DataSource Class|oracle.jdbc.pool.OracleDataSource|
    |serverName| Given**|
    |user|USER_AAA|
    |password|******|
    |databaseName|*DBNAME|
    |portNumber|1521|
    |networkProtocol||
    |Other Properties|driverType=thin|
    |Connection Management Properties|
    |Enable Connection Pooling|true|
    |Minimum Pool Size|1|
    |Maximum Pool Size|10|
    |Pool Increment Size|1|
    |Block Timeout (msec)|1000|
    |Expire Timeout (msec)|1000|
    |Startup Retry Count|0|
    |Startup Backoff Timeout (sec)|10|


    #webMethods
    #B2B-Integration
    #Adapters-and-E-Standards
    #Service-Designer
    #BPM
    #Integration-Server-and-ESB
    #Flow-and-Java-services
    #Application-Platform


  • 2.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Wed February 17, 2021 01:06 PM

    Hi Sangamesh,

    please check the version of your ojdbc7.jar.
    You should update to Oracle Driver version 12.1.0.2, which is the last one containing an ojdbc7.jar.
    All newer versions only contain an ojdbc8.jar (or additionally an ojdbc10.jar supported with JVMs 10+).
    Unfortunately webMethods is not yet supporting any JVMs newer than version 8.

    When running in JVM 8 you can switch to a driver version containing an ojdbc8.jar, i.e. version 12.2.0.1 or newer.

    Version of the jar can be detected when opening with a zip tool like jar or 7zip and looking at the META-INF/MANIFEST.MF file.

    Regards,
    Holger


    #Flow-and-Java-services
    #B2B-Integration
    #Integration-Server-and-ESB
    #Application-Platform
    #webMethods
    #Service-Designer
    #BPM
    #Adapters-and-E-Standards


  • 3.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Wed February 17, 2021 01:19 PM

    Could be a need to update the JAR file as Holger notes, though we’re using ojdbc6.jar with 19c successfully.

    Connection refused is typically due to an incorrect port – host is there, not listening on that port. For the DB update, did the listener port of the DB change?


    #Adapters-and-E-Standards
    #Flow-and-Java-services
    #B2B-Integration
    #webMethods
    #Integration-Server-and-ESB
    #Application-Platform
    #BPM
    #Service-Designer


  • 4.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Thu February 18, 2021 11:28 AM

    Hi Rob,

    even when using an ojdcb6.jar is working I would prefer to update to a newer ojdbc7.jar when IS is running in JVM 7 or newer due to benefit from more stability i.e. regarding LOB handling in Thin mode.

    Regards,
    Holger


    #Application-Platform
    #Adapters-and-E-Standards
    #BPM
    #Service-Designer
    #Integration-Server-and-ESB
    #B2B-Integration
    #Flow-and-Java-services
    #webMethods


  • 5.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Thu February 18, 2021 04:27 PM

    Hi Holger,

    Can you please let me know which version of Oracle Client you are using?

    I have tried with odbc6 and 7 jars as well, but still I am facing the issue.


    #webMethods
    #B2B-Integration
    #BPM
    #Service-Designer
    #Adapters-and-E-Standards
    #Application-Platform
    #Flow-and-Java-services
    #Integration-Server-and-ESB


  • 6.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Thu February 18, 2021 04:53 PM

    I agree that using a newer driver is preferable. Given the update of the DB server, this seems like a good opportunity to update the driver since testing will likely be performed due to the DB update.

    But IMO, this is not likely the root cause of the error. As we’ve all experienced over the years – trust the error message. It is saying that nothing is listening on port 1521. So either the DB changed from using the default port on the same server, or the updated DB is on a different server. If the driver was the issue, I would think the error message would be different and likely indicate a version/impedence mismatch.

    Check connectivity from SQL Developer or TOAD or other tool to confirm the DB. Get the details from the DB team. It is likely a very simple issue that does not have to do with the driver version.

    Of course, I could be wrong. And if it turns out to be the driver specifically I’d be very interested in learning the details of how such a problem would result in “connection refused.”


    #Application-Platform
    #B2B-Integration
    #Integration-Server-and-ESB
    #webMethods
    #Adapters-and-E-Standards
    #Service-Designer
    #Flow-and-Java-services
    #BPM


  • 7.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Thu February 18, 2021 10:35 PM

    Hi reamo

    I agree with you , there is a possibility of DB not accepting the connections. DB server not accepting the connections could be due to variety of reasons. Sometimes error messages doesn’t reveal the actual reason for failure. As you said, other sql tools can be used to cross verify whether the TNS listener is listening on the port 1521 or not.

    Connection refusal could be due incompatible client and server as well. Sometimes its not possible identify actual cause of the error, when error can happen due to variety of reasons.

    Apart from that , there is a compatibility defined by the jdbc driver vendor(oracle) w.r.t client(ojdbc driver) & DB server and the jvm where client is used. It has to be followed. So depending on the DB server and IS server you are using , please use the appropriate jdbc driver referring to vendor JDBC documentation.

    Hope this helps.

    Thanks
    Nagasrikrishna


    #B2B-Integration
    #Flow-and-Java-services
    #webMethods
    #Service-Designer
    #BPM
    #Integration-Server-and-ESB
    #Application-Platform
    #Adapters-and-E-Standards


  • 8.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Fri February 19, 2021 05:09 PM

    I’ve never seen “connection refused” for this type of issue.

    True, but that does not seem to apply here. As noted, ojdbc6 and 7 are both successfully used with 19c.

    My main point – don’t guess at what may fix the issue and trust the error message. The first thing to check for “connection refused” is not the version of the client driver. The first thing to check is “is the server listening on port 1521 on that server.”


    #BPM
    #Application-Platform
    #webMethods
    #Integration-Server-and-ESB
    #Flow-and-Java-services
    #B2B-Integration
    #Adapters-and-E-Standards
    #Service-Designer


  • 9.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Fri February 19, 2021 12:48 PM

    Hi Reamon,

    Thanks for your response. I really appreciate.

    A small doubt: The databaseName we give in JDBC, should be a SID or a DB service name ?


    #Integration-Server-and-ESB
    #BPM
    #Application-Platform
    #Flow-and-Java-services
    #webMethods
    #Adapters-and-E-Standards
    #Service-Designer
    #B2B-Integration


  • 10.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Fri February 19, 2021 05:10 PM

    Depends on the DB listener. Can support both or either. Your DB team will tell you which to use.


    #Application-Platform
    #Service-Designer
    #Integration-Server-and-ESB
    #Flow-and-Java-services
    #Adapters-and-E-Standards
    #B2B-Integration
    #BPM
    #webMethods


  • 11.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Mon February 22, 2021 11:13 AM

    Hi Rob,

    usually the JDBC Adapter refers to SID as the DatabaseName, whereas the internal IS-JDBC-pooling refers to the ServiceName.

    Regards,
    Holger


    #Adapters-and-E-Standards
    #BPM
    #webMethods
    #Integration-Server-and-ESB
    #B2B-Integration
    #Flow-and-Java-services
    #Application-Platform
    #Service-Designer


  • 12.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Mon February 22, 2021 11:26 AM

    Fair point but I’m not sure adapter vs. internal pool is the decision point. SID vs. service name can be a complex topic. Key aspect: work with the DB team to use the “right” one.


    #Integration-Server-and-ESB
    #Flow-and-Java-services
    #webMethods
    #BPM
    #Service-Designer
    #Application-Platform
    #B2B-Integration
    #Adapters-and-E-Standards


  • 13.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Mon February 22, 2021 03:07 PM

    Hi Everyone,

    Thanks a lot for your suggestions. We have tried almost all of them but still facing the issues.

    When using Service name : Error 12505.
    When using SID : Error ORA 28040 , No matching authentication Protocol.

    However we are able to connect from SQL Developer now. So checking if it is compatibility issue. We are using WM9.7 version and JDBC adapter 6.5, Any idea if these are compatible latest Oracle versions like 19C DB and 12c Clients??

    We have ojdbc14 and 7 in place and Oracle client version 11.2


    #Application-Platform
    #Integration-Server-and-ESB
    #B2B-Integration
    #Adapters-and-E-Standards
    #Flow-and-Java-services
    #webMethods
    #BPM
    #Service-Designer


  • 14.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Tue February 23, 2021 02:09 PM

    Hi Sangamesh,

    please remove the ojdbc14.jar completely (it was built with Java 1.4) and use (replace it with) ojdbc7.jar (which was built with JVM 7).
    Update ojdbc7.jar to Oracle client version 12.1.0.2 (the last one which has an ojdbc7.jar available).

    ojdbc14.jar has some issues with LOB handling when driver is running in thin mode which is needed by the JDBC Adapter as long as you are not adding the native oci library for the driver.

    Additionally check if it is possible for you to update the JDBC Adapter to version 9.0.
    See JDBC Adapter users guide for how to migrate the services to match the new services templates (there is a migration service inside the updated Adapter package).

    Furthermore you should consider upgrading to wM 9.12/wM 10.x, which provide newer versions of the JDBC Adapter (9.10, 10.1 and 10.3). These versions are running in JVM 8 and therefore support newer versions of ojdbc8.jar, which will make use of the new JDBC 4 features resulting in better performance and stability.

    Regards,
    Holger


    #webMethods
    #Service-Designer
    #Flow-and-Java-services
    #BPM
    #B2B-Integration
    #Integration-Server-and-ESB
    #Application-Platform
    #Adapters-and-E-Standards


  • 15.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Tue March 02, 2021 03:24 AM

    Hi Holger,

    Thank you so much for your suggestions. The issue is now resolved. Below are the steps followed:

    1. Given SID in place of service name. (database name)
    2. Replaced all the old jars with ojdbc7 , Package reloading and IS restart.

    We are now able to connect to the latest oracle 19c DBs. Thanks everyone :slight_smile:


    #Flow-and-Java-services
    #BPM
    #Application-Platform
    #Service-Designer
    #Adapters-and-E-Standards
    #B2B-Integration
    #webMethods
    #Integration-Server-and-ESB


  • 16.  RE: JDBC adapter connection failing after application DB upgraded to Oracle 19c

    Posted Mon February 22, 2021 04:24 PM

    This is still unlikely to be a driver/server version issue. This is most likely a config issue.

    From your original post:

    networkProtocol needs to be tcp or tcps

    Miminum Pool Size – set this to 0. Not the reason for your connectivity issue, but this should be 0.

    *Timeout – the defaults of 1 sec are not useful. Change them to an appropriate value. Again, not the reason for the issue but should be set to something other than 1 sec.


    #Flow-and-Java-services
    #Adapters-and-E-Standards
    #webMethods
    #Integration-Server-and-ESB
    #Service-Designer
    #B2B-Integration
    #Application-Platform
    #BPM