One Star

tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

Hello all,
Just started to use Open Studio Version: 6.2.0
https://www.talendforge.org/forum/viewtopic.php?id=32949
In 5.6.2 I think I swithed from ojdbc14 to ojdbc6 but did not log how I did it!
This error seems to be back with the 6.2 version
I have an hard time figuring what to change in order to use the proper driver.
I installed ojdbc7.jar via talend modules. See printscreen
So how I can i fix this?
My prod environnement does have ojdbc6 with jobs build in 5.6.2. Those are working fine

13 REPLIES
Seventeen Stars

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

You can simply ignore the notification about the out-dated modules. I have no idea why Talend has not erased these references to the out-dated driver files already. You will finally see in the job editor if a driver is really missing and I bet you will not find any missing.
One Star

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

Hi,
you are correct I do not have any missing jar. But I do have the array the exception.
I put the pic there only to show that I DO have the ojdbc6 and ojdbc7 installed
Seventeen Stars

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

Strange, should not happen anymore. Could you please check if the problem disappears if you load the latest oracle jdbc driver per tLibraryLoad component?
One Star

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

Hi,
the problem dont disappear since many oracle component in my job does load the ojdbc6 jar.
SO I changed only the output component :
<IMPORT NAME="ORACLE_11-6"  MODULE="ojdbc6.jar" MVN="mvnSmiley Surprisedrg.talend.libraries/ojdbc6/6.0.0"
becomes
<IMPORT NAME="ORACLE_11-6"  MODULE="ojdbc7.jar" MVN="mvnSmiley Surprisedrg.talend.libraries/ojdbc7/6.0.0"
a test with only an oracleoutput did work. I added a toraclerow component BEFORE the toracleoutput and the job throw the ArrayIndexOutOfBound, Finaly, if i run the job when the outout component is called before the oraclerow, the job wont even compile saying it miss the ojdbc6.jar! And all these tests used tLibraryLoad (with ojdbc7.jar) as first step.
My conclusion is to edit tOracleXYZ_java.xml 
TOS_DI-20160510_1709-V6.2.0\plugins\org.talend.designer.components.localprovider_6.2.0.20160510_1709\components\tOracle****
Anybody have a better solution?
One Star

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

FYI
Instead of changing all my component xml files, I ended up changing all my "DB version" to 12-7­.
It did solved my problems
Note that Talend repository AND Oracle do not have the same ojdbc6 jar:
https://talend-update.talend.com/nexus/content/repositories/libraries/org/talend/libraries/ojdbc6/6....
vs
http://www.oracle.com/technetwork/apps-tech/jdbc-112010-090769.html
Seventeen Stars

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

Thats great! Sorry actually I should know changing the used Oracle version to a higher change also the driver.
I see, the SHA-1 checksum is quite different. Could you file a JIRA ticket?
Actually I hate jars without a clear version number, IBM and Oracle often do not provide such a clear number in the file name.
One Star

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

Jira here : https://jira.talendforge.org/browse/TDI-37691
Dont be sorry, your initial suggestion helped me find a solution!
Also, I would not even use Talend if all tFileExcel component were not existing!
Thanks again
Four Stars

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

Hi,
I followed what manuel.dion  said to change DB version to 12 and it corrected all the jobs.  I just want to confirm if it will create any new issue.  Originally, DB version was 11 and without checking compatibility, I flipped it to 12.
Is that a better solution for error that threw the ArrayIndexOutOfBound?
Four Stars

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

Hi there,
I want to add one more question.  The concern I have is because our oracle version that we use it as Target database is 11 version.  So flipping it to DBversion to 12 although jobs in Talend works, will it cause any new issue?
I appreciate your response.
Thanks
Seventeen Stars

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

I think it will work. Normally the driver is backwards compatible.
Four Stars

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

Jlolling, Thank you for your response.  Oracle Database 11g Release 11.2.0.4.0 - 64bit Production is what our database is.  So just to confirm, if I flip Metadata database connection of all the Talend jobs to update Oracle Database Tables, in the properties of Metadata, DB version to Oracle 12 should not create any new issue is that right?  Jobs works, however, I am reluctant this to promote to production because of discrepancy in the Oracle version vs what we use it in Talend. 
Thank you
Seventeen Stars

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

Hi, yes, thats my own experiences. Hope it will work for you too. But you can check that easily. If you have doubt, simple create a copy of your current database connection and try it on the copy.
Four Stars

Re: tOracleOutput - java.lang.ArrayIndexOutOfBoundsException: -32703

Thank you, yes it worked even after promoting to the test environment.  We are planning to recommend this to others who encounter this issue.  They may have to update all the jobs where connections are shared.