If your code is working on a test set-up, I wonder whether the JDBC provider has implemented java.sql.Timestamp incorrectly. If you just run javap java.sql.Timestamp, you should not see a default ctor listed. If you do, you've got a funky implementation.
On 2 Jun 2003 at 10:44, Scott Nichol wrote: > I don't see how it could ever work, unless some version of > java.sql.Timestamp has a default ctor. The following code in > BeanSerializer creates the bean: > > private Object instantiateBean(Class javaType) > throws IllegalArgumentException > { > try > { > return javaType.newInstance(); > } > catch (Throwable t) > { > throw new IllegalArgumentException("Unable to instantiate '" + > > StringUtils.getClassName(javaType) + > "': " + t.getMessage()); > } > } > > The newInstance is only going to work if the class has a default ctor > (or in Sun's terminology, a "nullary constructor"). > > On 2 Jun 2003 at 15:14, Jonathan Roberts wrote: > > > HI Scott, > > > > I thought I'd got around this by declaring the java.sql.Timestamp as a class in > > the xml file and loaded it with all the other classes. This seems to be fine on > > my machine but not on a deployment server. Could it be a class problem? > > > > Cheers > > > > Jonathan > > > > Scott Nichol <[EMAIL PROTECTED]> wrote: > > java.sql.Timestamp does not have a default constructor, which Apache > > SOAP requires for instantiation. An alternative for you would be to > > return a java.util.Date, which Apache SOAP knows how to serialize and > > de-serialize. > > > > On 2 Jun 2003 at 10:54, Jonathan Roberts wrote: > > > > > Hi. > > > > > > I'm getting the following errors on the response from the soap server : > > > > > > on the > > > r = c.invoke ( new URL( mstrHostString + "/soap/servlet/rpcrouter"), "" ); > > > call > > > where Response r; > > > and Call c; > > > --------------------------------------------------------------------------- > > > > > > Error report : > > > 1. If information exists and is returned : > > > > > > Unable to instantiate 'java.sql.Timestamp': java.sql.Timestamp > > > > > > You chose fetchAccountUsingAccountNo 10015301 > > > > > > Exception = [SOAPException: faultCode=SOAP-ENV:Client; msg=Unable to instantiate > > > 'java.sql.Timestamp': java.sql.Timestamp; targetException=java.lang.IllegalAr > > > > > > gumentException: Unable to instantiate 'java.sql.Timestamp': java.sql.Timestamp]. > > > > > > ---------------------------------------------------------------------------------------------------- > > > 2. If no information: > > > > > > Exception = [SOAPException: faultCode=SOAP-ENV:Client; msg= > > > > > > Can't yet deserialize non-null Objects; > > > > > > targetException=java.lang.IllegalArgumentException: Can't yet deserialize > > > non-null Objects] > > > > > > ------------------------------------------ > > > > > > Isssues : > > > > > > 1. I'm aware of problems with the timestamp and have set it up in the client > > > side thus have named it explicitly : > > > > > > QName qn9 = new QName("urn:xml-IVR-App", "java.sql.Timestamp"); > > > //map the type > > > smr.mapTypes(Constants.NS_URI_SOAP_ENC, qn9, java.sql.Timestamp.class, bsr, bsr); > > > //telling the call object to use this mapping > > > c.setSOAPMappingRegistry(smr); > > > > > > 2. and the xml > > > > > > > > > > xmlns:x="urn:xml-IVR-App" > > > > > > qname="x:java.sql.Timestamp" > > > > > > javaType="java.sql.Timestamp" > > > > > > java2XMLClassName="org.apache.soap.encoding.soapenc.BeanSerializer" > > > > > > xml2JavaClassName="org.apache.soap.encoding.soapenc.BeanSerializer" > > > > > > /> > > > > > > 3. Wierder - this works on the development machine but not on the stand-alone > > > Test Server. > > > > > > Any help would be appreciated. > > > > > > Jonathan > > > > > > > > > > > > > > > > > > > > > --------------------------------- > > > Yahoo! Plus - For a better Internet experience > > > > > > > > > Scott Nichol > > > > Do not reply directly to this e-mail address, > > as it is filtered to only receive e-mail from > > specific mailing lists. > > > > > > > > > > > > --------------------------------- > > Yahoo! Plus - For a better Internet experience > > > > > Scott Nichol > > Do not reply directly to this e-mail address, > as it is filtered to only receive e-mail from > specific mailing lists. > > > Scott Nichol Do not reply directly to this e-mail address, as it is filtered to only receive e-mail from specific mailing lists.