cancel
Showing results for 
Search instead for 
Did you mean: 

how to reference sapjco from EAR deployment descriptors

Former Member
0 Kudos

Hello techies,

I´ve set up an EJB to use the JCo RFC Provider Service of the J2EE engine. Connection from R3 to EJB works but as soon as the EJB gets invoked, I get the error 'incompatible bean type - no processFunction found' from the RFCDefaultRequestHandler.invokeBean(..., JCO.Function) method.

The reason is clear to me - the JCO.Function class is loaded by different class loaders and thus the method parameters don´t match.

I´ve read in earlier postings that it is neccessary to reference the JCO in the module project and the ear deployment descriptor. That´s where my question begins.

How do I reference the JCO in the module project (what´s that?)? I think it has to do with the EJB jar, doesn´t it?

In the DeployTool I found a way how to set a reference to a library in the menu deploy-->libraries. But I am not sure what to specify here. I entered 'sapjco', since I saw an entry in the managers/library.txt file. Is that correct?

Any hints are welcome!

Regards,

Jan

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Jan,

you can set the reference to the EAR project using the reference.txt file that exists in the /managers folder.

In the library.txt file set a path which is reference to sapjco.jar files..like

library JCO sapjco.jar

in the refernce.txt add the JCO referece to the EAR project...like

reference Project library:JCO

where Project here is the name of your EAR file..

Ravi

Former Member
0 Kudos

Ravi,

thanks for your reply. The DeployTool has already made these entries in library.txt and reference.txt files.

Jan

SvetoManolov
Employee
Employee
0 Kudos

Hi Jan,

why do you think it is a class loader problem?

According to me the problem is that the RFC Engine cannot find the EJB, i.e. cannot lookup it from the naming. The reason for that usually is the JNDI name of the EJB.

Regards,

Svetoslav