CAS - Record Store instances Consistency- Guided Search V 11.1

Hi,
I'd like to get some feedback in terms of using the traditional Forge/pipeline process Vs new CAS-based process with record stores (forge less process) with “Store Merger” crawler. The latest oracle documentation recommends using CAS for any data ingestion process, however I’d like to know how it performs in a real production environment/known bugs/Are there any big retail customers who is using this new process.
Planning to push the products and the dim val records in the record store instances using the record store java client directly from the backend/PIM (Product information management system). (Product data flow is : PIM >> Enterprise BUS >> Record Store instances). Would like to know the stability/reliability of record store instances.
Any help is appreciated
Thanks
Mohamed

Sorry, no, you can't back up the CAS record stores with that approach.  The two approaches to backing up CAS are to:
- Shut down the CAS service and back up the /CAS/workspace/state folder
- Use the recordstore-cmd.sh script to read data from the record stores
Page 151 in this document has some more details.   ( http://docs.oracle.com/cd/E55325_01/CAS.110/pdf/CASDevGuide.pdf )
Note that you can't replace the underlying database with one of your choosing as it's all baked into the product.

Similar Messages

  • Error for baseline read of CAS record store

    From time to time I get the following SOAPFaultException when trying to do a baseline read of a CAS recordstore. The component manager shows the recordstore is running. Partial updates are able to do delta reads. However baseline processes can not do a baseline read. So far the only way around this is to delete the recordstore, re-create it, and then perform a full crawl to populate it. Any ideas on what may be causing this, or a more graceful way to handle?
    FATAL javax.xml.ws.soap.SOAPFaultException: Fault occurred while processing. (BaseCmd)
    com.endeca.itl.cmd.TaskExecutionException: javax.xml.ws.soap.SOAPFaultException: Fault occurred while processing.
            at com.endeca.itl.recordstore.cmd.task.TransactionalTask.processAutoCommit(TransactionalTask.java:49)
            at com.endeca.itl.recordstore.cmd.task.TransactionalTask.process(TransactionalTask.java:21)
            at com.endeca.itl.cmd.BaseCmd.run(BaseCmd.java:417)
            at com.endeca.itl.recordstore.cmd.RecordStoreCmd.main(RecordStoreCmd.java:111)
    Caused by: javax.xml.ws.soap.SOAPFaultException: Fault occurred while processing.
            at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:156)
            at $Proxy59.startBaselineRead(Unknown Source)
            at com.endeca.itl.recordstore.RecordStoreReader.createBaselineReader(RecordStoreReader.java:55)
            at com.endeca.itl.recordstore.cmd.task.ReadBaselineTask.processTask(ReadBaselineTask.java:31)
            at com.endeca.itl.recordstore.cmd.task.TransactionalTask.processAutoCommit(TransactionalTask.java:36)
            ... 3 more
    Caused by: org.apache.cxf.binding.soap.SoapFault: Fault occurred while processing.
            at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.unmarshalFault(Soap11FaultInInterceptor.java:75)
            at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:46)
            at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
            at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)
            at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:113)
            at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
            at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
            at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)
            at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:798)
            at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1667)
            at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1520)
            at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1428)
            at org.apache.cxf.io.AbstractWrappedOutputStream.close(AbstractWrappedOutputStream.java:72)
            at org.apache.cxf.io.AbstractThresholdOutputStream.close(AbstractThresholdOutputStream.java:102)
            at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
            at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:658)
            at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
            at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)
            at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:532)
            at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:464)
            at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:367)
            at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:320)
            at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:89)
            at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:134)
            ... 7 more

    Bug 13458343 is fixed in version 11.2.1.
    Please try it ... change the version 11.1 for 11.2 and post your results

  • Read from multiple record stores sequentially

    I am a newbie using OEID 3.0 and CloverETL to store some crawled data (using IAS) in the data domain. I am crawling each website in a separate record store, and I've encountered this problem in CloverETL I can't resolve:
    So I have multiple record stores (e.g., rs1, rs2,..., rs1000), and what I need to do is to run a graph (the same graph) sequentially for all these record stores, through changing the record store name in "Record Store Reader" component. The graph simply stores the RS data in a data domain. Could you help me how to achieve this? Basically I need a loop to rerun the graph each time through changing the "Record Store Instance" property at each iteration.
    Thanks!

    I noticed you said you were doing website crawls with IAS (as opposed to CMS or FileSystem crawls).  Personally, when crawling website, I always prefer to output the crawl to XML instead of a recordstore.  Since webcrawls do not have any CDC mechanism (change data capture) you're really left conducting the whole crawl every time as there is no way to detect website page change to only crawl what's changed incrementally.  For FileSystem crawls and CMS crawls, recordstores are very handing in accomplishing and tracking the incremental change. 
    So, if you do decide, like me, to output to XML for your website crawls, you can forego the RS read and simply use a XML reader to pick up multiple XML files.
    HTH,
    Dan
    http://branchbird.com

  • How can I convert string to the record store with multiple records in it?

    Hi Everyone,
    How can I convert the string to the record store, with multiple records? I mean I have a string like as below:
    "SecA: [Y,Y,Y,N][good,good,bad,bad] SecB: [Y,Y,N][good,good,cant say] SecC: [Y,N][true,false]"
    now I want to create a record store with three records in it for each i.e. SecA, SecB, SecC. So that I can retrieve them easily using enumerateRecord.
    Please guide me and give me some links or suggestions to achieve the above thing.
    Best Regards

    Hi,
    I'd not use multiple records for this case. Managing more records needs more and redundant effort.
    Just use single record. Create ByteArrayOutputStream->DataOutputStream and put multiple strings via writeUTF() (plus any other data like number of records at the beginning...), then save the byte array to the record...
    It's easier, it's faster (runtime), it's better manageable...
    Rada

  • Endeca guided search problem in china!

    Hi All,
    request: integrate guided search into fatwire, we need to dig the potential ability of mdex in processing the chinese search.
    The user guide declares that the Supplemental Language Pack includes support for Japanese, Chinese, and Korean dictionary files.
    The main way is to add an auxiliary Chinese segmentation dictionary. also, we can get the some jar packages mentioned in Asian Languages Best Practices_v2.3 - DRAFT.pdf to enhance splitting tokens.
    problems follow:
    1. the development environment is difficult to build.
    1.1 workbench can't be installed well in win2008R2. error message"setup was unable to modify the endeca tools service parameters".
    1.2 In oracle linux environment , the main components had been installed.(mdex,workbench,Platform Services,API). the CAS has been installed, but when run ./cas-service.sh, the cursor stop and not any message output. But in workbench(localhost:8006), I can connect the cas server via data source tap.
    2. sample application can't be deploy.
    2.1 when run ./baseline_update.sh, error like this old thread(Re: Problems with Inital Setup on EC2 Box
    06.12.12 04:29:30] SEVERE: Error communicating with EAC agent while starting component.
    Occurred while executing line 32 of valid BeanShell script:
    29| Forge.archiveLogDir();
    30| Forge.run(); -------------------------------this step's log see the bellow.
    31| Dgidx.archiveLogDir();
    32| Dgidx.run(); ------------------------------------- this step didn't output any log.
    33|
    34| // distributed index, update Dgraphs
    35| DistributeIndexAndApply.run();
    [06.12.12 04:29:30] SEVERE: Caught an exception while invoking method 'run' on object 'BaselineUpdate'. Releasing locks.
    logs for Forge.run();
    WARN     06/12/12 09:29:24.006 UTC (1339493364006)     FORGE     {config}: Root dimension value name 'Price Range' for dimension 'Price Range' is not a valid NCName.     
    WARN     06/12/12 09:29:24.006 UTC (1339493364006)     FORGE     {config}: Root dimension value name 'Review Score' for dimension 'Review Score' is not a valid NCName.     
    WARN     06/12/12 09:29:24.006 UTC (1339493364006)     FORGE     {config}: Root dimension value name 'Wine Type' for dimension 'Wine Type' is not a valid NCName.     
    WARN     06/12/12 09:29:28.090 UTC (1339493368090)     FORGE     {baseline}: Forge completed with 0 errors and 3 warnings.     
    3. developer studio problem.
    I havd builded a test in developer stuido of my client(windows 7), including data, properties, and dimensions. Further, I config some rules and search interfaces. at last, I got some config files with the xml type.
    But the problem is that when I intend to send the instance configuration to workbench, I can't find my app(builded via deployment template) from application drop down menu in endeca workbench setting.
    But I indeed see myapp in workbench via web browser.
    4. workbench and studio can completely replace each other?
    I start Dgidx and Mdex in workbench, it output the bellow error message.
    how to deal it?
    An error occurred while trying to start the component: ENDECA_MDEX_ROOT is required for this component,but eac.properties does not contain a valid ENDECA_MDEX_ROOT definition.: ENDECA_MDEX_ROOT is required for this component,but eac.properties does not contain a valid ENDECA_MDEX_ROOT definition.
    anyone can give me some proposal?
    Best regards

    Sounds like you're experiencing several issues. Let me try to answer a couple of these.
    Regarding "Asian Languages Best Practices_v2.3 - DRAFT.pdf", I believe this is an internal only doc. If you're with Oracle, contact the author directly and we can take this subject offline.
    Regarding your "ENDECA_MDEX_ROOT" issue, have you checked your %ENDECA_CONF%\conf folders eac.properties file. In it you will see the definition for your com.endeca.mdexRoot. Please make sure that points to your MDEX folder.
    For example: I have MDEX 6.2.2 installed in the default directory, so my com.endeca.mdexRoot is set to c:\\Endeca\\MDEX\\6.2.2
    3. developer studio problem.
    I havd builded a test in developer stuido of my client(windows 7), including data, properties, and dimensions. Further, I config some rules and search interfaces. at last, I got some config files with the xml type.
    But the problem is that when I intend to send the instance configuration to workbench, I can't find my app(builded via deployment template) from application drop down menu in endeca workbench setting.
    But I indeed see myapp in workbench via web browser.
    --Did you create your application first using the Deployment template? and run initialize services? Once your application is created via initialize services, you should be able to see your app in workbench.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Need advice: About record store

    Hi,
    I am developing an application which will first display a list of options to users (multiple choice i.e. with check boxes). The list of options could be anything, such as movie titles, etc.
    The application will need to allow users to select their options by
    checking the check box, and save the selected ones in record store.
    My problem is, the next time when users launch the application, how
    should it read in the records from record store, such that options
    previously selected by them are "checked"? For instance, a user selected "Stardust" and exit the application. Then when he re-launches the application, he will see "Stardust" as checked.
    I was thinking of using a loop, which will read in each record, and compare with the list; then check those which are identical. But I reckon this is rather inefficient? How shall I solve the problem?
    Thanks in advance :)

    Hmm... maybe I misunderstood your application. Where do you load the list, I thought it was from the RecordStore.
    If you save only the selected items in rms, you've already done all you need to do.
    Hey, by "control character" I didn't mean any special character. If I had to save all items and their selection status, I would probably prepend "Y" or "N" for the selection status and when loading, read the first character for status and the rest of the String for the name.
    There may be a more efficient way to so this but I don't know of any. Keep checking back, some professional developer may offer advice.
    Cheers, db

  • Case - Record

    Dear Experts,
    In a case transaction type in the  "Records" assignment block I need to create a new folder with two items beneath it in. How can I acheive this?
    Kindly help.
    Thanks,
    Kanthimathi

    Hi Kanthimathi,
    please use TRX SCASE to define the record model.
    Moreover the documentation for the following customizing path will assist:
    SAP Customizing Implementation Guide
    SAP NetWeaver
    Application Server
    Basis Services
    Case Management
    Create/Change Case Record Model
    regards,
    Johannes

  • Implementing a record store in a J2SE environment.

    Hi,
    I am new to J2ME, I am basically learning it as I go. What i am trying to do is convert a J2ME application so that it can run in a J2SE environment. I am intending on running several instances of this application in a desktop environment so I can perform scalability testing.
    The trouble I am having is finding a way to implement the record store that is usually implement by the different classes that are included in the "import javax.microedition.rms.*" in the desktop environment.
    If anybody has any suggestions as to how this could be implemented. please get back to me.
    Thanks,
    Darryl Smith

    Hi,
    I did kind of find a solution to this issue. I came across some code online that basically convert the j2me record store class into a j2se record store.
    Take a look at the code here: http://www.mrl.nott.ac.uk/~cmg/EQUIP2/
    I did however have to do a fair bit of tweaking to get it to do what i wanted but by looking at this code i got an idea of what i needed to do.
    Hope this helps.

  • Record Store only reads one record problem

    I have a problem where I can read and write a record to a records store, but i can not do this for multiple records as i am trying with below code. Any help is very welcomes thank you, I am very new to J2ME.
    I have a J2ME midlet that calls the startRecordStore() method which create a record 1.
    It uses a static int records and it increments it every time a new recordstore is created, well I am not entirely sure if i need to do this. Because I want to go through all the records created.
    public void startRecordStore() {
         // Incremenets records count
         // Temporary example for this workshop only
         records+=1;
         try { rs = RecordStore.openRecordStore("StudentStore"+records+"", true);
         catch (Exception err) {
              Alert alr = new Alert("Error Creating", err.toString(), null, AlertType.WARNING);
              alr.setTimeout(Alert.FOREVER);
              display.setCurrent(alr);
    }Then it calls the readData() method which reads the data from the 3 fields, something like this
    for(int i=0;i<count;i++) {
              ods.writeUTF(ReadDataString);
              ods.writeUTF(ReadDataString[i+1]);
              ods.writeInt(ReadDataInt[i]);
              ods.flush();
              // Put the whole write stream to a byte
              ReadDataByte = os.toByteArray();
              // finally add the fetchDataType to to a record store
              rs.addRecord(ReadDataByte, 0, ReadDataByte.length);
         os.reset();
         os.close();
         ods.close();
    Then the WriteData() method is called displaying the records
    PROBLEM it only displays the last record, instead of more then one record.
    eg. StudentStore1, StudentStore2 etc etc ..
    // create record enumerator referrence to the instance
         re = rs.enumerateRecords(null,null,false);
         // go through each records using enumerator
         while(re.hasNextElement()) {
              rs.getRecord(re.nextRecordId(), ReadInputData, 0);
              buffer.append(ids.readUTF());
              buffer.append("\n");
              buffer.append(ids.readUTF());
              buffer.append("\n");
              buffer.append(ids.readInt());
              buffer.append("\n");
              Alert alr = new Alert("Currently Reading", buffer.toString(), null, AlertType.WARNING);
              alr.setTimeout(Alert.FOREVER);
              display.setCurrent(alr);
         // CLOSE INPUT STREAM
         is.close();Any idea thanks guys

    public void startRecordStore() {
        records+=1;
        try {
            rs = RecordStore.openRecordStore("StudentStore"+records+"", true);
        }Are you sure this is what you want to do?
    I don't know where you're calling startRecordStore(), but you're creating a new record store for each "records".
    Shouldn't you be just opening the record store "StudentStore", and them adding records to that store?
    jc

  • Record Store Merger with partial Update

    Hi,
    I have a requirement in which I have to merge a feed into the endeca via partial update. The feed will only have 3 properties- part number , vendor name , Store id(value to be merged). The combination of part number and vendor name is not unique.
    The only to achieve the sdesired result is by merging the feed's store detail in the data base. And by incremental indexing pushing the data into endeca. Somebody told me that CAS will then provide me the difference data and with that difference data I can partially update the records.
    But my client doesn't want to use Simple indexing. She is asking to figure out merging data in CAS itself. I know that we can use Record Store Merger to merge two or more data source.
    But if I use record Store merger will it provide me same differencial data input as provided by CAS in the case of indexing??
    Also I am using Endeca version 6.4.0.

    apparently these is a known bug in Endeca which occurs when an update results in a product not falling in 1 of the dimensionvalues. So if the price changes from 100 to 1mln and the price range only goes to 1000, endeca does not update correctly

  • Record Store & Messaging

    Sorry for disturbing.
    But i wanna to know e-books ,that talks about RMS and record store,and i wanna know if there is an e-books for messaging in J2ME.thx a lot

    Can't help you with e-books, but there are a lot of tutorials on the net covering RMS usage and programming. Use Google and search for "J2ME RMS tutorial"

  • ATG 10.1.2, Endeca guided search: Implementing search field

    My team is working on implementing an application with ATG Commerce 10.1.2 and Endeca Guided Search 3.1.1, but no Endeca Experience Manager.
    We understand that in a keyword search HTTP request that gets sent from ATG to Endeca, the following URI parameters must be present:
    Ntt = Search keywords
    Ntx = Match mode
    Ntk = The search interface
    Is there an ATG OOTB (out-of-the-box) component or mechanism for generating keyword search requests to Endeca guided search?
    Or do we need to build the URI for the request from ATG to Endeca guided search with custom code?
    Thanks!
    -Jon

    If you would have been using the experience manager then you could have created/used cartidge for search box and inserted in your pages as below to show search textbox. here (/content/Shared/Global Search Configuration/Search Box) is path where Search Box cartidge is located in experience manager (you can refer CRS10.1.2 for it)
    <dsp:droplet name="InvokeAssembler">
    <dsp:param name="contentCollection"
    value="/content/Shared/Global Search Configuration/Search Box"/>
    <dsp:oparam name="output">
    <dsp:getvalueof var="searchBox"
    vartype="com.endeca.infront.assembler.ContentItem"
    param="contentItem" />
    <dsp:renderContentItem contentItem="${searchBox}" />
    </dsp:oparam>
    </dsp:droplet>
    but now since you are not using the experience manager and cartidges you would need to have something below like code to show text search box to query endeca
    <dsp:page>
    <dsp:importbean bean="/OriginatingRequest" var="originatingRequest"/>
    <dsp:importbean bean="/atg/multisite/Site" var="currentSite"/>
    <dsp:importbean bean="/atg/endeca/assembler/SearchFormHandler"/>
    <dsp:getvalueof var="contextPath" vartype="java.lang.String" value="${originatingRequest.contextPath}"/>
    <dsp:form action="${contextPath}/browse" id="searchForm" >
    <input type="hidden" name="Nty" value="${Nty}"/>
    <input name="Ntt" value="${searchText}" type="text" />
    <dsp:input type="hidden" value="${currentSite.id}" bean="SearchFormHandler.siteIds"/>
    <dsp:input type="submit" bean="SearchFormHandler.search" value="submit" />
    </dsp:form>
    </dsp:page>

  • Help needed in deploying a record store

    i have to deploy a MIDlet suite over OTA my MIDlet is not able to access Record store which is in /home/Rizwan/WTK2.2/appdb/DefaultColorPhone/record.db how
    Jaring is achieved
    Thankx in advance

    You can't jar and deploy it. You'll need to fill the RMS from some file in your jar the first time you start your midlet.

  • Getting Problem after Deleting a record from Record Store

    I am trying to create a simple application for mobile device. This application storing some records. I used RMS for this. These records i show in a list. But i tried to show list of records after deleting any record then list shows only prior records of deleted records n then shows exception as
    Recordsjavax.microedition.rms.InvalidRecordIDException
    The code i written as follows
    For storing data
    public void storeExercise(String EName, String Etime)
    try
    //System.out.println("AAAA");
    recordstore = RecordStore.openRecordStore("Test3",true);
    catch (Exception error)
    //System.out.println("EEEE");
    System.out.println("Exception"+error);
    try
    byte[] outputRecord;
    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    DataOutputStream outputdataStream = new DataOutputStream(outputStream);
    outputdataStream.writeUTF(EName);
    outputdataStream.writeUTF(Etime);
    outputdataStream.flush();
    outputRecord = outputStream.toByteArray();
    recordstore.addRecord(outputRecord, 0, outputRecord.length);
    outputStream.reset();
    outputStream.close();
    outputdataStream.close();
    zlist.append(EName+Etime, null);
    display.setCurrent(zlist);
    catch (Exception error)
    System.out.println("Exception in writing Records"+error);
    for getting records
    public void getExercise(ZimList zlist)
    this.zlist = zlist;
    try
    //System.out.println("AAAA");
    recordstore = RecordStore.openRecordStore("Test3",true);
    //recordstore.closeRecordStore();
    catch (Exception error)
    //System.out.println("EEEE");
    System.out.println("Exception"+error);
    try
    //System.out.println("Hello");
    String Ename = null;
    String Etime = null;
    byte[] byteInputData = new byte[100];
    ByteArrayInputStream inputStream = new ByteArrayInputStream(byteInputData);
    DataInputStream inputDataStream = new DataInputStream(inputStream);
    for (int x=1; x<= recordstore.getNumRecords() ; x++ )
    System.out.println("Record Id ="+x);
    //if (x != InvalidRecordID)
    recordstore.getRecord(x, byteInputData, 0);
    Ename = inputDataStream.readUTF();
    Etime = inputDataStream.readUTF();
    inputStream.reset();
    Final = Ename + Etime;
    System.out.println("Insert" + Final);
    zlist.insert(x-1,Final,null);
    inputStream.close();
    inputDataStream.close();
    //recordstore.closeRecordStore();
    catch (Exception error)
    System.out.println("Exception in Reading Records"+error);
    /*if (recordstore.listRecordStores() != null)
    try
    recordstore.deleteRecordStore("My Record Store");
    catch (Exception error)
    System.out.println("Exception"+error);
    And for deleting records I write
    public void deleteExercise(int index)
    try
    //System.out.println("AAAA");
    recordstore = RecordStore.openRecordStore("Test3",true);
    //recordstore.closeRecordStore();
    catch (Exception error)
    //System.out.println("EEEE");
    System.out.println("Exception"+error);
    if (recordstore.listRecordStores() != null)
    try
    byte[] byteInputData = new byte[100];
    ByteArrayInputStream inputStream = new ByteArrayInputStream(byteInputData);
    DataInputStream inputDataStream = new DataInputStream(inputStream);
    for (int x=1; x<= recordstore.getNumRecords() ; x++ )
    recordstore.getRecord(x, byteInputData, 0);
    if (x == index)
    recordstore.deleteRecord(index);
    //x--;
    inputStream.reset();
    break;
    inputStream.close();
    inputDataStream.close();
    catch (Exception error)
    System.out.println("Exception in Deleting Records"+error);
    Please Help me bcz i am new in j2me development n having no experience

    Ok ...
    When you add records in you store, the J2ME implementation create an ID.
    In the database, there is a list like that with ID <--> ]byte[ ]
    You can get back a record with a this ID.
    When you delete a record, it deletes the row. Lets say you have stored 3 records and that the ID are 1, 2, 3 ... if you delete the second one, then you have still in the database IDs 1 and 3.
    That's why you have this exception : you are iterating with an ID 1, 2, 3, 4, 5 ... if one is delete there is no reorganization. (If you add an other record, it could be stored with ID 2).
    To read all the records, you should get a list of existing IDs. Take a look at the API. Here is a piece of code, that you work but I have not tested :
    RecordStore rs;
    RecordEnumeration re = rs.enumerateRecords(null, null, false);
    while (re.hasNextElement()) {
      String str = new String(re.nextRecord());
      System.out.println("Record: " + str);         
    } Hope it will help you.
    Regards

  • Captivate 8 Tin Can - problem communicating with the learning record store

    When publishing a course to Tin Can format, what should I enter in the 'Identifier' field?
    If I publish with the default 'Course_ID1' text, I get an error when launching the course on our LMS. Errors says "There was a problem communicating with the learning record store."

    Hello,
    Welcome to Adobe Forums.
    Please share your contact information via [email protected]
    Thanks,
    Vikram Gaur
    Adobe Support

Maybe you are looking for