cancel
Showing results for 
Search instead for 
Did you mean: 

Call EJB from ABAP in NW2004s

Former Member
0 Kudos

Hello everybody,

I'm trying to call a EJB function from ABAP code in NW2004s. I search SDN for almost two days now but can't get it to work.

Here is what I've done:

- created a EBJ in SAP NetWeaver Developer Studio 7.0.11 (came with our NetWeaver installation dvds)

- added a function: public void processFunction(com.sap.mw.jco.JCO.Function function)

- edited ejb-j2ee-engine.xml setting : <jndi-name>Z_ISR_BLOG</jndi-name>

- found that in jndi registry under: rfcaccessejb/Z_ISR_BLOG

now something I don't understand by reading in SDN:

- I created a JCo RFC Provider called ISRJCO and entered connection informations for our system

- I created a entry in sm59 (type TCPIP, registered remote programm) and connection test worked for it

How do I now access my EJB? Does anybody have some howto links for me?

Thank you very, very much in advance!

...

Thorsten

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Thorsten,

you will have to use your bean with the processFunction() method.

http://help.sap.com/saphelp_nw04s/helpdata/en/6a/82343ecc7f892ee10000000a114084/frameset.htm

1. On startup the JCo RFC Provider service connects to the Web AS repository.

2. On startup the JCo RFC Provider service registers itself at the Gateway with a defined name. It is possible to register it under different names and at different Gateways.

3. The Web AS calls a function for the registered RFC destination.

This graphic is explained in the accompanying text

Make sure that the function is defined in the repository!

4. The Gateway forwards the call to the JCo RFC Provider service.

5. The JCo RFC Provider service looks in the JNDI for the EJB, which is registered under the function name.

This graphic is explained in the accompanying text

The name of the function must be identical with the JNDI name of the bean, that is, it is necessary to have a JNDI name. If there is no such name, the JCo RFC Provider service will not be able to find the bean.

It is advisable for the beans to be written with a LocalHome interface.

6. The JCo RFC Provider service calls the processFunction(JCO.Function) method of the EJB found.

7. The results of that call (the modified JCO.Function) are passed to the Gateway.

8. The Gateway passes the results back to the Web AS.

Have a look here too: http://help.sap.com/saphelp_nw04/helpdata/en/0f/74e2963e4f9840ab9a4b9e10c5ebcb/frameset.htm

Regards,

Chris

Edited by: Christian Cz. on Apr 15, 2009 4:33 PM