I need to recompile the kalturaClient-3.1.4.jar file for support of Java 6 (yes…ancient). But I can’t find source for that version. Is there a hidden repository or a way to get that version (I can’t use the current version because of server incompatibilities)
Our Java client has gone through a major change back in June 2017, mainly to support multi-threading.
Unfortunately, the newer client, also released as a Maven package here:
Is incompatible with the older client:
If you have legacy code that relies on the older client and you need to compile it against Java 1.6 , you should take it from the 12.18.0 branch of this repo: https://github.com/kaltura/KalturaGeneratedAPIClientsJava/tree/12.18.0
12.18.0 was the last branch for this client, 12.20.0 and above [current stable branch is 13.12.0] contains the newer client version.
To build it, download https://github.com/kaltura/KalturaGeneratedAPIClientsJava/archive/12.18.0.zip, extract and run:
$ mvn -Dmaven.test.skip=true package $ mvn package
This should produce target/KalturaClient-3.3.1.jar which should be still compatible with the kalturaClient of version 3.1.4 [I’m not sure where you got this client from, I’m afraid as the version we released to the Maven repo was 3.2.1, back in Oct, 2015 so this must be way before even that, guess you downloaded the archive from another source a long time ago].
Thanks! Will give it a whirl and report back.
So the compile went fine but the code that was using this syntax:
String ks = client.getSessionService().start(adminSecret, emailAddr, KalturaSessionType.ADMIN);
Fails with an error that the method setPartnerId is undefined. That is similar to the error I was receiving before, and the vendor (Streaming Media Host) sent me the 3.1.4 KalturaClient jar. Getting the correct session key was the original issue. This:
String ks = client.generateSession(adminSecret, uploadUserId, KalturaSessionType.ADMIN, partnerId);
would not properly negotiate with their server. Any idea on how to proceed?
Not exactly sure what you mean by “the vendor (Streaming Media Host)…” are you a StreamAMG customer? If so, see my reply here:
If you’re self hosting your own Kaltura Server or some other company is hosting it for you, you need to ask them to send you the Java client’s source as generated on the server in question.
This can be done by running:
# php /opt/kaltura/app/generator/generate.php java
From a shell on the Kaltura Server. It will place the client archive under /opt/kaltura/web/content/clientlibs/java_%d-%m-%Y.tar.gz
Then they can send the archive to you so that you can compile it using Java 1.6 .