Java 无法删除特定行

Java 无法删除特定行,java,html,jsf,arraylist,popup,Java,Html,Jsf,Arraylist,Popup,我正在尝试从arraylist中的表中删除特定行。这是HTML代码 <h:outputLink styleClass="delete_link" value="#delete" >Delete</h:outputLink> <a href="#delete" class="overlay" id="delete"></a> <div class="popup">

我正在尝试从arraylist中的表中删除特定行。这是HTML代码

<h:outputLink styleClass="delete_link" value="#delete" >Delete</h:outputLink>

     <a href="#delete" class="overlay" id="delete"></a>
                    <div class="popup">

                               <p style="font-size: 20px;">Are you sure you want to delete <b><h:outputText size="15" value="#{abc.name}" /></b> from the  <b><h:outputText size="15" value="#{xyz.userlist}"/></b> List</p>

                        <div>
                              <h:commandButton id="submit-button2" styleClass="click_button1"
                                type="submit" value = "No, do not delete #{xyz.name} from #{abc.userlist}"  action="userlist.jsf?faces-redirect=true" update="msgs" /> 

                                                                            <br></br>
                              <h:commandButton id="submit-button1" styleClass="click_button2" style="background:green; color:white;"
                                type="submit" value = "Yes Delete"  action="#{xyz.deleteAction(o)}" update="msgs" /> 
                        <br /> <a class="close" href="#close"></a>
                        </div>

                    </div>
我在这里面临的问题是,每次我删除一行,第一行就会被删除,索引的值也会变成0。
早些时候,当我在没有弹出窗口的情况下使用相同的函数时,它工作得很好

因此,
userlist
类的
equals()
方法被破坏,它立即匹配
orderList
的第一项,而不是匹配项?@BalusC-基本上是在加载此html页面时,无论我选择了哪一行,它都会自动将index1的值设置为0,这是因为弹出框中存在abc.name或xyz.name,当加载此html页面时,弹出框会自动获取该值。编辑显示您不知道
indexOf()
如何在封面下工作。为此,它使用了
userlist
equals()
方法。它迭代每个项,直到
equals()
方法为当前迭代的项返回
true
,然后返回当前迭代索引。你知道
equals()
方法做什么以及应该如何实现吗?你的问题表明它被错误地执行了。
    public String deleteAction(userlist order) {
    int index1 = orderList.indexOf(order); 
    orderList.remove(index1);
    return null;
    }