Talend Job using custom routine and jar runs in Studio but not in TAC
I have a job that has a routine called encryptor, loads a library called commons-codec-1.6.jar , and a tjavaflex that calls the routine to encrypt passwords. The job runs just fine in the TIS 4.2.3 (no patches). When we deploy and run the job via the job conductor the job fails.
We have added the classpaths. we have added the file location to the component advanced properties.
We have tried running via job conductor and remote deploy, both give the same errors.
Exception in thread "main" java.lang.Error: java.lang.Error: java.lang.Error: java.lang.Error: java.lang.Error: java.lang.NoClassDefFoundError: routines/EncryptorException
at
Hi
Where is Talend JobServer, local or remote?
What's the path of commons-codec-1.6.jar?
Try to copy commons-codec-1.6.jar into jdk/lib.
Regards,
Pedro
I have added the path to the jdk/lib.
The jobserver is local or remote (we have talend studio running on the server as well).
I'm starting to think that the error is not related to the library, but to the tjavaflex calling the routines. Again, this job runs just fine from the studio on the machine where the job server resides, but not when run on the jobserver itself . Any ideas would be helpful if you have run into this situation.
I am adding the code here. Possibly is it written incorrectly:
START CODE:
routines.Encryptor masterEncryptor = new routines.Encryptor(context.CC_MasterKey, "AES");
routines.Encryptor encryptor = new routines.Encryptor(masterEncryptor.decrypt(context.CC_HashKey), "AES");
MAIN CODE:
row4.CREDIT_CARD_NUMBER=encryptor.encrypt(DPS_CREDIT_CARD_output.CREDIT_CARD_NUMBER);
END CODE:
None: