cancel
Showing results for 
Search instead for 
Did you mean: 

Problem to use lookup api

Former Member
0 Kudos

Hi,

I would like to lookup data using the lookup API. When I try to instantiate a channel I get exception below, indicating the the Channel class can't be found. After this imported aii_ib_core.jar and aii_map_api.jar as archives into the directory - but with no success.

The code for accessing the channel looks as follows:

Channel channel = LookupService.getChannel("MYSERVICE", "MYSENDER");

DataBaseAccessor accessor = LookupService.getDataBaseAccessor(channel);

where MYSERVICE is the service name and MYSENDER the sender name. Do these names have to be fully qualified in any way?

Thank you and regards,

Heiko

-


Exception stack:

Thrown:

MESSAGE ID: com.sap.aii.ibrun.server.mapping.rb_MappingRuntimeException.CANNOT_INSTANCIATE_CLASS

com.sap.aii.ibrun.server.mapping.MappingRuntimeException: Unable to instantiate class FaktMonatswerteMapping (urn:eon.com/est/vertriebsreporting, 55a445f0-576a-11da-cc4a-f46f0a10745b, -1)

at com.sap.aii.ibrun.server.mapping.JavaMapping.instantiateStreamTransformation(JavaMapping.java:155)

at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:47)

at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91)

at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:78)

at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:88)

at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:63)

at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79)

at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131)

at sun.reflect.GeneratedMethodAccessor484.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:62)

at java.lang.reflect.Method.invoke(Method.java:391)

at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187)

at $Proxy34.processFunction(Unknown Source)

at sun.reflect.GeneratedMethodAccessor940.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:62)

at java.lang.reflect.Method.invoke(Method.java:391)

at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:95)

at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequestInternal(RFCJCOServer.java:113)

at com.sap.engine.services.rfcengine.RFCJCOServer$ApplicationRunnable.run(RFCJCOServer.java:171)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged1(Native Method)

at java.security.AccessController.doPrivileged(AccessController.java:321)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:95)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:159)

Root cause:

java.lang.NoClassDefFoundError: com/sap/aii/mapping/lookup/Channel

at java.lang.Class.getDeclaredConstructors0(Native Method)

at java.lang.Class.privateGetDeclaredConstructors(Class.java:1747)

at java.lang.Class.getConstructor1(Class.java:2063)

at java.lang.Class.newInstance3(Class.java:331)

at java.lang.Class.newInstance(Class.java:305)

at com.sap.aii.ibrun.server.mapping.JavaMapping.instantiateStreamTransformation(JavaMapping.java:139)

at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:47)

at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91)

at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:78)

at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:88)

at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:63)

at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79)

at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131)

at sun.reflect.GeneratedMethodAccessor484.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:62)

at java.lang.reflect.Method.invoke(Method.java:391)

at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187)

at $Proxy34.processFunction(Unknown Source)

at sun.reflect.GeneratedMethodAccessor940.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:62)

at java.lang.reflect.Method.invoke(Method.java:391)

at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:95)

at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequestInternal(RFCJCOServer.java:113)

at com.sap.engine.services.rfcengine.RFCJCOServer$ApplicationRunnable.run(RFCJCOServer.java:171)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged1(Native Method)

at java.security.AccessController.doPrivileged(AccessController.java:321)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:95)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:159)

#

Accepted Solutions (1)

Accepted Solutions (1)

MichalKrawczyk
Active Contributor
0 Kudos

Hi,

Have you seen my article? :

it describes RFC API but have a look:

https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/uuid/801376c6-0501...

also this weblog:

Lookup’s in XI made simpler

/people/siva.maranani/blog/2005/08/23/lookup146s-in-xi-made-simpler

Regards,

michal

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Heiko,

if you have stated com.sap.aii.mapping.lookup as import of your java class, and you get this error then it seems that the Lookup API can not be found in the classpath. The only reason i can imagine for this are deployment problems during application of the SP. So probably you can reapply the SP13 (or subsequent SP) for XITOOLS?

best regards

Christine

Former Member
0 Kudos

Hello Christine,

we are on SP12. Does this mean that I can only apply the lookup API if I'm on SP13?

Cheers,

Heiko

Former Member
0 Kudos

Hello Heiko,

definitely yes. Refer to this section of SAP Help http://help.sap.com/saphelp_nw04/helpdata/de/cf/406642ea59c753e10000000a1550b0/content.htm, where it clearly states that the lookup API is available from NW04 SPS13.

Best regards

Christine