Create a error table with the same structure of the table with datatype of all columns as varchar2(2000) and then add 2 more columns ERRORCODE and ERRORMESSAGE again same datatype.
Add this into Talend job and then from the main table link this table with reject connector.
This works even in batch mode, I tested it. It will capture all error records including the error code and error message into the newly created error table.
Hope this helps.