Hugo,
you're not doing anything wrong. The 7.1 API still requires some JNI
code, so what you are seeing is expected.
Calman
Hugo Visser wrote:
** Hi,
Can anybody confirm that they are using the 7.1 API (released, not
beta version) in a pure Java way, without any use of the .dlls (for
example, on a Mac)? The reason why I'm asking this is because I'm
running in to problems when I try to run my API in pure java mode.
I've disabled JNI loading through the arsys_api.xml file and set the
JRPC mode to true. Calls to Config.getInstance().getJrpcMode() and
Config.getInstance().getJniLoadMode() confirm this at runtime.
However, when I run my program I get this stacktrace:
Exception in thread "main" java.lang.UnsatisfiedLinkError: eval
at com.bmc.arsys.api.Proxy.eval(Native Method) <-- "native" !!
at com.bmc.arsys.api.Proxy.a(Unknown Source)
at com.bmc.arsys.api.Proxy.a(Unknown Source)
at com.bmc.arsys.api.Proxy.setProxyProperties(Unknown Source)
at com.bmc.arsys.api.PoolingProxyManager.getProxy(Unknown Source)
at com.bmc.arsys.api.ARServerUser.verifyUser(Unknown Source)
at com.bmc.arsys.api.ARServerUser.login(Unknown Source)
at test.Main.main(Main.java:27)
So I dug in the code and decompiled the Proxy class and this is what I
see in the (obfuscated) function a(Object[]):
...
int i = Config.getInstance().getJniLoadMode();
if(i == 1)
a(); // which is the function to load the JNI libraries
then the code continues with:
Object aobj1[] = (Object[])(Object[])eval(((Object) (aobj)));
which is the code to the "eval" function. However, "eval" is a native
function aka a function that relies on some native component that is
never loaded because the API is configured not to. So I'm really
asking myself and the list, how on earth this could ever work...This
must have broke somewhere between versions, because I did run the same
code against a different arapi71.jar, but from a beta version (I think).
So can anybody on the list confirm that this scenario does work (hint:
make sure there are no 7.1 libraries in you PATH)? Maybe Appajee can
step up and shed some light on this.
Thanks,
Hugo
__Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
html___
_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"