Getting SAXException - Invalid element error

2005-07-25 Thread Bala Ramakrishnan \(balar\)
I am getting this intermittent hard to reproduce error from my
multi-threaded program on a few of the Windows 2000 machines. This time,
the error is on an element called wlseID of the WlseVersion object
returned by the getWlseVersion() method in the 'config' service. I have
examined all options, and I am not able to find the cause as it is very
intermittent.

Last time I ran into this kind of error, it was on a different element
called deviceType of the DeviceDetail object returned by the
getDeviceDetail() method in the inventory service.

This time I have turned on log4j debugging and captured the exact soap
request/responses that are being sent and received.

The wsdl file was generated using the java2wsdl axis utility.

The error (stack trace):

2005-07-22 16:19:54,531 [_WlseProcessors:Pooled Thread:5] ERROR
org.apache.axis.client.Call.invoke() - Exception:
org.xml.sax.SAXException: Invalid element in
com.cisco.nm.wlse.xmlapi.WLSEVersion - wlseID   at
org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeseriali
zer.java:252)   at
org.apache.axis.encoding.DeserializationContextImpl.startElement(Deseria
lizationContextImpl.java:893)   at
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:
200)at
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.j
ava:684)at
org.apache.axis.message.RPCElement.deserialize(RPCElement.java:241)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:265)
at org.apache.axis.client.Call.invoke(Call.java:1871)   at
org.apache.axis.client.Call.invoke(Call.java:1777)  at
org.apache.axis.client.Call.invoke(Call.java:1315)  at
com.cisco.nm.wlse.xmlapi.config.gencode.ConfigSoapBindingStub.getVersion
(ConfigSoapBindingStub.java:126)at
com.cisco.nm.mom.wlsess.WlseDevice.getWlseInfo(WlseDevice.java:786)
at
com.cisco.nm.mom.wlsess.WlseDevice.updateWlseInfo(WlseDevice.java:664)
at com.cisco.nm.mom.wlsess.WlseDevice.updateWlse(WlseDevice.java:554)
at
com.cisco.nm.mom.wlsess.RedundancyProcessor.processDcrAddModPingEvent(Re
dundancyProcessor.java:224) at
com.cisco.nm.mom.wlsess.WlseDCREventProcessor.processUpdateEvent(WlseDCR
EventProcessor.java:254)at
com.cisco.nm.mom.wlsess.WlseDCREventProcessor.run(WlseDCREventProcessor.
java:144)   at
com.cisco.nm.mom.util.ThreadPool$1.run(ThreadPool.java:181)

The soap request:
=
?xml version=1.0 encoding=UTF-8?
soapenv:Envelope
xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/;
xmlns:xsd=http://www.w3.org/2001/XMLSchema;
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
 soapenv:Body
  ns1:getVersion
soapenv:encodingStyle=http://schemas.xmlsoap.org/soap/encoding/;
xmlns:ns1=urn:com.cisco.nm.wlse.xmlapi.config/
 /soapenv:Body
/soapenv:Envelope

The soap Response:
==
?xml version=1.0 encoding=UTF-8?
soapenv:Envelope
xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/;
xmlns:xsd=http://www.w3.org/2001/XMLSchema;
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
 soapenv:Body
  ns1:getVersionResponse
soapenv:encodingStyle=http://schemas.xmlsoap.org/soap/encoding/;
xmlns:ns1=urn:com.cisco.nm.wlse.xmlapi.config
   getVersionReturn xsi:type=ns2:WLSEVersion
xmlns:ns2=urn:com.cisco.nm.wlse.xmlapi
wlseID xsi:type=xsd:int6/wlseID
hostname xsi:type=xsd:string172.19.27.195/hostname
ip xsi:type=xsd:string172.19.27.195/ip
mode xsi:type=xsd:int0/mode
ipStandby xsi:type=xsd:string xsi:nil=true/
sysOID xsi:type=xsd:string1.3.6.1.4.1.9.1.630/sysOID
versionHardware xsi:type=xsd:string1130/versionHardware
versionSoftware xsi:type=xsd:string2.12FCS/versionSoftware
managedDeviceCount xsi:type=xsd:int4/managedDeviceCount
maxDevicesAllowed xsi:type=xsd:int2550/maxDevicesAllowed
configIdentifier xsi:type=xsd:long0/configIdentifier
configChecksum
xsi:type=xsd:string2ca232c4dc36d9ab7708c3fccc11a3e6/configChecksum
   /getVersionReturn
  /ns1:getVersionResponse
 /soapenv:Body
/soapenv:Envelope


The java object:


package com.cisco.nm.wlse.xmlapi.src;
import java.io.Serializable;

public class WLSEVersion implements Serializable {
public int wlseID;
public String hostname;
public String ip;
public int mode;
public String[] ipVirtual;
public String ipStandby;
public String sysOID;
public String versionHardware;
public String versionSoftware;
public int managedDeviceCount;
public int maxDevicesAllowed;
public long configIdentifier;
public String configChecksum;
}


Generated WSDL file: (Config.wsdl)
==

?xml version=1.0 encoding=UTF-8?
wsdl:definitions targetNamespace=urn:com.cisco.nm.wlse.xmlapi.config
xmlns=http://schemas.xmlsoap.org/wsdl/;
xmlns:apachesoap=http://xml.apache.org/xml-soap;
xmlns:impl=urn:com.cisco.nm.wlse.xmlapi.config
xmlns:intf=urn:com.cisco.nm.wlse.xmlapi.config
xmlns:soapenc=http://schemas.xmlsoap.org/soap/encoding/;

RE: SAXException - Invalid element error

2005-05-13 Thread Bala Ramakrishnan \(balar\)
 Thomas Manes [mailto:[EMAIL PROTECTED] 
Sent: Friday, May 13, 2005 7:15 AM
To: axis-user@ws.apache.org
Subject: Re: SAXException - Invalid element error

Could you send us your WSDL and SOAP messages?

On 5/12/05, Bala Ramakrishnan (balar) [EMAIL PROTECTED] wrote:
  
 This topic seems to have been discussed before, but I could not get a 
 clear picture.
   
 I am getting the error below: 
 
  org.xml.sax.SAXException: Invalid element in 
 com.cisco.nm.wlse.xmlapi.inventory.gencode.DeviceDetail - deviceType
 2005-04-28 10:33:19,828 [_WlseProcessors:Pooled Thread:2] ERROR
 com.cisco.nm.mom.util.WlseXmlApiHelper.invoke() - AxisFault
  faultCode:
 {http://xml.apache.org/axis/}Server.userException
  faultString: org.xml.sax.SAXException: Invalid element in 
 com.cisco.nm.wlse.xmlapi.inventory.gencode.DeviceDetail - deviceType
  faultActor: null
  faultDetail: 
  stackTrace: org.xml.sax.SAXException: Invalid element in 
 com.cisco.nm.wlse.xmlapi.inventory.gencode.DeviceDetail - deviceType  
 at
 org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeseria
 lizer.java:252)
  at
 org.apache.axis.encoding.DeserializationContextImpl.startElement(Deser
 ializationContextImpl.java:893)
  at
 org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.jav
 a:200)
  at
 org.apache.axis.message.MessageElement.publishToHandler(MessageElement
 .java:684)
  at
 org.apache.axis.message.RPCElement.deserialize(RPCElement.java:241)
  at
 org.apache.axis.message.RPCElement.getParams(RPCElement.java:265)
  at org.apache.axis.client.Call.invoke(Call.java:1871)
  at org.apache.axis.client.Call.invoke(Call.java:1777)
  at org.apache.axis.client.Call.invoke(Call.java:1315)
  at
 com.cisco.nm.wlse.xmlapi.inventory.gencode.InventorySoapBindingStub.ge
 tDeviceDetail(InventorySoapBindingStub.java:471)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
 Method)
  at
 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j
 ava:39)
  at
 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
 orImpl.java:25)  at java.lang.reflect.Method.invoke(Method.java:324)
  at
 com.cisco.nm.mom.util.WlseXmlApiHelper.invoke(WlseXmlApiHelper.java:15
 2)  at $Proxy3.getDeviceDetail(Unknown Source)  at
 com.cisco.nm.mom.wlsess.AccessPoints.updateAPInfo(AccessPoints.java:80
 )
  at
 com.cisco.nm.mom.wlsess.WlseDevice.updateWlseInfo(WlseDevice.java:591)
  at
 com.cisco.nm.mom.wlsess.WlseDevice.updateWlse(WlseDevice.java:443)
  at
 com.cisco.nm.mom.wlsess.RedundancyProcessor.processDcrAddModPingEvent(
 RedundancyProcessor.java:187)
  at
 com.cisco.nm.mom.wlsess.WlseDCREventProcessor.processUpdateEvent(WlseD
 CREventProcessor.java:219)
  at
 com.cisco.nm.mom.wlsess.WlseDCREventProcessor.run(WlseDCREventProcesso
 r.java:123)
  at
 com.cisco.nm.mom.util.ThreadPool$1.run(ThreadPool.java:89)
 ==
 The class
 com.cisco.nm.wlse.xmlapi.inventory.gencode.DeviceDetail is included 
 below:
   
 /**
  * DeviceDetail.java
  *
  * This file was auto-generated from WSDL
  * by the Apache Axis WSDL2Java emitter.
  */
   
 package com.cisco.nm.wlse.xmlapi.inventory.gencode;
   
 public class DeviceDetail  implements java.io.Serializable {
 private com.cisco.nm.wlse.xmlapi.DeviceId id;
 private java.lang.String ipAddress;
 private java.lang.String hostname;
 private java.lang.String product;
 private java.lang.String version;
 private java.lang.String deviceType;
 private long timeLastDiscovered;
 private java.lang.String sysObjectID;
 private java.lang.String sysName;
 private java.lang.String sysLocation;
 private java.lang.String subnet;
 private java.lang.String dnsName;
 private java.lang.String userDefinedDescr;
 private java.lang.String[] SSIDs;
 private int[] vlanIDs;
 private java.lang.String[] macAddresses;
 private java.lang.String[] radioMacAddresses;
 private java.lang.String serialNumber;
 private int wdsMode;
   
 }
   
 =
 I have seen discussions pertaining to such problems if there are array

 or complex types in the class. This code was generated by wsdl2java 
 utility and the wsdl itself was generated from java2wsdl.
   
 Axis 1.0 is the version being used. Is this problem fixed in the 
 latest release Axis 1.2? if not, am I doing something wrong?
   
 All answers and help are very much appreciated. 
 Thanks for your time. 
 



SAXException - Invalid element error

2005-05-12 Thread Bala Ramakrishnan \(balar\)



This topic seems to 
have been discussed before, but I could not get a clear 
picture.

I am getting the 
error below:
org.xml.sax.SAXException: Invalid element in 
com.cisco.nm.wlse.xmlapi.inventory.gencode.DeviceDetail - 
deviceType2005-04-28 10:33:19,828 [_WlseProcessors:Pooled Thread:2] 
ERROR com.cisco.nm.mom.util.WlseXmlApiHelper.invoke() - 
AxisFaultfaultCode: 
{http://xml.apache.org/axis/}Server.userExceptionfaultString: 
org.xml.sax.SAXException: Invalid element in 
com.cisco.nm.wlse.xmlapi.inventory.gencode.DeviceDetail - 
deviceTypefaultActor: nullfaultDetail: stackTrace: 
org.xml.sax.SAXException: Invalid element in 
com.cisco.nm.wlse.xmlapi.inventory.gencode.DeviceDetail - deviceTypeat 
org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:252)at 
org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:893)at 
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:200)at 
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:684)at 
org.apache.axis.message.RPCElement.deserialize(RPCElement.java:241)at 
org.apache.axis.message.RPCElement.getParams(RPCElement.java:265)at 
org.apache.axis.client.Call.invoke(Call.java:1871)at 
org.apache.axis.client.Call.invoke(Call.java:1777)at 
org.apache.axis.client.Call.invoke(Call.java:1315)at 
com.cisco.nm.wlse.xmlapi.inventory.gencode.InventorySoapBindingStub.getDeviceDetail(InventorySoapBindingStub.java:471)at 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at 
java.lang.reflect.Method.invoke(Method.java:324)at 
com.cisco.nm.mom.util.WlseXmlApiHelper.invoke(WlseXmlApiHelper.java:152)at 
$Proxy3.getDeviceDetail(Unknown Source)at 
com.cisco.nm.mom.wlsess.AccessPoints.updateAPInfo(AccessPoints.java:80)at 
com.cisco.nm.mom.wlsess.WlseDevice.updateWlseInfo(WlseDevice.java:591)at 
com.cisco.nm.mom.wlsess.WlseDevice.updateWlse(WlseDevice.java:443)at 
com.cisco.nm.mom.wlsess.RedundancyProcessor.processDcrAddModPingEvent(RedundancyProcessor.java:187)at 
com.cisco.nm.mom.wlsess.WlseDCREventProcessor.processUpdateEvent(WlseDCREventProcessor.java:219)at 
com.cisco.nm.mom.wlsess.WlseDCREventProcessor.run(WlseDCREventProcessor.java:123)at 
com.cisco.nm.mom.util.ThreadPool$1.run(ThreadPool.java:89)
==
The class 
com.cisco.nm.wlse.xmlapi.inventory.gencode.DeviceDetailis included 
below:

/*** 
DeviceDetail.java** This file was auto-generated from 
WSDL* by the Apache Axis WSDL2Java 
emitter.*/

package 
com.cisco.nm.wlse.xmlapi.inventory.gencode;

public class 
DeviceDetail implements java.io.Serializable { 
private com.cisco.nm.wlse.xmlapi.DeviceId id; private 
java.lang.String ipAddress; private java.lang.String 
hostname; private java.lang.String 
product; private java.lang.String 
version; private java.lang.String 
deviceType; private long 
timeLastDiscovered; private java.lang.String 
sysObjectID; private java.lang.String 
sysName; private java.lang.String 
sysLocation; private java.lang.String 
subnet; private java.lang.String 
dnsName; private java.lang.String 
userDefinedDescr; private java.lang.String[] 
SSIDs; private int[] vlanIDs; 
private java.lang.String[] macAddresses; private 
java.lang.String[] radioMacAddresses; private 
java.lang.String serialNumber; private int 
wdsMode;

}

=
I have seen 
discussions pertaining to such problems if there are array or complex types in 
the class. This code was generated by wsdl2java utility and the wsdl itself was 
generated from java2wsdl.

Axis 1.0 is the 
version being used. Is this problem fixed in the latest release Axis 1.2? if 
not, am I doing something wrong?

All answers and help 
are very much appreciated.
Thanks for your 
time.