cancel
Showing results for 
Search instead for 
Did you mean: 

Problem of using JNI in UDF(User Define Function) of SAP PI7.1.

Former Member
0 Kudos

Dear Sir.

I have a problem of using JNI in UDF(User Define Function) of SAP PI7.1.

I would like to use the JNI API in UDF during application mapping.

Whenever calling the UDF ,exception occurred such as below.

we tried test in 3 cases.

1. How to set up an OS env file.

Classpath and LIBpath.

2. How to import the jar file of JNI API to Imported Archives Object

in SAP PI ESR Builder.

3. How to use the JSPM such as JDBC Driver Deploy.

How can I solve the problem using the JNI API in UDF?

Please, reply asap.

Thanks.

- Error Message-

-


Tracing for additional info - Transformer.start throwable:

Thrown:

java.lang.UnsatisfiedLinkError: Native Library /cubeone/cubeapi1/lib/libCOencapi.so already loaded in another classloader

at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1774)

at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1734)

at java.lang.Runtime.loadLibrary0(Runtime.java:822)

at java.lang.System.loadLibrary(System.java:1002)

at com.cubeone.CubeOneAPI.<clinit>(CubeOneAPI.java:29)

at www.samsungsdixi.co.kr.SD.CubeOneLib.init(CubeOneLib.java:23)

at com.sap.xi.tf._MM_CubeOne_$MT$InnerLibsList.libsinit(_MM_CubeOne_.java:81)

at com.sap.xi.tf._MM_CubeOne_$MT$InnerLibsList.access$400(_MM_CubeOne_.java:73)

at com.sap.xi.tf._MM_CubeOne_.preStart(_MM_CubeOne_.java:46)

at com.sap.aii.mappingtool.tf7.AMappingProgram.start(AMappingProgram.java:496)

at com.sap.aii.mappingtool.tf7.Transformer.start(Transformer.java:134)

at com.sap.aii.mappingtool.tf7.AMappingProgram.transform(AMappingProgram.java:635)

at com.sap.aii.ibrep.server.mapping.exec.ExecuteXiMappingCommand.transformInternal(ExecuteXiMappingCommand.java:197)

at com.sap.aii.ibrep.server.mapping.exec.ExecuteXiMappingCommand.execute(ExecuteXiMappingCommand.java:94)

-


Accepted Solutions (1)

Accepted Solutions (1)

stefan_grube
Active Contributor
0 Kudos

In principle all required librarie for Java maping or UDF have to be added as Imported Archives Object.

ButI don't think that you can make JNI calls at all, as the J2EE container restricts acces to system ressources.

Answers (0)