rubys 01/07/15 18:44:14 Modified: java/src/org/apache/soap/encoding/soapenc BooleanDeserializer.java Log: Per the spec, 0 and 1 are valid boolean values (and, in fact, are the ones used by the WhiteMesa implementation). I updated the BooleanDeserializer to be very liberal in what it will accept. Revision Changes Path 1.2 +13 -1 xml-soap/java/src/org/apache/soap/encoding/soapenc/BooleanDeserializer.java Index: BooleanDeserializer.java =================================================================== RCS file: /home/cvs/xml-soap/java/src/org/apache/soap/encoding/soapenc/BooleanDeserializer.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- BooleanDeserializer.java 2001/01/09 05:35:26 1.1 +++ BooleanDeserializer.java 2001/07/16 01:44:14 1.2 @@ -79,6 +79,18 @@ Element root = (Element)src; String value = DOMUtils.getChildCharacterData(root); - return new Bean(boolean.class, new Boolean(value)); + if ((value == null) || (value.length() == 0)) + throw new IllegalArgumentException("Missing boolean value"); + + switch (value.charAt(0)) { + case '0': case 'f': case 'F': + return new Bean(boolean.class, Boolean.FALSE); + + case '1': case 't': case 'T': + return new Bean(boolean.class, Boolean.TRUE); + + default: + throw new IllegalArgumentException("Invalid boolean value: " + value); + } } }