I have an Axis WS method that returns a complex type as a JavaBean. It uses beta2.
My bean looks like this: public class Address { private String _FOO; private String _D_TSENT; public String getFOO() { return _FOO; } public String getD_TSENT() { return _D_TSENT; } } The WSDL appears like so: <complexType name="Address"> <sequence> <element name="FOO"/> <element name="D_TSENT"/> </sequence> </complexType> <element name="Address" type="tns:Address"> However, when I generate client stubs using Java2Wsdl and execute this: MyServiceProxy binding = new MyServiceProxyServiceLocator().getMyService(); Address addr = binding.getAddress(key); ...and see the XML come across as: <Address> <FOO>Bar</FOO> <D_TSENT>20020515</D_TSENT> </Address> ...I get the following error: org.xml.sax.SAXException: Invalid element in myclient.Address - d_TSENT at org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer. java:208) at org.apache.axis.encoding.DeserializationContextImpl.startElemen (DeserializationContextImpl.java:831) at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:199) at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java: 589) at org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer. java:208) at org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.java :370) at org.apache.axis.encoding.DeserializationContextImpl.startElement (DeserializationContextImpl.java:831) at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:199) at org.apache.axis.encoding.DeserializationContextImpl.startElement(Deserializa tionContextImpl.java:844) at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:199) at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java: 589) at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java: 589) at org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.java :370) at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:224) at org.apache.axis.message.RPCElement.getParams(RPCElement.java:248) at org.apache.axis.client.Call.invoke(Call.java:1701) ... It appears that the BeanDeserializer is somehow interpreting the character before the underscore as lower case, causing problems when it tries to deserialize the XML that's always uppercase for that field. Is this a bug in Axis? Thanks, Kory Lasker