DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUGĀ· RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://issues.apache.org/bugzilla/show_bug.cgi?id=39212>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED ANDĀ· INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=39212 Summary: a bug in example code DummyCart.java Product: Tomcat 5 Version: 5.5.15 Platform: PC OS/Version: Windows 2000 Status: NEW Severity: normal Priority: P2 Component: Webapps:Examples AssignedTo: tomcat-dev@jakarta.apache.org ReportedBy: [EMAIL PROTECTED] Hi! I found a bug in the example code DummyCart.java Your code: /* * Copyright 2004 The Apache Software Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package sessions; import javax.servlet.http.*; import java.util.Vector; import java.util.Enumeration; public class DummyCart { Vector v = new Vector(); String submit = null; String item = null; private void addItem(String name) { v.addElement(name); } private void removeItem(String name) { v.removeElement(name); } public void setItem(String name) { item = name; } public void setSubmit(String s) { submit = s; } public String[] getItems() { String[] s = new String[ v.size()]; v.copyInto(s); return s; } public void processRequest(HttpServletRequest request) { // null value for submit - user hit enter instead of clicking on // "add" or "remove" if (submit == null) addItem(item); if (submit.equals("add")) addItem(item); else if (submit.equals("remove")) removeItem(item); // reset at the end of the request reset(); } // reset private void reset() { submit = null; item = null; } } 1. the argument request in method processRequest does nothing. 2. see this code block: // null value for submit - user hit enter instead of clicking on // "add" or "remove" if (submit == null) addItem(item); if (submit.equals("add")) addItem(item); else if (submit.equals("remove")) removeItem(item); there is a logical bug in it. It should be: if (submit == null || submit.equals("add")) addItem(item); elseif (submit.equals("remove")) removeItem(item); because if submit == null is true: the original code will yield an NullPointerException. under the condition submit == null, submit.equals("add") will not work properly. -- Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]