Problem with multi row delete

Hi, I'm new in apex and I tried to build master detail report on some view. Everything is cool but "delete checked" doesn't work.
"ORA-20001: Error in multi row delete operation: row= , ORA-06502: PL/SQL: numeric or value error: NULL index table key value,"
the problem is that I don't know what is wrong :), I have a special trigger "instead of delete on MY_VIEW", but in this error problem is not explained.
Anybody knows what can be wrong? It is probably a problem with trigger or multi row doesn't work with views? I couldn't find how MRD knows what kind of statement use to delete rows so I don't know if the statement that program used is correct. In debug it lokks that:
0.32: ...Do not run process "ApplyMRU", process point=AFTER_SUBMIT, condition type=REQUEST_IN_CONDITION, when button pressed=
0.32: ...Process "ApplyMRD": MULTI_ROW_DELETE (AFTER_SUBMIT) #OWNER#:MY_VIEW:ITEM1:ITEM2
0.33: Show ERROR page...
0.33: Performing rollback...
thanks for any help
//sorry for english mistakes
edit: it doesn't matter if I use in trigger delete from ... where item1=:OLD.item1 ; or if I use item1=:P4_item1 (which actually saves correct values)
Edited by: user5931224 on 2009-06-13 08:55

I realised that this is not a problem with trigger, I changed trigger to "NULL;" and problem is the same. Maybe sb used master detail on view not only on tables and know what can be wrong in this situation?

Similar Messages

  • Tabular form - Multi row delete error

    Apex 4.0.2
    We have a simple CRUD type of application on a bunch of tables built using Apex v1.6 that has, over the years, been upgraded to v4.0.2 and it is working mostly fine. It uses all out-of-the-box standard components, forms, classic reports, nothing too fancy. Recently one of the tabular forms started to misbehave, the multi-row-delete process raises a No Data Found error. The tabular form is based on a view with a INSTEAD OF trigger to handle the DML. Manually deleting the row in SQL*Plus works fine delete from mytab here pk_id = :pk_id but selecting the same row in Apex and clicking Delete raises the error.
    How does one go about troubleshooting & fixing this sort of thing? I tried re-saving the region in the Builder, exporting/importing the entire app, nothing. Running in Debug mode doesn't really provide any additional information, just that the MRD process failed. Tabular forms are the most frustrating, opaque component in Apex, wish they were easier to troubleshoot.
    Any ideas?

    Hello Vikas,
    >> How does one go about troubleshooting & fixing this sort of thing?
    By given us a bit more information :)
    • Is it a manual Tabular Form (using the ITEM API) or a wizard created one?
    • Are the Insert/Update operations work correctly? If not, what is the type of your PK column(s)?
    • If the problem is limited to the Delete operation, maybe the problem lies with the checkbox column. Are you sure that on page it is rendered as the f01 column?
    • As triggers are involved, can you save the PK that the trigger sees? Is it the expected value?
    • Are there any other processes that are fired before the DML process? If so, maybe the problem is with them. You can temporarily disable them and see if it change anything.
    >> Tabular forms are the most frustrating, opaque component in Apex, wish they were easier to troubleshoot
    Yes, I agree. However, I believe that 4.1 made some serious advancement where Tabular Form is concerned. Having simplified Tabular Form related Validations and Process should make things easier, and as a result, prone to less errors. Still, the main problem is that the type of error you are talking about is usually the result of metadata problems and these are indeed very hard to track.
    Regards,
    Arie.
    ♦ Please remember to mark appropriate posts as correct/helpful. For the long run, it will benefit us all.
    ♦ Author of Oracle Application Express 3.2 – The Essentials and More

  • Issues in Table with Multi-Row Insert

    I have created a master detail screens using jheadstart on 2 separate pages, Master in the Form layout and detail in the Table Layout with multi-row insert, update and delete flags ON. Have set the New Rows count = 2.
    Issue 1
    If I try to delete any existing rows, it gives error for new rows saying value is required for the mandatory fields. It should just ignore the new rows if I have not updated any values for any attributes in the those row(As it does for non Master-Detail Table layout). I guess this might be happening because the jheadstart code is setting the foreign key for new rows the detail, but not resetting the status of the rows back to INITIALIZED.
    I also noticed that the create() of underlying EO is getting called for those blank rows when I click on 'Save' button, even if I have not changed any data in those rows.
    Issue 2
    When I try to select the new rows also for deletion, I am getting a '500 Internal Server Error' with following stack trace... This is also happening for normal (non Master-Detail) Table layout.
    java.lang.IllegalStateException: AdfFacesContext was already released or had never been attached.     at oracle.adf.view.faces.context.AdfFacesContext.release(AdfFacesContext.java:342)     at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:253)     at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:87)
    Issue 3
    I have put some validation code in the validate() method in the MyEntityImpl.java class.
    The validate method seems tobe getting called lots of times, in my case 20 times, where the new rows are just 2.
    Environment:
    Jdeveloper 10.1.3, JHeadStart 10.1.3 build 78, Windows XP
    thanks

    Thanks for the reply.
    Issue 1:
    What I have observed that in case of multi-row select enabled tables, the blank rows do not have any data. This is because the EO's create() method is called only when we post the data using 'Save' button. Thus the Foreign Keys are also not setup. This is a correct behavior since create() and FK setups etc should get done only if the user has inputted any value in the new rows and thus intend to insert new data into the table.
    I am able to find the exact cause of this issue. It is happening because in the details table, I have a column which needs tobe shown as checkbox. Since we can only bind checkbox to an Boolean attribute in VO, I have created a transient attribute of type Boolean, which basically calls the getter/setter of actual attribute doing the String "Y"/"N" to true/false conversion. Here is code for the transient attribute getter/setter
    public Boolean getDisplayOnWebBoolean() {
    return "Y".equals(getDisplayOnWeb()) ? Boolean.TRUE : Boolean.FALSE;
    public void setDisplayOnWebBoolean(Boolean value) {
    if(Boolean.TRUE.equals(value))
    setDisplayOnWeb("Y");
    else
    setDisplayOnWeb("N");
    Now when I click on the "Save" button, the setter for the boolean field is getting called with the value = false and this is resulting into the row being maked as dirty and thus the validation for the required attributes is getting executed and failing.
    Issue 2:
    Confirmed that correct filter-mapping entries are present in the web.xml.
    Now when I select the new blank rows for deletion and click save, following exception is thrown:
    java.lang.ClassCastException: oracle.jheadstart.controller.jsf.bean.NewTableRowBean at oracle.jheadstart.controller.jsf.bean.JhsCollectionModel.getRowsToRemove(JhsCollectionModel.java:412) at oracle.jheadstart.controller.jsf.bean.JhsCollectionModel.doModelUpdate(JhsCollectionModel.java:604) at oracle.jheadstart.controller.jsf.lifecycle.JhsPageLifecycle.processModelUpdaters(JhsPageLifecycle.java:541) at oracle.jheadstart.controller.jsf.lifecycle.JhsPageLifecycle.validateModelUpdates(JhsPageLifecycle.java:571)
    thanks - rutwik

  • Multi-row Delete (MRD) on a view?

    All,
    I created a tabular form on a view, using an instead of trigger to encapsulate the logic for the data manipulations. Works great--until someone checks a row and hits the delete button, at which point APEX throws this error:
    ORA-20001: Error in multi row delete operation: row= 107970-18527, ORA-06502: PL/SQL: numeric or value error: character to number conversion error,
    Error     multi row operation failedAs far as I can tell, it's not even getting to the trigger; I commented out the body of the instead of delete trigger (replacing it with null), and I'm still getting the same error. I have no validations or processes on the page at this point.
    The underlying data of the view requires three columns for a unique identifier, so I've concatenated two of them together as an extra column in the view (creating a varchar2 column), and told the MRD to use the calculated column and the third column as the primary key columns. But even using two of the three numeric columns (tweaking the trigger to use a hard-coded value for the third) as an ID fails miserably.
    Any idea what's going on?
    Thanks,
    -David
    (In case it makes a difference, we're on APEX 4.0.1.)

    Hi David,
    This might help:
    http://oraclequirks.blogspot.com/2011/07/ora-20001-error-in-multi-row-delete.html
    Hope it helps!
    Regards,
    Kiran

  • Validation in a Multi Row Delete

    Hi all,
    i made a page with an updateable report region - all works fine.
    But now i want to do a validation in the process 'Multi Row Delete'.
    The aim is to guarantee that the specific row is not deleted if the validation for that row fails.
    How can i achieve that?
    Any feedback is welcome.
    Best regards
    Martin

    Hi,
    many thanks for your reply.
    Yes in my case it is a tabular form and the validation should be done vor 'multi row delete'. Accordingly to the article you mentioned i created a validation with the following PL/SQL code:
    DECLARE
    vRow PLS_INTEGER;
    BEGIN
    FOR i in 1..apex_application.g_f01.COUNT LOOP
    IF apex_application.g_f01(i) IS NOT NULL THEN
    vRow := TO_NUMBER(apex_application.g_f01(i));
    IF lpkom_api.checkPersonAssigned(apex_application.g_f03(vRow)) THEN
    RETURN 'Delete is not allowed for this row.';
    END IF;
    END IF;
    END LOOP;
    END;
    Best regards
    Martin

  • ORA-20001: Error in multi row delete operation: ORA-01403: no data

    Whenever I attempt a multi-row delete on my master detail page, I recieve the error:
    ORA-20001: Error in multi row delete operation: ORA-01403: no dataI have seen in other threads that the primary key attribute of the underlying table needs to be set to 'Show' in the report attributes. I have tried this both with it displaying as 'Hidden' ('Show' is unchecked) and with it displaying as text. Either way still gives me the same error.
    Is there anything else not mentioned in the other threads that could be causing this error for me?
    Thanks.
    BoilerUP

    Jimmy,
    In your multi row delete process you specify schema name, table and column name. Your report needs to be of type “SQL query (Updateable report)”. And your report needs to include the primary key column of your table. The column or alias name of that report column needs to correspond with the actual column name of your table.
    Marc

  • Multi Row Delete Error

    Hi,
    Am trying to do a multi row delete on a report. Have added a [row selector] to the report and a 'multi row delete' process. Copied this from a sample app i got, but when i try and delete a row(s) i get the following error message:
    Unexpected error, unable to find item name at application or page level.
    ERR-1002 Unable to find item ID for item "P2_ROWS" in application "120".
    Can anyone give me any hints as to why this might be happeneing?
    Best regards
    Simon

    Simon,
    Are you still having trouble with this?
    Scott

  • Multi Row Delete and then I get a unique contraint violation on my PK

    I have a simple table with 2 columns, one a PK. I have a checkbox style, multi-row delete function setup on this (to be honest, APEX set this up automatically).
    I removed the add/edit functionality to keep just the delete button and delete procedure.
    When I select an item, and then click delete, I get a unique constraint violation that I'm violating my Primary Key.
    How can I fix this, or see what it's doing when it tries to delete the row?

    Hi,
    It sounds as though you haven't properly removed all of the add/edit functionality or that you still have some form of validation and/or computation in place or that you have a trigger that is trying to insert records into, for example, a history table (is the constraint on the table you are deleting from - the error message should tell you this?)
    Check that the only process you have is ApplyMRD and that this is pointing to the correct table and has the correct primary key set. Ensure that this has Conditional Processing set for a Request of "MULTI_ROW_DELETE".
    Check for any validations - there is no need to perform validations if your user can not insert or update data unless you want to check that they've ticked one or more checkboxes.
    Check for processes that could run if the user clicks the Delete button. Validations and processes could be conditional on either the button click or on request = "MULTI_ROW_DELETE".
    Review any triggers that you have on the table to ensure that deletions do not try to insert records into another table where the primary key on that table is not being populated.
    Regards
    Andy

  • I have problems with activation, after delete mi Iphone from Icloud.

    I have problems with activation, after delete mi Iphone from Icloud.

    Hello Sikiz 21,
    Thanks for using Apple Support Communities.
    For more information on this, take a look at:
    iPhone: Troubleshooting activation issues
    http://support.apple.com/kb/TS3424
    iOS: Troubleshooting FaceTime and iMessage activation
    http://support.apple.com/kb/TS4268
    Best of luck,
    Mario

  • Multi Row Delete & Row selector in 1.5

    Hi All,
    Please forgive my ignorance.
    But, are these processes (Multi Row Delete, Row selector) not available for HTML DB 1.5.
    What is the other way to do this.
    Thanks
    Monika

    Hi Monika,
    It's been a while since I used 1.5 so I can't answer that, however whilst I'm not generally in favour of upgrading just for the sake of it, is there a reason why you wouldn't consider upgrading to a later release?

  • Multi-Row Delete from a table via a button without submitting the page

    Hi,
    I have a simple page based on a (temporary) table. There is a submit button that calls a PL/SQL process. However, I would like to have an 'Abort' button that deletes all rows from the table belonging to a specific user.
    I had a look at 'Processes -> Data Manipulation --> Multi Row Delete' but this can only be linked to a page level event such as onSubmit. My onSubmit is linked to another process so this is not an option for me.
    I thought of creating a PL/SQL function for the deletion and calling it from Javascript linked to a button. I have done the PL/SQL and the button but don't know how to call PL/SQL from JS. And is this the correct way of doing something like a deletion? Any documents that show how can this be done will be much appreciated....
    I had a look at the forum and the documentation but could not find anything for multil-row deletion triggered from a button.
    Your help is appreciated as I'm a newbie :-)
    Thanks
    Angela

    Hi,
    I actually found the solution. I created a button (that submits) and a computation that calls the PL/SQL function conditional on that button being pressed. Initially I got confused because I already had another PL/SQL function attached to different button. I didn't think that having two buttons that submit the page and call different functions was possible.
    Thanks
    Angela

  • Problem with multi-mapping

    Hello everybody,
    we got a problem with multi-mapping.
    Source and target message-type are the same:
    <xsd:element name="MY_MESSAGE_TYPE">
    _<xsd:element name="BUSTRANS">
    __<xsd:element name="CHILD_1" maxOccurs="unbounded">
    ___<xsd:element name="SUB_CHILD_1" maxOccurs="unbounded">
    ____<xsd:element name="SUB_CHILD_1_NAME" type="xsd:string">
    __<xsd:element name="CHILD_2" maxOccurs="unbounded">
    ___<xsd:element name="SUB_CHILD_2" maxOccurs="unbounded">
    ____<xsd:element name="SUB_CHILD_2_NAME" type="xsd:string">
    The requirements are:
    <xsd:element name="MY_MESSAGE_TYPE"> should be created as often as <xsd:element name="CHILD_2"..> occurs
    a) so we mapped
    CHILD_2 -> MY_MESSAGE_TYPE
    BUSTRANS -> CopyValue -> BUSTRANS
    CHILD_1  -> CopyValue -> CHILD_1
    SUB_CHILD_1 -> CopyValue -> SUB_CHILD_1
    SUB_CHILD_1_NAME -> CopyValue -> SUB_CHILD_1_NAME
    CHILD_2 -> splitByValue(eachValue) -> CHILD_2
    The problem is:
    If we duplicated
    a) SUB_CHILD_1
    b) subtree CHILD_2 (so 2 messages will be generated)
    for testing, SUB_CHILD_1 only occurs 1 time! But we need it in every target message as often as it occurs in the source message.
    For your testing, here is the datatype:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://enbw.com/XI/SAPCRMB2B/javamappings_test" targetNamespace="http://mynamespace.com/XI/SAPCRMB2B/javamappings_test">
    <xsd:complexType name="MultipleBookingOrderRequest">
    <xsd:sequence>
      <xsd:element name="BUSTRANS">
       <xsd:complexType>
        <xsd:sequence>
         <xsd:element name="CHILD_1" maxOccurs="unbounded">
          <xsd:complexType>
           <xsd:sequence>
            <xsd:element name="SUB_CHILD_1" maxOccurs="unbounded">
             <xsd:complexType>
              <xsd:sequence>
               <xsd:element name="SUB_CHILD_1_NAME" type="xsd:string">
               </xsd:element>
              </xsd:sequence>
             </xsd:complexType>
            </xsd:element>
           </xsd:sequence>
          </xsd:complexType>
         </xsd:element>
         <xsd:element name="CHILD_2" maxOccurs="unbounded">
          <xsd:complexType>
           <xsd:sequence>
            <xsd:element name="SUB_CHILD_2" maxOccurs="unbounded">
             <xsd:complexType>
              <xsd:sequence>
               <xsd:element name="SUB_CHILD_2_NAME" type="xsd:string">
               </xsd:element>
              </xsd:sequence>
             </xsd:complexType>
            </xsd:element>
           </xsd:sequence>
          </xsd:complexType>
         </xsd:element>
        </xsd:sequence>
       </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:schema>
    Regards
    Dominic

    Mario,
    <i>multimapping (split IDOC into several IDocs) is possible with IDocs. We did it!</i>
    Did you use IDOC packaging for this?
    AFAIK,when  you use multimapping that involves different adapters including one J2EE adapter and a IDOC adapter in the inbound side, multi mapping does not work.
    Regards,
    Bhavesh

  • Problem with creating and deleting row in table

    Hi
    I'm using JDev11.1.1.2.0. I have a table "A" with primary key X -> CHAR(1). I have created Entity and ViewObject (with the primary key X).
    I created an editable Table with CreateInsert and Delete actions.
    When I click Insert, a new record is added and I enter some data. Then I move selection to some other row, and return back to the new row. When I press Delete, It does not delete the new row, but the previous one selected.
    In the console, when I navigate back two the new added record: <FacesCtrlHierBinding$FacesModel><makeCurrent> ADFv: No row found for rowKey: [oracle.jbo.Key[null ]].
    I tried the same scenario with a different table, that has RowID as a primary key and it works correctly.
    Any Idea why this is happening ? I suppose it's connected somehow with the primary key.
    Thanks
    agruev
    Edited by: a.gruev on Nov 26, 2009 9:47 AM

    I changed my entity: unchecked the X column to be primary key added RowID as a primary key. Now it works.
    What's wrong with my CHAR(1) as a primary key ?
    I also tried to add a Refresh button:
      <af:commandButton text="Refresh" id="cb3"/>and in the table add a partialTarget to the button. Now when I add new row and press the Refresh button - then it works.
    So it seems that the problem is when I add new row and enter data, the table is not refreshed and the row is missing it's primary key.
    Any solutions?
    Edited by: a.gruev on Nov 26, 2009 4:18 PM

  • Problem with a mass delete operation

    Hello,
    This questions concerns Oracle v10g.
    A table is used to record user login information and other connection related details such as IP address, date of connection, time of login, time of logout etc. from a web-based application.
    This table becomes quite large (3 million records+) and is purged once per month of all records older than 3 days old.
    The purge is done with a simple delete based on the date of connection CDAT and the column DISX (disconnection=True/False)
    DELETE FROM LOGTAB where CDAT < sysdate-3 and DISX='T';The columns CDAT and DISX are indexed. This delete operation can tale up to 10 minutes.
    Sporadic problems arise during this delete operation when users connect or disconnect : for those users trying to disconnect, the resulting UPDATE operation on the table currently being deleted seems to hang.
    For the users trying to login, there can be a delay (as the INSERT is in suspense). In the worst case all sessions become blocked until the DELETE is finally commited thus rendering any connection impossible for the duration.
    There is no conflict between the data being deleted and the data being UPDATED or INSERTED.
    The DELETE should only lock the rows that match the WHERE clause, so where is the contention arising from? Could this be index contention?
    Is there a better way to manage such mass deletes on such high transaction tables? Partitions?
    Thank you in advance.

    Have you considered partitioning this table? It would of course depend on whether most queries are looking at the columns you mention, but it would mean you could truncate the partitions older than 3 days ...
    create table LOGTAB
    (   cdat        date not null,
        disx        varchar2(1) not null,
        col1        varchar2(100)
    PARTITION BY RANGE (cdat)
    SUBPARTITION BY LIST (disx)
    SUBPARTITION TEMPLATE
        (   SUBPARTITION sptn_T VALUES('T'),
            SUBPARTITION sptn_Default VALUES(DEFAULT)
    (   PARTITION ptn_20110808 VALUES LESS THAN (TO_DATE('09/08/2011','dd/mm/yyyy')),
        PARTITION ptn_20110809 VALUES LESS THAN (TO_DATE('10/08/2011','dd/mm/yyyy')),
        PARTITION ptn_20110810 VALUES LESS THAN (TO_DATE('11/08/2011','dd/mm/yyyy')),
        PARTITION ptn_20110811 VALUES LESS THAN (TO_DATE('12/08/2011','dd/mm/yyyy')),
        PARTITION ptn_MaxValue VALUES LESS THAN (MAXVALUE)
    insert
    into
        LOGTAB
    SELECT
        TO_DATE('08/08/2011','dd/mm/yyyy'),
        CASE
            WHEN mod(rownum,2)=0 THEN
                'T'
            ELSE
                'S'
        END,
        'Blah'
    FROM
        dual
    CONNECT BY
        LEVEL <= 10
    insert
    into
        LOGTAB
    SELECT
        TO_DATE('09/08/2011','dd/mm/yyyy'),
        CASE
            WHEN mod(rownum,2)=0 THEN
                'T'
            ELSE
                'S'
        END,
        'Blah'
    FROM
        dual
    CONNECT BY
        LEVEL <= 10
    insert
    into
        LOGTAB
    SELECT
        TO_DATE('10/08/2011','dd/mm/yyyy'),
        CASE
            WHEN mod(rownum,2)=0 THEN
                'T'
            ELSE
                'S'
        END,
        'Blah'
    FROM
        dual
    CONNECT BY
        LEVEL <= 10
    insert
    into
        LOGTAB
    SELECT
        TO_DATE('11/08/2011','dd/mm/yyyy'),
        CASE
            WHEN mod(rownum,2)=0 THEN
                'T'
            ELSE
                'S'
        END,
        'Blah'
    FROM
        dual
    CONNECT BY
        LEVEL <= 10
    SQL> select * from logtab where cdat=to_date('08/08/2011','dd/mm/yyyy');
    CDAT      D COL1
    08-AUG-11 T Blah
    08-AUG-11 T Blah
    08-AUG-11 T Blah
    08-AUG-11 T Blah
    08-AUG-11 T Blah
    08-AUG-11 S Blah
    08-AUG-11 S Blah
    08-AUG-11 S Blah
    08-AUG-11 S Blah
    08-AUG-11 S Blah
    SQL> select table_name,partition_name,subpartition_name from user_tab_subpartitions;
    TABLE_NAME                     PARTITION_NAME                 SUBPARTITION_NAME
    LOGTAB                         PTN_20110808                   PTN_20110808_SPTN_DEFAULT
    LOGTAB                         PTN_20110808                   PTN_20110808_SPTN_T
    LOGTAB                         PTN_20110809                   PTN_20110809_SPTN_DEFAULT
    LOGTAB                         PTN_20110809                   PTN_20110809_SPTN_T
    LOGTAB                         PTN_20110810                   PTN_20110810_SPTN_DEFAULT
    LOGTAB                         PTN_20110810                   PTN_20110810_SPTN_T
    LOGTAB                         PTN_20110811                   PTN_20110811_SPTN_DEFAULT
    LOGTAB                         PTN_20110811                   PTN_20110811_SPTN_T
    LOGTAB                         PTN_MAXVALUE                   PTN_MAXVALUE_SPTN_DEFAULT
    LOGTAB                         PTN_MAXVALUE                   PTN_MAXVALUE_SPTN_T
    10 rows selected.
    SQL> alter table logtab truncate subpartition PTN_20110808_SPTN_T;
    Table truncated.
    Elapsed: 00:00:00.03
    SQL> select * from logtab where cdat=to_date('08/08/2011','dd/mm/yyyy');
    CDAT      D COL1
    08-AUG-11 S Blah
    08-AUG-11 S Blah
    08-AUG-11 S Blah
    08-AUG-11 S Blah
    08-AUG-11 S Blah
    Elapsed: 00:00:00.00Not sure if it's suitable for you or not but it could be an option...
    HTH
    David

  • Problems with multiple row operations in a dataTable

    Dear fellows,
    I have a strange problem, i want to do multiple row deletion in a dataTable. Can any one tell me a better way to do it. Because the way i am doing it, it is causing me strange problems. In some places it start working and in some it dont.
    The way i am doing it, it has the following code:
    <h:form>
    <h:dataTable id="list" value="#{availableRoomsList}"  var="RoomTypes" >
    <h:column>
         <f:facet name="header">
                 <h:outputText value="Select"/>
           </f:facet>
                 <h:selectBooleanCheckbox value="#{roomSelection[RoomTypes]}" >
                   </h:selectBooleanCheckbox>
    </h:column>
    <h:column>
         <f:facet name="header">
              <h:outputText value="Available Date"/>
         </f:facet>
         <h:outputText value="#{RoomTypes.availableDate}"/>
    </h:column>
    <h:column>
         <f:facet name="header">
              <h:outputText value="Available Rooms"/>
         </f:facet>
         <h:outputText value="#{RoomTypes.noOfRooms}"/>
    </h:column>
    </h:dataTable>
    <h:commandButton value="delete Selected Rooms" action="#{RoomResvAction.deleteRooms}" />
    </h:form>Now the back end code that i am using is as follows:
         private List<HotelRoomTypes> availableRoomsList;
          Map<HotelRoomTypes, Boolean> roomSelection = new HashMap<HotelRoomTypes, Boolean>();
             public String deleteRoom(){
                  System.out.println("In the delete selection method aad.");
                  try{
                       for (HotelRoomTypes item: availableRoomsList) {
                          Boolean selected = roomSelection.get(item);
                          if (selected!=null && selected) {
                               roomSelection.put(item, false);
                               //deleteRoom(item);
                  }catch(Exception e){
                       //e.printStackTrace();
                  return null;
             }The problem with the JSF code is when i click the command button it do not calls the associated action method with it. i dont know what is the problem with the code.
    And as far as the backend code is concern it should work fine.
    can anybody help me on this matter.

    thanks BalusC ,
    I will see this example and let you know, thanx for the help.
    but also please try and see my code and tell me what is wrong in it. because at some places it works and at some it simply dont . dont know why?
    well once again thanx for the help

Maybe you are looking for