cancel
Showing results for 
Search instead for 
Did you mean: 

JCO exception BaseProxyException error key: RFC_ERROR_SYSTEM_FAILURE

Former Member
0 Kudos

Hi,

I am trying to oconnect up to a SAP system when running the tutorial "Using Generated Proxies to Call Function Modules" in the "SAP Web AS for Java Applications" guide.

The call jcoclient.connect();

works fine, and I see the user logged on in the SAP system. However the call to

Bapi_Flight_Getlist_Output output = myproxy.bapi_Flight_Getlist(input);

Causes an exception to be thrown of the type described above.

I am unable to see any evidence of RFC activity on the SAP side in the RFC trace files or system log; there are no system dumps, system log shows no problems.

All I can think of is that the RFC connection is not correctly configured on the R/3 side. Anybody have any experience of this?

BR,

Tony.

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Anthony,

can you give error stack trace?

I guess you are not passing all parameters which are mandatory to this BAPI properly.

Check it once again.

Also give your code for the same.

Regards,

Bhavik

Former Member
0 Kudos

Sorry I'm new to the Java side, coming from an ABAP background.

Where do I find the stack trace?

Kind regards,

Tony.

Former Member
0 Kudos

Hello,

in your code, you should have an 'try-catch'-part.

try{

...

}

catch (Exception ex){

ex.printStackTrace();

}

So you can get the stack trace.

Hope this will help you.

Regards,

Bernd Manowski

Former Member
0 Kudos

Hi,

Thanks for the suggestions; the stack trace is showing the following:

com.sap.aii.proxy.framework.core.BaseProxyException: See RFC trace file or SAP system log for more details, error key: RFC_ERROR_SYSTEM_FAILURE

at com.sap.aii.proxy.framework.core.AbstractProxy.send$(AbstractProxy.java:150)

at mypackage.MyProxy_PortType.bapi_Flight_Getlist(MyProxy_PortType.java:16)

at mypackage.MyMainClass.main(MyMainClass.java:50)

I dug around the Java system with another one of my colleagues who is much more experienced with Java. In the project folder there was a file dev_rfc.trc, which contained the following text:

        • ERROR file opened at 20050921 183638 FLE Daylight T, SAP-REL 640,0,17 RFC-VER 3 661550 MT-SL

T:5376 *> RfcInstallStructure2 : wrong API call : entries == 0 is not allowed

Can I assume from this that either I am not passing the correct data in, or I am getting a failure bacause data is being expected to be passed back, but none is being returned?

Unfortunately the SAP system that I am connecting to has no data in the tables for anything to be returned.

I tested the BAPI inside the SAP system, and it works fine, but returns no data.

Kind regards,

Tony.

Former Member
0 Kudos

Hi Anthony,

Are you providing all required data to call this BAPI corrcetly?

Check this once again. And as you said, there is no data in SAP r/3, then when you execute bapi and then try to manipulate returned data, it should give null pointer exception. But, you are getting another exception. So, first try to check your input parameters.

Regards,

Bhavik

Former Member
0 Kudos

Actually I think that the problem is coming on the R/3 side. This is an RFC call, but I don't see where the RFC connection is specified in the code. When testing an RFC call from within the SAP system, one has the possibility to propose the RFC destination in the parameters to invoke the RFC enabled function module.

In the parameters in the Java code to connect to the system, I do not see where that RFC parameter is specified. Do you know how the correct RFC connection parameters are provided on the Java side? I see in the parameters the system to connect to, but nothing about the RFC connection to use.

BR,

Tony.