on 04-16-2008 4:05 PM
Hello everybody,
I am working on a SAP/R3-System and trying to connect R3 with a JCO Server on a NetWeaver (CE7.1). I have created and tested the JCO RFC Provider at the NetWeaver and a RFC-Destination at the SAP/R3-System.
In a next step I want to transfer an IDoc, containing order-data, to the NW-System. For this I use the transaction me21n. R/3 submits the IDoc correctly. I know this, because of for further testing I implemented a JCo.Server with the method handleRequest(JCO.Function function) in a normal JAVA class. This JAVA-application gets the order-data.
But my task is to receive the data via the JCO RFC Provider of the NW-System. So I have implemented and deployed a Bean with the JNDI name IDoc_INBOUND_ASYNCHRONOUS (business-method: processFunction(JCO.Function function)) at the NW-System. It seems, that this Bean is called from the JCO RFC Provider but throws an exception I can´t fix.
Do you have any ideas?
Here the error-message:
java.lang.RuntimeException: Bean IDOC_INBOUND_ASYNCHRONOUS not found on host AAM-NetWeaver, ProgId =NW_ORCL_PO: Exception during lookup operation of object with name rfcaccessejb/IDOC_INBOUND_ASYNCHRONOUS, cannot resolve object reference.
at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:121)
at com.sap.engine.services.rfcengine.RFCJCOServer$J2EEApplicationRunnable.run(RFCJCOServer.java:269)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:152)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:247)
Caused by: com.sap.engine.services.jndi.persistent.exceptions.NamingException: Exception during lookup operation of object with name rfcaccessejb/IDOC_INBOUND_ASYNCHRONOUS, cannot resolve object reference. Root exception is javax.ejb.EJBException: Bean sap.com/JcoEAR*annotation
at com.sap.engine.services.jndi.implclient.ClientContext.lookup(ClientContext.java:528)
at com.sap.engine.services.jndi.implclient.OffsetClientContext.lookup(OffsetClientContext.java:266)
at com.sap.engine.services.jndi.implclient.OffsetClientContext.lookup(OffsetClientContext.java:286)
at javax.naming.InitialContext.lookup(InitialContext.java:351)
at javax.naming.InitialContext.lookup(InitialContext.java:351)
at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:104)
... 5 more
Caused by: javax.ejb.EJBException: Bean sap.com/JcoEARannotation|JCoEJB.jarannotation|JCoListenerBean does not expose RFC access
at com.sap.engine.services.ejb3.runtime.impl.RFCNamingObjectFactory.getObjectInstance(RFCNamingObjectFactory.java:25)
at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:283)
at com.sap.engine.services.jndi.implclient.ClientContext.lookup(ClientContext.java:464)
... 10 more
Thanks a lot for your help.
Stefan
I'm not quite sure, but there are two things in the stack trace I noticed:
Caused by: com.sap.engine.services.jndi.persistent.exceptions.NamingException: Exception during lookup operation of object with name rfcaccessejb/IDOC_INBOUND_ASYNCHRONOUS, cannot resolve object reference. Root exception is javax.ejb.EJBException: Bean sap.com/JcoEAR*annotation
you should check the jndi-service if the object exists, and if its linked to you ejb... probably do a manual jndi lookup and execute it manually
second is
Caused by: javax.ejb.EJBException: Bean sap.com/JcoEARannotation|JCoEJB.jarannotation|JCoListenerBean does not expose RFC access
you need to do that, I don't have in mind how, but I think its a certain interface, am I right? check the tutorial on sap rfc service
hope that helps
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
82 | |
10 | |
10 | |
9 | |
6 | |
6 | |
5 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.