Help on Jco

Hi All,
I am new to creating Jcos.Can any one have any tutorial on Jcos in EP6 SP2 pdk.I read help document but i am really confused.Its little urgent please post your valueble suggestions.
Thaks in advance
JH

Hi Mike,
Thank you for your reply.
I am new to this JCO.I dont know exactly the difference between JCA and JCO.Could you please elaborate it?.
By reading pdk documentation i installed JCo.Now the evvironment is set.Actually i am using eclipse with sap plugins once i create the project.I dont know exactly where i have to copy the Jco java file which i saw in pdk jco examples.I dont know much about portalapp.xml file .
I didnt found any doc on creation of jco from scratch.
I am really thank ful to you if you provide any doc.
Thank you very much
regards,
JH

Similar Messages

  • URGENT HELP !JCO RETURN structure from SAP

    Hello,
    I am working on my intern project and I got some trouble.
    I have used JDBC to access a table in Oracle(this is an independent DB)I updated a column in the table and selected all data that
    was marked as 6 based on the update(SAP needs this data). I passed the values to a JCO application,
    which connects to SAP and send the data (I presume what I'm doing is correct) to a structure in SAP.
    SAP does some internal calculations with the data and should return the data back using the same
    structure but this time with some changes on the data.
    For example the field steuk is marked as 7 if the data processing was successful and if the data
    structure wasn't successful a 6 will be return.
    The return Values should be updated in the oracle DB indicating if the transfer was successful
    or not. And next time the same data will be sent to SAP following the same path.
    Now when I look at the return getString data in Eclipse, the result seems ambiguous.I don't see the data I presumably
    sent to the SAP structure using:
    JCO.ParameterList list = function.getTableParameterList();
    JCO.Table ztable =  list.getTable("ZSAORA_RUECK");
         for (int i = 0; i < 19; i++) {
         ztable.appendRow();
         ztable.setValue(value,field name);
    Am I doing some thing wrong here??? Any Help will be highly appreciated. Codes could be sent to [email protected]
    BELOW are the codes:
    CONNECTING TO test_table in Oracle DB:
    import java.sql.*;
    public class DatabaseConnect {
         public static void main(String[] args) {
         Connection con = null;
         Statement stmt = null;
         ResultSet re = null;
         String[] ParamArray;            
            ParamArray = new String[24];
         //Properties logon;
         try {
              Class.forName("oracle.jdbc.driver.OracleDriver");
         con = DriverManager.getConnection
    ("jdbc:oracle:thin:@226.190.0.1:1521:testdb","test","test1");
         stmt = con.createStatement ();
         stmt.executeUpdate("UPDATE test_table set steuk = 6 WHERE steuk = 5");
    ResultSet rs = stmt.executeQuery("SELECT mandt,kokrs,werks,arbpl,aufnr,vornr,ile01,"+
    "lsa01,ism01,ile02,lsa02,ism02,ile03,lsa03,ism03,"+
    "ile04,lsa04,ism04,steuk,matnr,budat,kostl,pernr,"+
    "rueckid FROM test_table where steuk =6");                              
         while (rs.next()) {
         for (int i = 1; i <= 24; i++){
         ParamArray[i-1] = rs.getString(i);
         System.out.print(rs.getString(i) + 't');
         System.out.println();                    
         } catch(Exception e) {
         e.printStackTrace();                    
         } finally {
              try
         if(stmt != null) stmt.close();
         if(con != null) con.close(); 
         } catch (Exception exception) {
              exception.printStackTrace();
         // Bapi call
         TryBapi sap = new TryBapi(ParamArray);
    BELOW IS THE JCO Code which connects to SAP and send data to the structure:
    import com.sap.mw.jco.IFunctionTemplate;
    import com.sap.mw.jco.JCO;
    public class TryBapi extends Object {     
    JCO.Client mConnection;     
    JCO.Repository mRepository;     
    OrderedProperties logonProperties;
    public TryBapi(String[] paramArray){
         try {
         logonProperties = OrderedProperties.load("/logon.properties");
         mConnection = JCO.createClient((String)logonProperties.get("jco.client.client"),
             (String)logonProperties.get("jco.client.user"),
            (String)logonProperties.get("jco.client.passwd"),
                             null,
           (String)logonProperties.get("jco.client.ashost"),
         String)logonProperties.get("jco.client.sysnr")
         mConnection.connect();
         mRepository = new JCO.Repository("SAPJCO",mConnection);
         catch (Exception ex) {
         ex.printStackTrace();
         System.exit(1);
         JCO.Function function = null;
         JCO.Table tab = null;
         try {
              function = this.createFunction("Z_UPDATE_SAORA_RUECK");
              if (function == null) {
              System.out.println("Z_UPDATE_SAORA_RUECK not found in SAP.");
              System.exit(1);
         JCO.ParameterList list = function.getTableParameterList();
              JCO.Table ztable =  list.getTable("ZSAORA_RUECK"); //inserting 24 records loop.
         for (int i = 0; i < 24; i++) {
         ztable.appendRow(); //ztable.setValue(value, field name)
         ztable.setValue("300","MANDT");
         ztable.setValue("KOKRS" + i, "KOKRS");
         ztable.setValue("WERKS" + i, "WERKS");
         ztable.setValue("ARBPL" + i, "ARBPL");
         ztable.setValue("AUFNR" + i, "AUFNR");
         ztable.setValue("VORNR" + i, "VORNR");
         ztable.setValue("ILE01" + i, "ILE01");
         ztable.setValue("LSA01" + i, "LSA01");
         ztable.setValue("ISM01" + i, "ISM01");
         ztable.setValue("ILE02" + i, "ILE02");
         ztable.setValue("LSA02" + i, "LSA02");
         ztable.setValue("ISM02" + i, "ISM02");
         ztable.setValue("ILE03" + i, "ILE03");
         ztable.setValue("LSA03" + i, "LSA03");
         ztable.setValue("ISM03" + i, "ISM03");
         ztable.setValue("ILE04" + i, "ILE04");
         ztable.setValue("LSA04" + i, "LSA04");
         ztable.setValue("ISM04" + i, "ISM04");
         ztable.setValue("STEUK" + i, "STEUK");
         ztable.setValue("MATNR" + i, "MATNR");
         ztable.setValue("BUDAT" + i, "BUDAT");
         ztable.setValue("KOSTL" + i, "KOSTL");
         ztable.setValue("PERNR" + i, "PERNR");
         ztable.setValue("RUECKID" + i, "RUECKID");
         list.setValue(ztable,"ZSAORA_RUECK");
         function.setTableParameterList(list);
         mConnection.execute(function);
         catch (Exception ex) {
         ex.printStackTrace();
         System.exit(1);
          JCO.Table codes = null;
         try {
         codes = function.getTableParameterList().getTable("ZSAORA_RUECK");
         System.out.println("Return Values starts HERE:");
         for (int i =0; i < codes.getNumRows(); i++){                 
         codes.setRow(i);
         System.out.println(codes.getString("MANDT")+ 't'+
         codes.getValue("KOKRS")+ 't'+
         codes.getString("WERKS")+ 't'+
         codes.getString("ARBPL")+ 't'+
         codes.getString("AUFNR")+ 't'+
         codes.getString("VORNR")+ 't'+
         codes.getString("ILE01")+ 't'+
         codes.getString("LSA01")+ 't'+
         codes.getString("ISM01")
    /*     codes.getString("ILE02")+ 't'+
         codes.getString("LSA02")+ 't'+
         codes.getString("ISM02")+ 't'+
         codes.getString("ILE03")+ 't'+
         codes.getString("LSA03")+ 't'+
         codes.getString("ISM03")+ 't'+
         codes.getString("ILE04")+ 't'+
         codes.getString("LSA04")+ 't'+
         codes.getString("ISM04")+ 't'+
         codes.getString("STEUK")+ 't'+
         codes.getString("MATNR")+ 't'+
         codes.getString("BUDAT")+ 't'+
         codes.getString("KOSTL")+ 't'+
         codes.getString("PERNR")+ 't'+
         codes.getString("RUECKID")       */
         catch (Exception ex) {
         ex.printStackTrace();
         System.exit(2);           
         mConnection.disconnect();
    public JCO.Function createFunction(String name) throws Exception {
         try {
         IFunctionTemplate ft =     mRepository.getFunctionTemplate(name.toUpperCase());
         if (ft == null)
         return null;
         return ft.getFunction();
         catch (Exception ex) {
         throw new Exception("Problem retrieving JCO.Function object.");
    Message was edited by: Rudolph Emange
    Message was edited by: Rudolph Emange

    Hi Astrid,
    Thank you for your remarks. The problem I'm having is that when I do send the values to SAP using the loop:
    JCO.ParameterList list = function.getTableParameterList();
    JCO.Table ztable =  list.getTable("ZSAORA_RUECK");
         for (int i = 0; i < 19; i++) {
         ztable.appendRow();
         ztable.setValue(value,field name);
    I do expect to have(or see) some values when I do access the same table structure(This is just a structure and
    not a real table as I do understand that there is a different between a structure and a table in SAP) and
    not the field names back.In the second try and catch block:
    try {
         codes = function.getTableParameterList().getTable("ZSAORA_RUECK");
         System.out.println("Return Values starts HERE:");
         for (int i =0; i < codes.getNumRows(); i++){                 
         codes.setRow(i);
         System.out.println(codes.getString("MANDT")+ 't'+
         codes.getValue("KOKRS")+ 't'+
         codes.getString("WERKS")+ 't'+
         codes.getString("ARBPL")+ 't'+
         codes.getString("AUFNR")+ 't'+
         codes.getString("VORNR")+ 't'+
         codes.getString("ILE01")+ 't'+
         codes.getString("LSA01")+ 't'+
         codes.getString("ISM01")
    I'm trying to access the values I sent in the first try and catch block. I presume I should see some real values and not the
    field names.This is how my output looks like:
    300     KOKR     WERK     ARBPL0     AUFNR0     VORN     ILE     
    300     KOKR     WERK     ARBPL1     AUFNR1     VORN     ILE     
    300     KOKR     WERK     ARBPL2     AUFNR2     VORN     ILE     
    300     KOKR     WERK     ARBPL3     AUFNR3     VORN     ILE     
    300     KOKR     WERK     ARBPL4     AUFNR4     VORN     ILE     
    300     KOKR     WERK     ARBPL5     AUFNR5     VORN     ILE
    This does not reflect the values but the field names. Why is it this way? Does it mean that my array is wrong or I'm not at all
    sending the values. Please HELP ME OUT HERE.
    Could any one show me a better way how to send the values selected from Oracle table using perhaps an
    ARRAY to the ZSAORA_RUECK structure in SAP?
    I am trying to send the values from the select statement in the first jdbc application
    to the value field in ztable.setValue(value,  field name).
    My Regards!
    Message was edited by: Rudolph Emange

  • Need help in JCO connection creation/maintanence.

    Hi,
       In our project we have EP system ( Java Stack).We need to form the JCO connection that is required to deploy the web dynpro applications.We have taken a couple of JCO connection which are already there  SAP_R3_HumanResources  & SAP_R3_HumanResources_Metadata.For SAP_R3_HumanResources_Metadata JCO connection the user existing is a dialog user,also not having sufficient authorization to access all DDIC functions.My question is that what authorization required to user in this case to access all DDIC functions?Also for SAP_R3_HumanResources JCO connection what all prerequisites we require?.In this environment CD2 ( Dev.SAP system) is acting as backend to production portal PP6 system.Please let me know if you want any more details from my side.

    Hi nileshshete
    I quote this from sap-img.com:
    There are many functions of DDIC user.
    For E.g.. When you configure TMS you won't be able to configure it using sap*. For this you need a user who has access to Data dictionary and ABAP repository Object like DDIC user or user with sap_all and sap_new permission.
    http://www.sap-img.com/basis/function-and-role-of-user-types.htm
    I think u need a user with sap_all premission.
    Hope it helps,
    Nitsan

  • Need help on JCo

    Hi,
    I am getting error message while running JCo java code. I followed the given steps in the installation guide. I know i did something wrong in this.
    I created a folder C:\JCO and unzipped the downloaded JCo files librfc32.dll, sapjcorfc.dll and sapjco.jar.
    Copied the file librfc32.dll from C:\JCO directory to C:\WINNT\SYSTEM32
    Added the path c:\JCO\sapjco.jar; in the environmental variables. [I followed the following --> Right Click on My Computer --> Properties --> Advanced --> Environment Variables --> Edited the existing path and added with java path like C:\j2sdk1.4.2_05\bin;c:\JCO\sapjco.jar;].
    After this I am trying to execute the following code. It is copiling without any problem and giving error message while run mode.
    C:\JCO>java Bapi1
    Exception in thread "main" java.lang.NoClassDefFoundError: com/sap/mw/jco/JCO$Structure
    ******java code*****
    import com.sap.mw.jco.*;
    public class Bapi1 extends Object {
       JCO.Client mConnection;
       JCO.Repository mRepository;
       public Bapi1() {
          try {
             // Change the logon information to your own system/user
             mConnection =
                JCO.createClient("020", // SAP client
                  "myuserid", // userid
                  "****", // password
                  "EN", // language
                  "myerp server host name", // application server host name
                  "00"); // system number
            mConnection.connect();
            mRepository = new JCO.Repository("SAPJCo", mConnection);
          catch (Exception ex) {
            ex.printStackTrace();
            System.exit(1);
          JCO.Function function = null;
          JCO.Table codes = null;
          try {
             function = this.createFunction("BAPI_COMPANYCODE_GETLIST");
             if (function == null) {
               System.out.println("BAPI_COMPANYCODE_GETLIST" +
                                  " not found in SAP.");
               System.exit(1);
             mConnection.execute(function);
             JCO.Structure returnStructure =
               function.getExportParameterList().getStructure("RETURN");
             if (! (returnStructure.getString("TYPE").equals("") ||
                    returnStructure.getString("TYPE").equals("S")) ) {
               System.out.println(returnStructure.getString("MESSAGE"));
               System.exit(1);
             codes =
               function.getTableParameterList().getTable("COMPANYCODE_LIST");
             for (int i = 0; i < codes.getNumRows(); i++) {
               codes.setRow(i);
               System.out.println(codes.getString("COMP_CODE") + '\t' +
                                  codes.getString("COMP_NAME"));
          catch (Exception ex) {
            ex.printStackTrace();
            System.exit(1);
          try {
            codes.firstRow();
            for (int i = 0; i < codes.getNumRows(); i++, codes.nextRow()) {
              function = this.createFunction("BAPI_COMPANYCODE_GETDETAIL");
              if (function == null) {
                System.out.println("BAPI_COMPANYCODE_GETDETAIL" +
                                   " not found in SAP.");
                System.exit(1);
         function.getImportParameterList().
           setValue(codes.getString("COMP_CODE"), "COMPANYCODEID");
         function.getExportParameterList().
           setActive(false, "COMPANYCODE_ADDRESS");
         mConnection.execute(function);
         JCO.Structure returnStructure =
           function.getExportParameterList().getStructure("RETURN");
         if (! (returnStructure.getString("TYPE").equals("") ||
                returnStructure.getString("TYPE").equals("S") ||
                returnStructure.getString("TYPE").equals("W")) ) {
            System.out.println(returnStructure.getString("MESSAGE"));
         JCO.Structure detail =
           function.getExportParameterList().
           getStructure("COMPANYCODE_DETAIL");
         System.out.println(detail.getString("COMP_CODE") + '\t' +
                            detail.getString("COUNTRY") + '\t' +
                            detail.getString("CITY"));
      catch (Exception ex) {
        ex.printStackTrace();
        System.exit(1);
      mConnection.disconnect();
    public JCO.Function createFunction(String name) throws Exception {
       try {
         IFunctionTemplate ft =
            mRepository.getFunctionTemplate(name.toUpperCase());
         if (ft == null)
           return null;
         return ft.getFunction();
       catch (Exception ex) {
         throw new Exception("Problem retrieving JCO.Function object.");
    public static void main (String args[]) {
       Bapi1 app = new Bapi1();

    Hi Venu,
    You have to add the java library sapjco.jar to the java classpath instead of the system classpath. You can do this by adding the -cp or -classpath parameter to your java call. So then you would get:
    java -classpath C:JCOsapjco.jar Bapi1
    Hope this helps,
    Johan

  • Logon Screen Modificatio : Using JCo for Executing a Func Module in SAP R/3

    Hi all
       I am new to Portal(EP: 6.0: SP12) and JCo.
       We are customizing the Logon Screen of the Portal to include a CLIENT field.
        And  we are planning to Call a Z Function Module present in the R/3 of the specified client(in the Logon Screen) using JCO.
        But i am really new to the Environment..
        Could anyone please help in carrying out this work???
        And also i would like to know how a Fuc Module can be called with the help of JCO. Providing a sample Code would really help me a lot!!!!!!  
    Thanks
    Kam
    Message was edited by: Kam

    Hi Kam
    You need to create a connection to that R/3 system for that.
    Try the following code:
    creating connection:
    =====================
    IConnectorGatewayService cgService = (IConnectorGatewayService)
         PortalRuntime.getRuntimeResources().
         getService(IConnectorGatewayService.KEY);
    IConnection con = cgService.getConnection("systemalias",request);
    ConnectionProperties cp = new ConnectionProperties(request.getLocale(),request.getUser());
    IInteraction ix = con.createInteractionEx();
    IInteractionSpec ixspec = ix.getInteractionSpec();
    ixspec.setPropertyValue("inputParameter","BAPI_SALESORDER");
    RecordFactory rf = ix.getRecordFactory();
    MappedRecord input = rf.createMappedRecord("inputParameter");
    input.put("EMPLOYEE_NUMBER",empNo);
    input.put("EMPLOYEE_NAME",empName);
    BAPI_SALESORDER==>calling fuction
    EMPLOYEE_NUMBER,EMPLOYEE_NAME===>parameter name
    empNo,empName===>parameter value
    <u>To retrive the value:</u>
    ============================
    MappedRecord output = (MappedRecord)ix.execute(ixspec,input);
    object rs = null;
    object result = output.get("SALES_ORDERS");
    if(result instanceof IRecordSet) {
         rs = (IRecordSet)result;
    con.close();
    Required jar files:
    ====================
    com.sap.portal.ivs.connectorserviceapi.jar,                                  genericconnector.jar,
                       connector.jar,
                       activation.jar
    regards,
    Yoga

  • Use of CRM_COND_COM_BADI badi... pls help

    Hi fnds,
    I am implementing ABAP routines to java user exits.
    Now in abap routine, there is a select query from a z table. Now what i understood in developing the same in java user exit is --
    download that same z table to crm from r3.
    implement CRM_COND_COM_BADI badi, and right the select query there.
    But what i dont understand is,
    what ist he use of badi CRM_COND_COM_BADI ?
    if i have a routine 615, where a z table is used..... how will it relate to this badi CRM_COND_COM_BADI, when i write a query..
    basically that query is to tell whether the condition type shud execute or not in req routine...
    now how can write this in badi?
    I am totally confused with this badi, could u explain on how to write the query in a java user exit.
    thanks a ton,
    Niraja

    Assume a scenario.
    You have a pricing condition that provides a discount to a sales based on the end user of the product. Assume this is a partner function different from Sold-To and is a part of the transaction. Remember, I am just making this up. Suppose you have the custom pricing condition table A999 with end user and discount rate. Since you have a custom condition A999, you would have downloaded the condition or created the condition in CRM. For that you must have defined the condition variable say zenduser.
    You can determine this enduser using some partner determination and keep it in the partner functions of the transaction or keep it in an EEWB field, depending upon the functional design. But, to determine the discount based on the end user, you must now put this end user partner function or EEWB field into the zenduser condition variable - the pricing structure. The CRM_COND_COM_BADI is the place where you will implement the header or item methods to populate the custom condition variables in the pricing structure with the values from the transaction.
    For your case, unfortunately, this BAdI won't do much help unless you change the design significantly. However, see my reply in the following thread for more help.
    JCo Connection / RFC in Pricing Userexit
    Easwar Ram
    http://www.parxlns.com

  • Call JCO.ParameterList.setActive() only once?

    In a loop construct where I am calling a JCO.Function over and over again, do I need to call setActive() on the export parameter list and the table parameter list only once to render unnecessary parameters inactive or do I have to do it on each iteration?  Please refer to the code example below:
    void processFunction(JCO.Client connection, String fxName) {
    JCO.Function fx = createFx(fxName);  // some helper method
    JCO.ParameterList epl = fx.getExportParameterList();
    JCO.ParameterList tpl = fx.getTableParameterList();
    deactivateExportParameters(epl);  // Deactive here?
    deactivateTableParameters(tpl);    // Deactive here?
    for (int i = 0; i < count; i++) {
       deactivateExportParameters(epl);  // or here?
       deactivateTableParameters(tpl);    // or here?
       setImportParameters(fx);  // helper method
       connection.execute(fx);
       processResults(fx);  // helper method
    The methods deactivateExportParameters() and deactivateTableParameters() both
    call JCO.ParameterList.setActive() to inactivate export parameters or table parameters
    based on whether they are referred to after the JCO.Function is executed.
    Thanks in advance.
    Message was edited by:
            Jim OHearn
    Message was edited by:
            Jim OHearn
    Message was edited by:
            Jim OHearn

    Hi Jim,
    the setActive method needs to be called only once. It is fired when the Function is created (either called from the Repository or created anew).
    When you want to use the function, call the setActive method before the for loop. If you had been actually creating the functions inside the loop, then you need to call the setActive method also in the loop.
    For e.g -
    JCO.Function fx;
    ParameterList tableParamList;
    for(int looper = 0; looper < 10; looper++)
              fx = createFunction("BAPI_NAME");
              tableParamList = fx.getTableParamList();
              tableParamList.setActive(false, "TABLE_NAME");
    Bye,
    Sameer

  • JCo request failed Last Retry

    Hello SAP GURUS
    I am getting the following ERROR in XI 3.0
    sxmb_ifr > RWB>Component Monitoring -->Bussiness Process Engine shows red with the following ERRORS message
    Please help
    Message: JCo request failed
    Stacktrace:
    com.sap.aii.rwb.exceptions.JaycoRequestFailedException: JCo request failed
    at com.sap.aii.rwb.rtcheck.rtcclient.JaycoConnector.selftest(JaycoConnector.java:202)
    at com.sap.aii.rwb.rtcheck.rtcclient.JaycoConnector.selftestBPE(JaycoConnector.java:173)
    at com.sap.aii.rwb.core.XIBusinessProcessEngine.selftest(XIBusinessProcessEngine.java:118)
    at com.sap.aii.rwb.web.componentmonitoring.model.CompTestModel.doSelftest(CompTestModel.java:606)
    at com.sap.aii.rwb.web.componentmonitoring.viewcontroller.CmDynPage.doSelftest(CmDynPage.java:304)
    at com.sap.aii.rwb.web.componentmonitoring.viewcontroller.CmDynPage.updateTests(CmDynPage.java:375)
    at com.sap.aii.rwb.web.componentmonitoring.viewcontroller.CmDynPage.selectNode(CmDynPage.java:388)
    at com.sap.aii.rwb.web.componentmonitoring.viewcontroller.CmDynPage.process_treeClick(CmDynPage.java:339)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:324)
    at com.sapportals.htmlb.page.DynPage.doProcessCurrentEvent(DynPage.java:172)
    at com.sapportals.htmlb.page.PageProcessor.handleRequest(PageProcessor.java:115)
    at com.sapportals.htmlb.page.PageProcessorServlet.handleRequest(PageProcessorServlet.java:62)
    at com.sapportals.htmlb.page.PageProcessorServlet.doPost(PageProcessorServlet.java:22)
    at com.sap.aii.rwb.web.componentmonitoring.viewcontroller.CmPageProcessor.doPost(CmPageProcessor.java:35)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.doWork(RequestDispatcherImpl.java:316)
    at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:372)
    at jsp_FC_Secure1151005370163._jspService(jsp_FC_Secure1151005370163.java:26)
    at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.service(JSPServlet.java:541)
    at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.service(JSPServlet.java:186)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
    at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
    at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
    at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
    at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
    at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
    at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
    at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
    at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
    at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
    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:100)
    at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)

    Hi, Madavi:
    I suggest that you work with your BASIS administrator and make sure all the post installation steps are correctly configured. Check the configuration guide.
    It seems that the error happens between ABAP and Java commnunication.
    Regards.
    Liang

  • Significance of BC Set Activation for GRC AC 5.3

    Dear Members,
    Request you to please help me understand the significance of the BC Set Activation in an HR implemented ABAP system,
    w.r.t. AC 5.3
    The AC 5.3 runs separately on the a java instance and connected to ABAP with the help of JCo's.
    Kindly assist, if you have any clue regarding the documentation for the same.
    I want to understand, the criticality of activating the VIRSANH and VIRSAHR BC Sets on ABAP side for the proper functioning of the GRC AC 5.3 and if their is any variation in the results of GRC , if the BC Sets are activated/ or if not activated.
    Many Thanks !
    Regards,
    Edited by: Molwana Lokisang on Feb 2, 2010 11:02 AM

    Molwana,
    the BC Set needs to be activated as part of the post-installation process. It will also provide you with data that the RTA needs to work.
    I have done this for many customers, there is no risk involved. All the "extra" data is in a separate namespace.
    Frank.

  • Fetching ABAP connection information from SLD

    Hi Experts,
    I had created one SLD. so i want to use the ABAP connection information of SLD in JCo programming.  how can we achieve this one?
    Thanks,
    Maha

    Hi,
    Refer the below links...
    SLD Configuration:
    Configuring SLD in Sneak Preview SAP NetWeaver '04 Sneak
    SAP Help on JCO Destinations and on other bussiness Packages.
    http://help.sap.com/saphelp_erp2005/helpdata/en/8c/cb3042366c0521e10000000a155106/frameset.htm
    Creating ABAP Technical System:
    http://help.sap.com/saphelp_nw70/helpdata/en/24/8fa93e08503614e10000000a114084/content.htm
    Regards,
    Srinivas

  • Interfacing SAP with Essbase

    Hi all,
    we would like to create interface between SAP(data source contain all views) to Essbase. Currently we are using Oracle Financials for mappping data into Essbase. Kindly let us know your views and suggestions on the same.
    Regards
    Rajesh

    Hi Herath,
    <b>1. Through the SAP GUI i should be able to process the documents which are available in the SAP repository and store them in an external repository system</b>
    It is always possible to all you want in SAP using your SAP GUI, that will never be a problem. Storing the result in external system say your local machine is also possible, you can download them as files etc.
    <b>Is this possible through JCo interface? Or else what other mechanisms can be followed.</b>
    This is also possible through JCo. The main reason we opt for JCo is to achieve the above mentioned functionality from an external system (non SAP) eg: creating materials in SAP from a external application. This is where you mainly need the help of JCo.
    Hope this will solve your problem. Let me know if you need anything more.
    Thanks
    Kathirvel

  • RFC Calling Problem in J2EE

    Hi Friends,
    I can call a web service in my java application. But if i try to call <b>exactly same code</b> in J2EE application (in Netweaver or Tomcat), First<b> I got java.lang.ExceptionInInitializerError: JCO.classInitialize(): Could not load middleware layer 'com.sap.mw.jco.rfc.MiddlewareRFC'
    JCO.nativeInit(): Could not initialize dynamic link library sapjcorfc [sapjcorfc (Not found in java.library.path)]. java.library.path [/opt/IBMJava2-amd64-142/jre/bin:/opt/IBMJava2-amd64-142/jre/bin:/opt/IBMJava2-amd64-142/jre/bin:/opt/IBMJava2-amd64-142/jre/bin/j9vm:/opt/IBMJava2-amd64-142/jre/bin:/usr/sap/FND/DVEBMGS00/exe:/usr/sap/FND/DVEBMGS00/exe:/usr/sap/FND/DVEBMGS00/exe:/tmp/sapinst_exe.10865.1173958600:/usr/sap/FND/SYS/exe/run:/oracle/client/10x_64/instantclient:/usr/lib:/usr/sap/FND/DVEBMGS00/j2ee/os_libs:/usr/sap/FND/DVEBMGS00/exe:/usr/sap/FND/DVEBMGS00/exe:/usr/sap/FND/DVEBMGS00/exe:/usr/sap/FND/SYS/exe/run:/oracle/client/10x_64/instantclient]
    </b>, and i i refresh page i got
    <b> java.lang.NoClassDefFoundError: com.sap.mw.jco.JCO</b> Error...
    Why exactly same code run in java but doesnt run in j2ee???
    My Code is blow.
    Thanks For Your Helps
    try {
                JCO.Client client = JCO.createClient("800","USER","PASS","en","fitides","00");
                client.connect();
                System.out.println(client.getAttributes());
                JCO.Repository mRepository;
                mRepository = new JCO.Repository("FIT", client);
                JCO.Table codes = null;
                JCO.Function function = null;
                IFunctionTemplate ft = mRepository.getFunctionTemplate("YIDO_ISKELE_LIST");
                function = ft.getFunction();
                client.execute(function);
                codes = function.getTableParameterList().getTable("T_ISKELE");
                System.out.println("ROWS :"+codes.getNumRows());
                for (int i = 0; i < codes.getNumRows(); i++, codes.nextRow()) {
                    codes.setRow(i);
                    System.out.println("KOD :"+codes.getString(1) +" - " + codes.getString(2));
                    System.out.println("ddd");
                client.disconnect();
            } catch(Exception ex) {
                ex.getMessage();

    Hi Eray,
    Congratulation!!! You got the solution!!!
    The applications in Portal resides @ X:\usr\sap[SID]\JC00\j2ee\cluster\server0\apps\sap.com
    Find your application there inside your application there will a WEB_INF directory.
    Inside it there will be a folder named "classes" at this level create a folder named "lib" insert all your related lib files there and then after restarting the server you can check whether your problem is solved or not.
    Let me know if the problem still exists!!!
    Regards,
    Prashil

  • MSS implementation questions

    Hi guys!
    I'm in trouble with my MSS implementation. There are a lot of threads of this topic, but no complex information about setup.
    Is there also an implementation guide, as it is for ESS?
    If yes, could you send me a link please?
    My questions are:
    a, Is it necessary to have set up SSO with the R/3 backend, or is the usermapping enough for MSS?
    b, My connection to R/3 from System administration->SLD->connection test worx. I have created also SAP_R3_HumanResources alias for this system. In spite of this i get an error, that app can not connect to backend. What can be wrong?
    c, Are there needed same setting also in J2EE admin?
    d, I have read about SAP_R3_HumanResources_Metadata alias.. What is it good for?
    Thanx for answer! Points are guaranteed!
    Peter

    Hi Peter,
    there is some documentation in the help.sap.com and also in the Portal Content Portfolio (see files at the top right; they contain some useful links...)
    You didn't write about the version of you portal, the ERP and the MSS version. Please do that if you want useful help.
    JCO: it is not necessary to install/ upload JCO in Netweaver.
    If you have issues with the connection from the portal to the ERP then there is some problem with the configuration;
    take a look to the ports and also use the fully qualified domain name and not the IP address (easier for later SSO config). Use first the user mapping to verify that you can connect.
    Regarding the SAP_R3_HumanResources_Metadata. that is an JCo property you have to define where you deployed the MSS  webdynpro part. The MSS portal package contains only "pointers" to the Web Dynpro components, which reside on the ERP side.
    Regards,
    Kai

  • Need help in installing the SAP Jco

    Hi All,
    I'm installing HP Change Impact analysis on Quality center and bring SAP in Sync later.One of the installtion step isto install the SAP JCo(Java connector ).I have installed the SAP Jco and on starting the CIT Server..I get a exception messsage
    "SAP Jco is not installed;noclassdeffounderror com\sap\mw\jco\Jco "
    Can anyone help in installing the SAP Jco successfully.
    Thanks,
    Venky

    Hi venkatesh,
    To create JCO follow the procedure.
    Logon to portal>content admn>create JCO destination-->Here u have create Jco for ?Model data and Metadata.
    steps invovled in it.
    1.      Define general data
    2.      Define the J2EE cluster
    3.      Define the data type and connection type
    4.      Define the application server or message server
    5.      Define the security settings.
    Please follow the link for more information.
    http://help.sap.com/saphelp_nw04/helpdata/EN/3a/3b1b40fcdd8f5ce10000000a155106/content.htm
    Regards,
    srikanth

  • Error during data transfer from Lotus Notes to SAP via JCO - Urgent Help Required

    Dear SAP Expert:
    I need your help! Recently getting error during data transfer to SAP. I need your suggestion!
    I am transferring Lotus Notes data to SAP via JCO, recently getting the below error msg, could you pls tell me what could be the reason?
    Please suggest me how to fix that kind of issue.
    "com.sap.mw.jco.JCO$Exception: (104) RFC_ERROR_SYSTEM_FAILURE: Error in ABAP/4 statement when processing an internal table. table.
    at com.sap.mw.jco.rfc.MiddlewareRFC$Client.nativeExecute(Native Method)
    at com.sap.mw.jco.rfc.MiddlewareRFC$Client.execute(MiddlewareRFC.java:1244)
    at com.sap.mw.jco.JCO$Client.execute(JCO.java:3842)
    at com.sap.mw.jco.JCO$Client.execute(JCO.java:3287)
    at SAPAdapter.execute(Unknown Source)
    at JavaAgent.fillBapiAndWriteBackToNotes(Unknown Source)
    at JavaAgent.NotesMain(Unknown Source)
    at lotus.domino.AgentBase.runNotes(Unknown Source)
    at lotus.domino.NotesThread.run(NotesThread.java:249)
    Thanks in advance! Your help would be highly appreciated! Thanks again!

    error is clear, check your abap code.

Maybe you are looking for