MDM connectivity using JCA

hi friends,
I want to connect MDM server using JCA
can you please provide me the sample code for that.
Regards,
Venki

Hi Venki,
I'm trying to connect to SAP systems from my webservice provider with the help of JCA, could you help on this.

Similar Messages

  • Mdm server connectivity using JCA

    hi need code for mdm server connectivity using JCA.
    Regards,
    venki.

    Hi venki ,
    Go through these links it may help you with a better understanding on the topic:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/sdn_oss_ep_con/~form/handler%7b5f4150503d3030323030363832353030303030303031393732265f4556454e543d444953504c4159265f4e4e554d3d373131333330%7d
    MDM JCo Connection takes a long time
    MDM connectivity to java application
    Hope It Helped,
    Kindly Reward Points if found useful
    Thanks & Regards
    Simona Pinto

  • R/3 connection using JCA For Ep 6.0 SP2 !!

    I am able to connect to R3 system from the Ep 6.0 Sp2 portal using IConnectorService (JCA).
    I am trying to find a solution where I can generate java proxy for BAPI's so that I can eliminate data mapping between R3 and Java in EP 6.0 SP2 environment.
    In EP 6.0 Sp4, the Netweaver Developer Studio provides a "SAP Enterprise Connector" wizard which generates proxy classes for java but uses JCO to connect to R/3 system. It is very usefull since the mapping of data types can be done in one place for all BAPI's which needs to be called from the portal and also I do not need to constatly look at the SAP GUI for BAPI definitions and return types. I can look at the java proxies to know exactly what I need to pass to invoke a BAPI and what I am getting back. I really like these connector wizard.
    Is there a way to generate proxies using some tool for EP 6.0 sp2 using JCA as the mechanism since it is recommended to  use JCA from EP 6.0 onward instead of JCO for better performance and management of R/3 connection ??
    I appreciate your help !!

    Thanks Will.
    I have two choices to connect to R/3 system from EP 6.0 Sp2 ...
    1) JCA : If I use JCA, I may have to write the layer of
             mapping the data and calling the BAPI's from R/3
             system to java.
    2) JCO : I can use the "SAP Enterprise Connector" wizard.
             The only thing I have to make sure is R/3
             connection management using IJCOClientService 
             and JCOClientPoolEntry.
    I am also aware that the iView's I am writing will be used by lot of users since we are migrating an existing applications functionality to SAP Portal.
    So my question is, Which way should I implement the connection to R/3 so that I can achieve better performance and scalability ??
    Thanks again for your help !!

  • RFC connection using JCA

    Hi,
    Can anyboby send me the par file for updating data (set the data in the fields) through RFC using JCA.
    URGENT....
    Thanks,

    Hi Prakash,
    Could you please send me a sample example of making the connection to EIS application using CFDK API.
    It's very urgent pls do the needful for same. any other help in this context will be appreciated.
    If possible mail me all the details on my email id.
    regards,
    parveen
    [email protected]

  • Need sample code to connect MDM using JCA

    hi friends,
    I want to connect MDM server using JCA
    can you please provide me the sample code for that.
    Regards,
    Venki

    Hello Venki,
    why do you want to use JCo for connecting to MDM? MDM has its own specific Java API for this task. There's no need for using JCo at all.
    BR Michael.

  • How to access the SAP MDM destinations using mdm java api in 7.1

    hi,
    I have SAP MDM 7.1 SP11 and SAP Portal 7.3 and developing the custom webdynpro application using the  JAVA MDM API. I want configure the SAP MDM destinations in SAP Portal .
    How to access the MDM destinations in java code using API? and how to create the connection with MDM using the MDM destinations.
    Please provide the code for access the SAP MDM destinations in java code using MDM java api and creating the connection to MDM.
    Thanks

    Jun,
    Thanks for the reply and api information.
    I have got this api information from the following sap documentation. But i am looking for the code by implementing this class and creating the mdm connection.
    Creating an MDM Connection Using Java Code - SAP NetWeaver Master Data Management (MDM) - SAP Library
    if any thing can you share it.
    Thanks

  • How to create a iview in eclipse for connecting  R/3 using JCA?

    Hi everybody,
           I want to create a iview in eclipse for connecting  R/3 using JCA. Can any body send me java code for this purpose. i tried one example from sdn in eclipse but i did't get any code for the same.
    thanking you
    Rajendra

    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sapportals.km.docs/documents/a1-8-4/sap connector examples download.htm

  • Custom iView Connecting to SAP R/3 system using JCA !!

    I did not get any response on the Portal forum so posting it again in the WebAs forum ...
    Environment : SAP Portal : EP 6.p SP2
    I am using JCA to connect to the SAP backend systems.
    The following code connects to the backend ...
    IConnectionFactory connectionFactory = (IConnectionFactory) ctx.lookup("EISConnections/SAPFactory");
    IConnectionSpec spec = connectionFactory.getConnectionSpec();
    ((Map) spec).put("client", "CLIENT_NUMBER");
    ((Map) spec).put("UserName", "YOUR_LOGIN_ID");
    ((Map) spec).put("Password", "YOUR_PASSSWORD");
    ((Map) spec).put("logonmethod", "UIDPW"); // or SAPLOGONTICKET
    ((Map) spec).put("Language", "YOUR_LOGIN_LANGUAGE");
    ((Map) spec).put("ashost", "YOUR_APPLICTION_SERVER_NAME");
    ((Map) spec).put("sysnr", "YOUR_SYSTEM_NUMBER");
    IConnection client = connectionFactory.getConnectionEx(spec);
    I want to use the message server for load balancing. Is there a way to specify the message server and logon group ??
    These is the code to get the BAPI information ...
    // Create interaction
    IInteraction interaction = client.createInteractionEx();
    IInteractionSpec interactionSpec = interaction.getInteractionSpec();
    interactionSpec.setPropertyValue("Name", "REMOTE_FUNCTION_MODULE_NAME");
    // Create IFunction instance
    IFunctionsMetaData functionsMetaData = client.getFunctionsMetaData();
    IFunction function
    = functionsMetaData.getFunction("REMOTE_FUNCTION_MODULE_NAME");
    // CCI api only has one datatype: Record
    RecordFactory recordFactory = interaction.getRecordFactory();
    MappedRecord importParams
    = recordFactory.createMappedRecord("CONTAINER_OF_IMPORT_PARAMS"
    and the following code populates the input table parameters ...
    IStructureFactory structureFactory
    = interaction.retrieveStructureFactory();
    IRecordSet table
    = (IRecordSet) structureFactory.getStructure(
    function.getParameter("TABLE_NAME").getStructure());
    table.insertRow();
    table.setString("COLUMN_NAME_1", "VALUE_1");
    table.setString("COLUMN_NAME_2", "VALUE_2");
    table.insertRow();
    table.setString("COLUMN_NAME_1", "VALUE_1");
    table.setString("COLUMN_NAME_2", "VALUE_2");
    importParams.put("TABLE_NAME", table);
    The above code causes performance issues in the SAP system because the code is calling the following other BAPI through the JCA java api ...
    1) RFC_GET_FUNCTION_INTERFACE
    2) DDIF_FIELDINFO_GET
    Looks like, the JCA library is not caching the metadata information for the BAPI instead for each call, it is calling other BAPI's to get the BAPI metadata information. Also, if I reuse the same IFunction class instance for all connections (Using Singleton Class), it seems to make less "RFC_GET_FUNCTION_INTERFACE" bapi calls.
    The problem is with the input table structure which I need to populate for the BAPI. Every time the structure is populated, the internal BAPI's are getting called and it takes more time to populate the structure as number of users increases.
    I am looking answers to the following questions ...
    1) Specify message and logon group in JCA
    2) Provide a way to cache the metadata for the BAPI's
    More details about JCA can be found here ...
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/bc9baf90-0201-0010-479a-b49b25598ebf
    I appreciate your help !!
    Thanks
    Bhabesh Patel

    we updated JCO to the latest version for EP 6 SP2 Patch 8 and it fixed the issue.

  • OSB: Cannot acquire data source error while using JCA DBAdapter in OSB

    Hi All,
    I've entered 'Cannot acquire data source' error while using JCA DBAdapter in OSB.
    Error infor are as follows:
    The invocation resulted in an error: Invoke JCA outbound service failed with application error, exception: com.bea.wli.sb.transports.jca.JCATransportException: oracle.tip.adapter.sa.api.JCABindingException: oracle.tip.adapter.sa.impl.fw.ext.org.collaxa.thirdparty.apache.wsif.WSIFException: servicebus:/WSDL/DBAdapter1/RetrievePersonService [ RetrievePersonService_ptt::RetrievePersonServiceSelect(RetrievePersonServiceSelect_inputParameters,PersonTCollection) ] - WSIF JCA Execute of operation 'RetrievePersonServiceSelect' failed due to: Could not create/access the TopLink Session.
    This session is used to connect to the datastore.
    Caused by Exception [EclipseLink-7060] (Eclipse Persistence Services - 2.0.2.v20100323-r6872): org.eclipse.persistence.exceptions.ValidationException
    Exception Description: Cannot acquire data source [jdbc/soademoDatabase].
    Internal Exception: javax.naming.NameNotFoundException: Unable to resolve 'jdbc.soademoDatabase'. Resolved 'jdbc'; remaining name 'soademoDatabase'.
    ; nested exception is:
    BINDING.JCA-11622
    Could not create/access the TopLink Session.
    This session is used to connect to the datastore.
    JNDI Name for the Database pool: eis/DB/soademoDatabase
    JNDI Name for the Data source: jdbc/soademoDatabase
    I created a basic DBAdapter in JDeveloper, got the xsd file, wsdl file, .jca file and the topLink mapping file imported them into OSB project.
    Then I used the .jca file to generate a business service, and tested, then the error occurs as described above.
    Login info in RetrievePersonService-or-mappings.xml
    <login xsi:type="database-login">
    <platform-class>org.eclipse.persistence.platform.database.oracle.Oracle9Platform</platform-class>
    <user-name></user-name>
    <connection-url></connection-url>
    </login>
    jca file content are as follows:
    <adapter-config name="RetrievePersonService" adapter="Database Adapter" wsdlLocation="RetrievePersonService.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
    <connection-factory location="eis/DB/soademoDatabase" UIConnectionName="Connection1" adapterRef=""/>
    <endpoint-interaction portType="RetrievePersonService_ptt" operation="RetrievePersonServiceSelect">
    <interaction-spec className="oracle.tip.adapter.db.DBReadInteractionSpec">
    <property name="DescriptorName" value="RetrievePersonService.PersonT"/>
    <property name="QueryName" value="RetrievePersonServiceSelect"/>
    <property name="MappingsMetaDataURL" value="RetrievePersonService-or-mappings.xml"/>
    <property name="ReturnSingleResultSet" value="false"/>
    <property name="GetActiveUnitOfWork" value="false"/>
    </interaction-spec>
    </endpoint-interaction>
    </adapter-config>
    RetrievePersonService_db.wsdl are as follows:
    <?xml version="1.0" encoding="UTF-8"?>
    <WL5G3N0:definitions name="RetrievePersonService-concrete" targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/db/KnowledeMgmtSOAApplication/AdapterJDevProject/RetrievePersonService" xmlns:WL5G3N0="http://schemas.xmlsoap.org/wsdl/" xmlns:WL5G3N1="http://xmlns.oracle.com/pcbpel/adapter/db/KnowledeMgmtSOAApplication/AdapterJDevProject/RetrievePersonService" xmlns:WL5G3N2="http://schemas.xmlsoap.org/wsdl/soap/">
    <WL5G3N0:import location="RetrievePersonService.wsdl" namespace="http://xmlns.oracle.com/pcbpel/adapter/db/KnowledeMgmtSOAApplication/AdapterJDevProject/RetrievePersonService"/>
    <WL5G3N0:binding name="RetrievePersonService_ptt-binding" type="WL5G3N1:RetrievePersonService_ptt">
    <WL5G3N2:binding style="document" transport="http://www.bea.com/transport/2007/05/jca"/>
    <WL5G3N0:operation name="RetrievePersonServiceSelect">
    <WL5G3N2:operation soapAction="RetrievePersonServiceSelect"/>
    <WL5G3N0:input>
    <WL5G3N2:body use="literal"/>
    </WL5G3N0:input>
    <WL5G3N0:output>
    <WL5G3N2:body use="literal"/>
    </WL5G3N0:output>
    </WL5G3N0:operation>
    </WL5G3N0:binding>
    <WL5G3N0:service name="RetrievePersonService_ptt-bindingQSService">
    <WL5G3N0:port binding="WL5G3N1:RetrievePersonService_ptt-binding" name="RetrievePersonService_ptt-bindingQSPort">
    <WL5G3N2:address location="jca://eis/DB/soademoDatabase"/>
    </WL5G3N0:port>
    </WL5G3N0:service>
    </WL5G3N0:definitions>
    Any suggestion is appricated .
    Thanks in advance!
    Edited by: user11262117 on Jan 26, 2011 5:28 PM

    Hi Anuj,
    Thanks for your reply!
    I found that the data source is registered on server soa_server1 as follows:
    Binding Name: jdbc.soademoDatabase
    Class: weblogic.jdbc.common.internal.RmiDataSource_1033_WLStub
    Hash Code: 80328036
    toString Results: ClusterableRemoteRef(8348400613458600489S:10.2.1.143:[8001,8001,-1,-1,-1,-1,-1]:base_domain:soa_server1 [8348400613458600489S:10.2.1.143:[8001,8001,-1,-1,-1,-1,-1]:base_domain:soa_server1/291])/291
    Binding Name: jdbc.SOADataSource
    Class: weblogic.jdbc.common.internal.RmiDataSource_1033_WLStub
    Hash Code: 92966755
    toString Results: ClusterableRemoteRef(8348400613458600489S:10.2.1.143:[8001,8001,-1,-1,-1,-1,-1]:base_domain:soa_server1 [8348400613458600489S:10.2.1.143:[8001,8001,-1,-1,-1,-1,-1]:base_domain:soa_server1/285])/285
    I don't know how to determine which server the DBAdapter is targetted to.
    But I found the following information:
    Under Deoloyment->DBAdapter->Monitoring->Outbound Connection Pools
    Outbound Connection Pool Server State Current Connections Created Connections
    eis/DB/SOADemo AdminServer Running 1 1
    eis/DB/SOADemo soa_server1 Running 1 1
    eis/DB/soademoDatabase AdminServer Running 1 1
    eis/DB/soademoDatabase soa_server1 Running 1 1
    The DbAdapter is related to the following files:
    C:\ Oracle\ Middleware\ home_11gR1\ Oracle_SOA1\ soa\ connectors\ DbAdapter. rar
    C:\ Oracle\ Middleware\ home_11gR1\ Oracle_SOA1\ soa\ DBPlan\ Plan. xml
    I unzipped DbAdapter.rar, opened weblogic-ra.xml and found that there's only one data source is registered:
    <?xml version="1.0"?>
    <weblogic-connector xmlns="http://www.bea.com/ns/weblogic/90">
    <enable-global-access-to-classes>true</enable-global-access-to-classes>
    <outbound-resource-adapter>
    <default-connection-properties>
    <pool-params>
    <initial-capacity>1</initial-capacity>
    <max-capacity>1000</max-capacity>
    </pool-params>
    <properties>
    <property>
    <name>usesNativeSequencing</name>
    <value>true</value>
    </property>
    <property>
    <name>sequencePreallocationSize</name>
    <value>50</value>
    </property>
    <property>
    <name>defaultNChar</name>
    <value>false</value>
    </property>
    <property>
    <name>usesBatchWriting</name>
    <value>true</value>
    </property>
    <property>
    <name>usesSkipLocking</name>
    <value>true</value>
    </property>
    </properties>
              </default-connection-properties>
    <connection-definition-group>
    <connection-factory-interface>javax.resource.cci.ConnectionFactory</connection-factory-interface>
    <connection-instance>
    <jndi-name>eis/DB/SOADemo</jndi-name>
              <connection-properties>
                   <properties>
                   <property>
                   <name>xADataSourceName</name>
                   <value>jdbc/SOADataSource</value>
                   </property>
                   <property>
                   <name>dataSourceName</name>
                   <value></value>
                   </property>
                   <property>
                   <name>platformClassName</name>
                   <value>org.eclipse.persistence.platform.database.Oracle10Platform</value>
                   </property>
                   </properties>
              </connection-properties>
    </connection-instance>
    </connection-definition-group>
    </outbound-resource-adapter>
    </weblogic-connector>
    Then I decided to use eis/DB/SOADemo for testing.
    For JDeveloper project, after I deployed to weblogic server, it works fine.
    But for OSB project referencing wsdl, jca and mapping file from JDeveloper project, still got the same error as follows:
    BEA-380001: Invoke JCA outbound service failed with application error, exception:
    com.bea.wli.sb.transports.jca.JCATransportException: oracle.tip.adapter.sa.api.JCABindingException: oracle.tip.adapter.sa.impl.fw.ext.org.collaxa.thirdparty.apache.wsif.WSIFException: servicebus:/WSDL/DBAdapterTest/DBReader [ DBReader_ptt::DBReaderSelect(DBReaderSelect_inputParameters,PersonTCollection) ] - WSIF JCA Execute of operation 'DBReaderSelect' failed due to: Could not create/access the TopLink Session.
    This session is used to connect to the datastore.
    Caused by Exception [EclipseLink-7060] (Eclipse Persistence Services - 2.0.2.v20100323-r6872): org.eclipse.persistence.exceptions.ValidationException
    Exception Description: Cannot acquire data source [jdbc/SOADataSource].
    Internal Exception: javax.naming.NameNotFoundException: Unable to resolve 'jdbc.SOADataSource'. Resolved 'jdbc'; remaining name 'SOADataSource'.
    ; nested exception is:
    BINDING.JCA-11622
    Could not create/access the TopLink Session.
    This session is used to connect to the datastore.
    Caused by Exception [EclipseLink-7060] (Eclipse Persistence Services - 2.0.2.v20100323-r6872): org.eclipse.persistence.exceptions.ValidationException
    Exception Description: Cannot acquire data source [jdbc/SOADataSource].
    Internal Exception: javax.naming.NameNotFoundException: Unable to resolve 'jdbc.SOADataSource'. Resolved 'jdbc'; remaining name 'SOADataSource'.
    You may need to configure the connection settings in the deployment descriptor (i.e. DbAdapter.rar#META-INF/weblogic-ra.xml) and restart the server. This exception is considered not retriable, likely due to a modelling mistake.
    It almost drive me crazy!!:-(
    What's the purpose of 'weblogic-ra.xml' under the folder of 'C:\Oracle\Middleware\home_11gR1\Oracle_OSB1\lib\external\adapters\META-INF'?
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

  • Problem Creating Partner Link for Adapter Integrating with Tuxedo using JCA

    Hi All,
    This is the first time that I am working on integration tools. I will explain in brief the problem.
    There will be a legacy system (Tuxedo) running which connect to legacy database for requests. I am able to connect to that legacy system using Attunity Studio for getting the response back. Which is working fine.
    Now I want that to integrate with BPEL PM 10.1.2 using JCA. For this I followed this URL (http://www.oracle.com/technology/tech/java/oc4j/904/how_to/oc4j-jca-tux/onjava-jca.html). What happens here is, a simple servlet invokes a Session Bean that interacts the Attunity Server using the JCA. For that I am using oc4j container of BPEL PM 10.1.2. I could able to work it fine.
    For working with BPEL, I have created synchronous process, when try to create Partner link using Adapter service from WSIL browser, it is not coming in.
    Am I missed any important configuration at BPEL PM end.
    For doing this a followed the "tutorial 2" @ http://www.oracle.com/technology/products/integration/adapters/dev_support.html
    In exact way, above provided tutorial 2 PDF, I failed at step "Configuring a BPEL Service to invoke the above Adapter Service" on page 11.
    Your help is highly appreciated
    Thanks
    Venkata

    Something to note. I tried adding the same BPEL services as partner links to a new application and new project on two other developer's workstations, and the creation of the partner links were successful.

  • Error when working with TableView using JCA

    Hi sdns,
    I am getting an iview rutnime error when working with Tableview using JCA. Here i am putting all my code, go thorugh it and tell me if any error is there.One more thing is Usermappping and all properties are set to system object.
    Now you can throught he code which is followed by error also.
    <u>Java file.</u>
    public class DisplayComponent extends PageProcessorComponent {
         public DynPage getPage() {
              return new DisplayComponentDynPage();
         public static class DisplayComponentDynPage extends JSPDynPage {
              private JCATviewBean bean;
              public void doInitialization() {
                   IPortalComponentProfile profile =
                        ((IPortalComponentRequest) getRequest())
                             .getComponentContext()
                             .getProfile();
                   Object o = profile.getValue("myBean");
                   if (o == null || !(o instanceof JCATviewBean)) {
                        bean = new JCATviewBean();
                        profile.putValue("myBean", bean);
                   } else {
                        bean = (JCATviewBean) o;
                   // fill your bean with data here...
                   IPortalComponentRequest request =
                        (IPortalComponentRequest) this.getRequest();
                   doJca(request);
              public void doProcessAfterInput() throws PageException {
              public void doProcessBeforeOutput() throws PageException {
                   this.setJspName("Report.jsp");
              private IConnection getConnection(
                   IPortalComponentRequest request,
                   String alias)
                   throws Exception {
                   IConnectorGatewayService cgService =
                        (IConnectorGatewayService) PortalRuntime
                             .getRuntimeResources()
                             .getService(
                             IConnectorService.KEY);
                   ConnectionProperties prop =
                        new ConnectionProperties(
                             request.getLocale(),
                             request.getUser());
                   return cgService.getConnection(alias, prop);
              public void doJca(IPortalComponentRequest request) {
                   IConnectionFactory connectionFactory = null;
                   IConnection client = null;
                   String rfm_name = "BAPI_COMPANYCODE_GETLIST";
                   try {
                        try {
                             //       pass the request & system alias
                             //       Change the alias to whatever the alias is for your R/3 system
                             client = getConnection(request, "MyIDES");
                        } catch (Exception e) {
                             System.out.println(
                                  "Couldn't establish a connection with a target system.");
                             return;
    Start Interaction
                        IInteraction interaction = client.createInteractionEx();
                        IInteractionSpec interactionSpec =
                             interaction.getInteractionSpec();
                        interactionSpec.setPropertyValue("Name", rfm_name);
    CCI api only has one datatype: Record
                        RecordFactory recordFactory = interaction.getRecordFactory();
                        MappedRecord importParams =
                             recordFactory.createMappedRecord(
                                  "CONTAINER_OF_IMPORT_PARAMS");
                        IFunctionsMetaData functionsMetaData =
                             client.getFunctionsMetaData();
                        IFunction function = functionsMetaData.getFunction(rfm_name);
                        if (function == null) {
                             System.out.println(
                                  "Couldn't find " + rfm_name + " in a target system.");
                             return;
    How to invoke Function modules
                        System.out.println("Invoking... " + function.getName());
                        MappedRecord exportParams =
                             (MappedRecord) interaction.execute(
                                  interactionSpec,
                                  importParams);
    How to get structure values
                        IRecord exportStructure = (IRecord) exportParams.get("RETURN");
                        String columnOne = exportStructure.getString("TYPE");
                        String columnTwo = exportStructure.getString("CODE");
                        String columnThree = exportStructure.getString("MESSAGE");
                        System.out.println("  RETURN-TYPE    = " + columnOne);
                        System.out.println("  RETURN-CODE    = " + columnTwo);
                        System.out.println("  RETURN-MESSAGE =" + columnThree);
    How to get table values
                        IRecordSet exportTable =
                             (IRecordSet) exportParams.get("COMPANYCODE_LIST");
                        exportTable.beforeFirst();
                        // Moves the cursor before the first row.
                        while (exportTable.next()) {
                             String column_1 = exportTable.getString("COMP_CODE");
                             String column_2 = exportTable.getString("COMP_NAME");
                             System.out.println(
                                  "  COMPANYCODE_LIST-COMP_CODE = " + column_1);
                             System.out.println(
                                  "  COMPANYCODE_LIST-COMP_NAME = " + column_2);
                        //       create the tableview mode in the bean
                        bean.createData(exportTable);
    Closing the connection
                        client.close();
                   } catch (ConnectorException e) {
                        //       app.putValue("error", e);
                        System.out.println("Caught an exception: \n" + e);
                   } catch (Exception e) {
                        System.out.println("Caught an exception: \n" + e);
    <u>Bena file</u>
    package com.sap.JCA.bean;
    import java.util.Vector;
    import com.sapportals.connector.execution.structures.IRecordSet;
    import com.sapportals.htmlb.table.DefaultTableViewModel;
    import com.sapportals.htmlb.table.TableViewModel;
    public class JCATviewBean {
         public DefaultTableViewModel model;
         public TableViewModel getModel() {
         return this.model;
         public void setModel(DefaultTableViewModel model) {
         this.model = model;
         public void createData(IRecordSet table) {
    //       this is your column names
         Vector column = new Vector();
         column.addElement("Company Code");
         column.addElement("Company Name");
    //       all this logic is for the data part.
         Vector rVector = new Vector();
         try {
         table.beforeFirst();
         while (table.next()) {
         Vector data = new Vector();
         data.addElement(table.getString("COMP_CODE"));
         data.addElement(table.getString("COMP_NAME"));
         rVector.addElement(data);
         } catch (Exception e) {
         e.printStackTrace();
    //       this is where you create the model
         this.setModel(new DefaultTableViewModel(rVector, column));
    <b>JSP File:</b>
    <%@ taglib uri="tagLib" prefix="hbj" %>
    <jsp:useBean id="myBean" scope="application" class="com.sap.JCA.bean.JCATviewBean" />
    <hbj:content id="myContext" >
      <hbj:page title="PageTitle">
       <hbj:form id="myFormId" >
       <br>
       <hbj:textView id = "tv1" text = "<b>TableView Example Using JCA</b> <br>"/>
    <hbj:tableView
        id="myTableView1"
        model="myBean.model"
        design="ALTERNATING"
        headerVisible="true"
        footerVisible="true"
        fillUpEmptyRows="true"
        navigationMode="BYLINE"
        selectionMode="MULTISELECT"
        headerText="TableView example1"
        visibleFirstRow="1"
        visibleRowCount="30"
        width="500 px"
        />
       </hbj:form>
      </hbj:page>
    </hbj:content>
    <b>Error when Executing this component:</b><u></u>
      Portal Runtime Error
    <b>An exception occurred while processing a request for :
    iView : N/A
    Component Name : N/A
    com/sapportals/portal/htmlb/page/PageProcessorComponent.
    Exception id: 12:21_28/10/05_0173_94105150
    See the details for the exception ID in the log file</b>  
    If anybody find the error please reply to this post.
    Regards,
    sireesha.

    Thanks for your response Martin,
    I have already seen the log file but im couldn't findout anything from that since it is so long here im putting some part of please see this.if u able to find it clarify me,
    <b>Here the log file:</b>
    1.5#001321FD6213005D0000907100001CB000040419258FBF4E#1130405957843#trexr3.com.sapmarkets.isa.services.schedulerservice.persistence.jdo.DataBaseJobStore#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.persistence.jdo.DataBaseJobStore#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler/JobStore#Plain###With in the acquireLockForNextAvailableJob DataStore#
    #1.5#001321FD6213005D0000907200001CB00004041925916735#1130405957953#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler#Plain###Acquired the job null#
    #1.5#001321FD6213005D0000907300001CB0000404192591688D#1130405957953#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler#Plain###Did not find any job.So, Waiting for sometime for the next job#
    #1.5#001321FD621300650000120E00001CB00004041925C953D7#1130405961625#com.sap.aii.af.sample.adapter.ra.SPIManagedConnectionFactory##com.sap.aii.af.sample.adapter.ra.SPIManagedConnectionFactory.XIManagedConnectionFactoryController.run()######04d7f690469311da8d52001321fd6213#Thread[Thread-114,5,SAPEngine_System_Thread[impl:5]_Group]##0#0#Debug#1#/Applications/ExchangeInfrastructure/AdapterFramework/ThirdPartyRoot/comsap/Server/Adapter Framework#Java###MCF with GUID is running. (,)#3#964bfca0444711dabb51001321fd6213#com.sap.engine.services.deploy.server.ApplicationLoader@1586c77#964bfca0444711dabb51001321fd6213#
    #1.5#001321FD6213005D0000907400001CB000040419275B24FC#1130405987953#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler#Plain###within the infinite of the Scheduler Thread#
    #1.5#001321FD6213005D0000907500001CB000040419275B25D9#1130405987953#trexr3.com.sapmarkets.isa.services.schedulerservice.persistence.jdo.DataBaseJobStore#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.persistence.jdo.DataBaseJobStore#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler/JobStore#Plain###With in the acquireLockForNextAvailableJob DataStore#
    #1.5#001321FD6213005D0000907600001CB000040419275B2E27#1130405987953#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler#Plain###Acquired the job null#
    #1.5#001321FD6213005D0000907700001CB000040419275B2EFA#1130405987953#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler#Plain###Did not find any job.So, Waiting for sometime for the next job#
    #1.5#001321FD6213005D0000907800001CB0000404192924ED59#1130406017953#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler#Plain###within the infinite of the Scheduler Thread#
    #1.5#001321FD6213005D0000907900001CB0000404192924EE36#1130406017953#trexr3.com.sapmarkets.isa.services.schedulerservice.persistence.jdo.DataBaseJobStore#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.persistence.jdo.DataBaseJobStore#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler/JobStore#Plain###With in the acquireLockForNextAvailableJob DataStore#
    #1.5#001321FD6213005D0000907A00001CB0000404192924F652#1130406017953#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler#Plain###Acquired the job null#
    #1.5#001321FD6213005D0000907B00001CB0000404192924F710#1130406017953#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler#Plain###Did not find any job.So, Waiting for sometime for the next job#
    #1.5#001321FD621300650000120F00001CB000040419295CCD8B#1130406021625#com.sap.aii.af.sample.adapter.ra.SPIManagedConnectionFactory##com.sap.aii.af.sample.adapter.ra.SPIManagedConnectionFactory.XIManagedConnectionFactoryController.run()######04d7f690469311da8d52001321fd6213#Thread[Thread-114,5,SAPEngine_System_Thread[impl:5]_Group]##0#0#Debug#1#/Applications/ExchangeInfrastructure/AdapterFramework/ThirdPartyRoot/comsap/Server/Adapter Framework#Java###MCF with GUID is running. (,)#3#964bfca0444711dabb51001321fd6213#com.sap.engine.services.deploy.server.ApplicationLoader@1586c77#964bfca0444711dabb51001321fd6213#
    #1.5#001321FD6213005D0000907C00001CB0000404192AEEB1E2#1130406047953#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler#Plain###within the infinite of the Scheduler Thread#
    #1.5#001321FD6213005D0000907D00001CB0000404192AEEB2C0#1130406047953#trexr3.com.sapmarkets.isa.services.schedulerservice.persistence.jdo.DataBaseJobStore#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.persistence.jdo.DataBaseJobStore#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler/JobStore#Plain###With in the acquireLockForNextAvailableJob DataStore#
    #1.5#001321FD6213005D0000907E00001CB0000404192AEEBAD8#1130406047968#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler#Plain###Acquired the job null#
    #1.5#001321FD6213005D0000907F00001CB0000404192AEEBB9E#1130406047968#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#sap.com/crm.trexr3#trexr3.com.sapmarkets.isa.services.schedulerservice.SchedulerThread#J2EE_ADMIN#530##obtdev3_O09_94105150#Guest#8a2bbd20444711da932c001321fd6213#Thread[SchedulerThread,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Info#1#/System/Scheduler#Plain###Did not find any job.So, Waiting for sometime for the next job#

  • Problem with Berkeley DB JE using JCA

    Hello, dear developers of JE
    I have implemented Lucene Indexing on Berkeley DB JE. And I'm using the JBoss as application server. Accessing the Breekely DB using JCA.
    The problem arises when i'm calling the Environment.close(). It's displaying following error message.
    12:01:39,712 WARN [JBossManagedConnectionPool] Exception destroying ManagedConnection org.jboss.resource.connectionmanager.TxCo
    javax.resource.ResourceException: com.sleepycat.je.DatabaseException: Attempt to use non-open Environment object().
    at com.sleepycat.je.jca.ra.JEManagedConnection.destroy(JEManagedConnection.java:190)
    at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.doDestroy(InternalManagedConnectionPool.java:550)
    at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:1
    at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.jav
    at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:410)
    at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:342)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:462)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionM
    at com.sleepycat.je.jca.ra.JEConnectionFactoryImpl.getConnection(JEConnectionFactoryImpl.java:56)
    at com.sleepycat.je.jca.ra.JEConnectionFactoryImpl.getConnection(JEConnectionFactoryImpl.java:43)
    IT WOULD BE HIGHLY APPRECIATED IF EXPLANIN ME THE REASON
    Thanks,
    Katta

    Hi Charles ,
    I have implemented Transaction.setLockTimeout() and increased the lock timeout value to 500000.
    But getting the same exception.
    19:06:05,846 INFO [STDOUT] com.sleepycat.je.DatabaseException: Lock expired. Locker 14_http-0.0.0.0-8080-2_Txn: waited for lock on database=__index__ node=434 type=READ grant=WAIT_NEW timeoutMillis=50 startTime=1156167365784 endTime=1156167365846
    Owners: [<LockInfo locker="13_RMI TCP Connection(2)-192.168.10.60_Txn" type="WRITE"/>].
    Waiters: []
    The lucene index update process may take approximately 40 to 50 minutes.
    Please go through the following code what i written.
    public class BerkelyDBConfig
    private static Logger logger = Logger.getLogger(BerkelyDBConfig.class);
    private static final String JE_ENV_HOME = "D://berkeley//index";
    protected static JEConnection jeConnection = null;
    protected static Environment env = null;
    protected static Transaction txn=null;
    * @param dbEnvHome
    * @return directory [Directory]
    * @throws DatabaseException
    * @throws JEException
    public static Directory getDirectory() throws DatabaseException, JEException
    Directory directory = null;
    Database index, blocks;
    try
    jeConnection = getConnection();
    env = jeConnection.getEnvironment();
    DatabaseConfig dbConfig = new DatabaseConfig();
    dbConfig.setAllowCreate(true);
    dbConfig.setTransactional(true);
    * Use JEConnection.openDatabase() to obtain a cached Database
    * handle. Do not call close() on Database handles obtained
    * using this method.
    index = jeConnection.openDatabase("__index__", dbConfig);
    blocks = jeConnection.openDatabase("__blocks__", dbConfig);
    txn = env.getThreadTransaction();
    txn.setLockTimeout(50000);
    directory = new JEDirectory(txn, index, blocks);
    } catch (NamingException e)
    logger.error("Caught NamingException and message is::"+ e.getMessage());
    throw new DatabaseException(e);
    } catch (ResourceException e)
    logger.error("Caught ResourceException and message is::"+ e.getMessage());
    throw new DatabaseException(e);
    } finally
    env.cleanLog(); // Clean the log before closing
    if (jeConnection != null)
    jeConnection.close();
    return directory;
    * @return dc [JEConnection]
    * @throws NamingException
    * @throws JEException
    public static JEConnection getConnection()
    throws NamingException, JEException
    EnvironmentConfig envConfig = new EnvironmentConfig();
    envConfig.setAllowCreate(true);
    envConfig.setTransactional(true);
    //envConfig.setLockTimeout(50000000);
    envConfig.setConfigParam("je.cleaner.expunge", "true");
    InitialContext iniCtx = new InitialContext();
    Context enc = (Context) iniCtx.lookup("java:comp/env");
    Object ref = enc.lookup("ra/JEConnectionFactory");
    JEConnectionFactory dcf = (JEConnectionFactory) ref;
    JEConnection dc = dcf.getConnection(JE_ENV_HOME, envConfig);
    return dc;
    * @return searcher [Searcher]
    * @throws DatabaseException
    public static IndexSearcher getSearcher() throws DatabaseException
    if (logger.isInfoEnabled())
    logger.info("Entered getSearcher() of BerkelyDBUtil");
    IndexSearcher searcher;
    try
    searcher = new IndexSearcher(getDirectory());
    } catch (JEException e)
    logger
    .error("Caught JEException and message is::"
    + e.getMessage());
    throw new DatabaseException(e.getMessage());
    } catch (IOException e)
    logger
    .error("Caught IOException and message is::"
    + e.getMessage());
    throw new DatabaseException(e.getMessage());
    if (logger.isInfoEnabled())
    logger.info("Leaving getSearcher() of BerkelyDBUtil");
    return searcher;
    Below is the Lucene update indexing program:
    public class UpdateLuceneIndexCommand extends BaseCommand
    * Logger object to log the details
    private static Logger logger = Logger
    .getLogger(UpdateLuceneIndexCommand.class);
    private static Directory indexDir =null;
    * (non-Javadoc)
    * @see com.tka.command.BaseCommand#validateRequest(com.tka.request.Request)
    protected void validateRequest(Request request)
    // TODO Auto-generated method stub
    * (non-Javadoc)
    * @see com.tka.command.BaseCommand#executeRequest(com.tka.request.Request)
    protected Response executeRequest(Request request) throws CommandException
    if (logger.isInfoEnabled())
    logger
    .info("Entered executeRequest() method of updateSearchIndexCommand");
    try
    // Get the index directory obj from BerkelyDBConfig
    indexDir = BerkelyDBConfig.getDirectory();
    System.out.println("INDEXING INFO: Start Indexing updated content.");
    // call the updateLuceneIndex method
    updateLuceneIndex();
    System.out.println("INDEXING INFO: Optimizing Index finished......");
    } catch (Exception e)
    e.printStackTrace();
    logger.error("INDEXING ERROR: Unable to index new content " + e.getMessage());
    throw new CommandException(e.getMessage());
    if (logger.isInfoEnabled())
    logger
    .info("Leaving executeRequest() method of updateSearchIndexCommand");
    return buildIndexResponse;
    * @param indexWriter
    * @throws IOException
    private void updateLuceneIndex() throws IOException
    if (logger.isInfoEnabled())
    logger
    .info("Entered updateLuceneIndex() method of updateSearchIndexCommand");
    IndexWriter indexWriter = new IndexWriter(indexDir,new StandardAnalyzer(), false);
    indexWriter.setUseCompoundFile(false);
    // here is the code to update index
    indexWriter.optimize();
    indexWriter.close();
    if (logger.isInfoEnabled())
    logger
    .info("Leaving updateLuceneIndex() method of updateSearchIndexCommand");
    Thanks,
    Katta.
    Message was edited by:
    user524075

  • ABAP MDM Connection Pool

    Hi,
    I'm trying to write a report that extracts information from MDM. Everytime it's called, it has to establish a new connection to MDM where the hand-shake takes about 20-30 secs.
    I was wondering if ABAP MDM Connection Pooling exist.
    In Java MDM, you can configure J2EE with connection pool, so that you can reuse a connection rather than re-establishing a new connection on every call.
    I've read Thomas Jung's WIKI on "How do you implement a MDM Connection Help Class?", however I cannot reuse this class. The static attribute in the class is not persisted.
    Did I do something wrong?
    I tried turning it into a shared memory root class, however it complains about an object reference still exist and would not allow me to do "dettach_commit( )".
    Don't know any other ways to store the connection handle in memory.
    Export/Import, SPA/GPA are not OO friendly.
    Cheers
    Michael

    Hi Andreas,
    Thanks for your reply, it is good to confirm my understanding of the ABAP API connection.
    For your interest, I have changed part of the connection code to increase the speed of the connection significantly.
    Firstly to clarify, the connection from the ABAP stack to MDM is actually quite fast.
    Upon the first call, the method CL_MDM_PROVIDER_SP04_PL03->_LOAD_FIELD_INFORMATION is called which reads the META-DATA from MDM for every table and every field. This could normally take 1 minute in our system landscape. I've changed to code to buffer the meta-data.
    In a production/stable environment, it is unlikely for the META-DATA to change rapidly. Hence reading this on every connection is a waste of time.
    This could be useful only if we are in implementation phase where this changes all the time.
    1) In transaction MDMAPIC, I've added the ABAP implementation for MDM Version Support as my own MDM provider class ZSP04_PL03 with provider type ZCL_MDM_PROVIDER_SP04_PL03.
    ZCL_MDM_PROVIDER_SP04_PL03 is a copy of CL_MDM_PROVIDER_SP04_PL03.
    2) In ZCL_MDM_PROVIDER_SP04_PL03, the method LOADFIELD_INFORMATION is changed to read from buffer first before calling MDM. If the buffer is empty, it will read from MDM and store result into buffer etc.
    I'm storing the information in a transparent table at the moment.
    I buffer the three class attributes:
    - mt_field_meta_data,
    - mt_mdm_field_meta_data,
    - mt_field_code2id_map.
    As MT_FIELD_META_DATA is a complex structure (i.e. tables within table), I had to split it up into many different tables.
    I can provide the code if you are interested.
    Cheers,
    Michael.

  • Creating XML using JCA functionality

    dear friends,
    I am working on connection of EP to R3 using JCO and JCA architecture.
    Using JCO, i could able to create XML file
    i.e.,
    JCO.Table sales_orders =function.getTableParameterList().getTable("KOMV");
    sales_orders.writeXML("F:
    usr
    crpts
    " + request.getUser().getUniqueName() + ".xml");
    In the same manner i would like to create XML file using JCA functionality. But i did't found any functionality in any way as my knowledge.
    can anybody help me out this
    Secondly,
    is it possible to create XML file with in the par path?
    like instead of desktop F:
    usr
    crpts
    path i would like to use like dist/xml
    suggestion required.
    Kantha

    dear friends,
    I am working on connection of EP to R3 using JCO and JCA architecture.
    Using JCO, i could able to create XML file
    i.e.,
    JCO.Table sales_orders =function.getTableParameterList().getTable("KOMV");
    sales_orders.writeXML("F:
    usr
    crpts
    " + request.getUser().getUniqueName() + ".xml");
    In the same manner i would like to create XML file using JCA functionality. But i did't found any functionality in any way as my knowledge.
    can anybody help me out this
    Secondly,
    is it possible to create XML file with in the par path?
    like instead of desktop F:
    usr
    crpts
    path i would like to use like dist/xml
    suggestion required.
    Kantha

  • LDAP Connection Pooling - JCA

    I'm interested in setting up connection pooling for LDAP. Our J2EE app is running on JBoss, and the database connections are already pooled through JCA using the provided JDBC resource adapter.
    So, I have investigated JCA a bit to see if that is the way to go to implement connection pooling for LDAP, but I haven't come to a conclusion yet. If I was to use JCA, it looks like I would need to create a resource adapter for LDAP, which does not seem to be a trivial task. Or is there already a resource adapter out there for the Sun Directory Server?
    For what I am trying to accomplish (connection pooling) is JCA overkill? If so, what would be the best course of action to take?
    Thanks,
    Jeff

    I guess you are talking about Context Pooling ...... The new version of JNDI ( not sure from when...) has
    context pooling in-built.... all you got to do is set the env property for pooling 'on'.....
    env.put("com.sun.jndi.ldap.connect.pool", "true");
    for further details
    http://java.sun.com/products/jndi/tutorial/ldap/connect/pool.html

Maybe you are looking for

  • In-browser editing: members change only their page

    Hi, I had asked this the other week and it was answered if I upgrade the client's site and move hosting to BC -- otherwise the member has access to edit the entire site  Re: members edit only their page, no other areas? I have a new idea  to float it

  • Data collection table in database

    Hi, In our SAP ME WIP databse we are not able to see the parameter values for data collection ,as entered by operator. We tried searchin in WIP db as system rule setting for ' Store Data Collection Results in ODS ' is false. Are there any other setti

  • Three ATA drives in a G4?

    Hi I have a G4 (AGP Graphics) with 2 ATA HD's installed. I want to upgrade to Tiger but on a new drive as I have very little space left on my Macintosh HD. Can I fit another ATA drive? The manual is slightly vague as to the exact number of ATA/SCSI d

  • Transaction Value with negative inventory

    Dear Experts, I need some help understanding why negative quantity inventory can result in a huge transaction value for an inventory item. Let me give an example. We do allow negative inventory. We manage inventory by item group and we use FIFO. We h

  • Have to sign in every time

    I have a Creative Cloud account. Every time I restart my Mac, I have to sign in in my CC-desktop app. I have the same problem on my MacBookPro as my iMac. Does anybody have a solution for this problem?