Skip to Content
avatar image
Former Member

Servlet using JCO throws exceptions after approx 2 weeks of processing.

I have a servlet that accesses RFC's and returns the data as XML. The servlet only retrieves data, nothing is updated. It runs fine for about two weeks and processes upwards of 70,000 transactions and then starts throwing jco exceptions. No java runtime errors occur before the jco exceptions. Out of the blue at any time after about 14 days it throws it's first jco exception. After the first error, it's done for good. Dropping the connection pool doesn't help. The entire servlet and most times the application server needs reloaded. Any ideas what might cause this or how to debug the underlying cause?

Environment: Websphere 5.1 Application Server, Jco 2.1.6

The login properties are:

jco.client.user=myname

jco.client.passwd=mypass

jco.client.sysnr=00

jco.client.mshost=myhost

jco.client.group=mygroup

jco.client.client=010

jco.client.r3name=myR3name

First exception (all subsequent look the same)

2007-07-05 10:26:57,922 WARN SAPJcoCall : Creation of function template failed

com.sap.mw.jco.JCO$Exception: (104) RFC_ERROR_SYSTEM_FAILURE: RFC_ERROR_SYSTEM_FAILURE

at com.sap.mw.jco.rfc.MiddlewareRFC$Client.nativeExecute(Native Method)

at com.sap.mw.jco.rfc.MiddlewareRFC$Client.execute(MiddlewareRFC.java(Inlined Compiled Code))

at com.sap.mw.jco.JCO$Client.execute(JCO.java(Compiled Code))

at com.sap.mw.jco.JCO$Client.execute(JCO.java(Compiled Code))

at com.sap.mw.jco.JCO$Repository.execute(JCO.java(Inlined Compiled Code))

at com.sap.mw.jco.JCO$Repository.queryFunctionInterface(JCO.java(Compiled Code))

at com.sap.mw.jco.JCO$Repository.queryFunctionInterface(JCO.java(Compiled Code))

at com.sap.mw.jco.JCO$Repository.getFunctionInterface(JCO.java(Compiled Code))

at com.sap.mw.jco.JCO$BasicRepository.getFunctionTemplate(JCO.java(Compiled Code))

at com.aspect.csstosap.v1.SAPJcoCall.createFunction(SAPJcoCall.java(Compiled Code))

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • Best Answer
    avatar image
    Former Member
    Aug 03, 2007 at 03:39 AM

    did yoy consider using JRA instead of JCO? plain JCO and even its connection pooling isnt probably optimised to run inside an appserver runtime....

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      JRA is a recommended way of connecting from Java applications which run inside an application server environment. you can search more about JRA on help.sap.com and can see the advantages listed.