Call from TIBCO Data Virtualization (TDV) to a web service operation returns NoSuchMethodError

Call from TIBCO Data Virtualization (TDV) to a web service operation returns NoSuchMethodError

book

Article ID: KB0076130

calendar_today

Updated On:

Products Versions
TIBCO Data Virtualization 7.0 and higher

Description

Scenario:

After a TDV upgrade, you see this error in your cs_server.log as a result of an execution of an introspected web service operation.  The error refers to Apache's Base64 codec.


Caused by: java.lang.Exception: An internal error has occurred.
Cause: org.apache.commons.codec.binary.Base64.<init>(I)V
    at com.compositesw.cdms.webapi.service.Util.createWebapiException(Util.java:94)
    ... 33 more
Caused by: org.apache.commons.codec.binary.Base64.<init>(I)V
    at com.compositesw.common.CompositeRuntimeException.rethrow(CompositeRuntimeException.java:143)
    at com.compositesw.server.request.HookProcedureRequest.invoke(HookProcedureRequest.java:83)
    at com.compositesw.cdms.webapi.service.WProcResultImpl$InvokerThread.run(WProcResultImpl.java:760)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    ... 1 more
Caused by: java.lang.NoSuchMethodError: org.apache.commons.codec.binary.Base64.<init>(I)V
    at org.apache.http.impl.auth.BasicScheme.authenticate(BasicScheme.java:166)
    at org.apache.http.impl.auth.HttpAuthenticator.doAuth(HttpAuthenticator.java:239)
    at org.apache.http.impl.auth.HttpAuthenticator.generateAuthResponse(HttpAuthenticator.java:218)
    at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:263)
    at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:185)
    at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
    at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:111)
    at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
    at com.compositesw.cdms.ds.xmlhttp.XmlHttpConnection.call(XmlHttpConnection.java:365)
    at com.compositesw.cdms.ds.xmlhttp.XmlHttpRequest.invoke(XmlHttpRequest.java:61)
    at com.compositesw.server.request.HookProcedureRequest.invoke(HookProcedureRequest.java:79)
    ... 4 more


 

Issue/Introduction

This concerns an issue of installations and upgrades

Resolution

Look in your installation path /apps/common/lib  for the presence of both of these files:
commons-codec-1.3.jar
commons-codec-1.9.jar


The commons-codec-1.3.jar file is a remnant of earlier versions of data virtualization prior to TIBCO.   You should only have /apps/common/lib/commons-codec-1.9.jar present in your installs of TDV through version 8.2, at the time of this writing.

Delete commons-codec-1.3.jar to resolve the Base64 error.  This file may have been unsuccessfully removed during the upgrade process.