1 Reply Latest reply on Dec 21, 2005 6:21 PM by jason.greene

    .NET Client access JBoss and Invalid Element Exception

    giscard_aioba

      Hi guys, I need your help!!!!

      I have an Web Service on .NET language, so my work is
      - develop a WS on Java platform
      - made a client connecto to the .NET one and register on it
      - finally receive some callback information from the .NET WS when some events occurr

      So I create the WS SEI and implementation

      public interface RfidMgrWSSEI extends java.rmi.Remote {
      
      public void readerEvent(int userId, String tagId, String readerId, long time, int eventId) throws java.rmi.RemoteException;
      
      public void readerEventEx(int userId, String[] tagId, String[] tagInfo, String readerId, long time, int eventId) throws java.rmi.RemoteException;
      
      public void tagChangeEvent(int userId, String tagId, String readerGroupId, boolean appeared, long time, int eventId) throws java.rmi.RemoteException;
      
      public void tagChangeEventEx(int userId, String[] tagId, String[] tagInfo, String readerGroupId, boolean[] appeared, long time, int eventId) throws java.rmi.RemoteException;
      
       public void deviceNotify(int userId, String readerId, boolean available, long time, int eventId, java.lang.String detail) throws java.rmi.RemoteException;
      
      }//End RfidMgrWSSEI interface
      


      As it use array of types I customize the mapping files, so

      <?xml version="1.0" encoding="UTF-8"?>
      <java-wsdl-mapping xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.1" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mapping_1_1.xsd">
      <package-mapping>
      <package-type>sei</package-type>
      <namespaceURI>urn:RfidMgrWS/types</namespaceURI>
      </package-mapping>
      <package-mapping>
      <package-type>sei</package-type>
      <namespaceURI>urn:RfidMgrWS/wsdl</namespaceURI>
      </package-mapping>
      <package-mapping>
      <package-type>sei._arrays</package-type>
      <namespaceURI>urn:RfidMgrWS/types/arrays/</namespaceURI>
      </package-mapping>
      <package-mapping>
      <package-type>sei._arrays.java.lang</package-type>
      <namespaceURI>urn:RfidMgrWS/types/arrays/java/lang</namespaceURI>
      </package-mapping>
      <java-xml-type-mapping>
      <java-type>sei._arrays.java.lang.StringArray</java-type>
      <root-type-qname xmlns:typeNS="urn:RfidMgrWS/types/arrays/java/lang">typeNS:StringArray</root-type-qname>
      <qname-scope>complexType</qname-scope>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>sei._arrays.BooleanArray</java-type>
      <root-type-qname xmlns:typeNS="urn:RfidMgrWS/types/arrays/">typeNS:booleanArray</root-type-qname>
      <qname-scope>complexType</qname-scope>
      </java-xml-type-mapping>
      <service-interface-mapping>
      <service-interface>sei.RfidMgrWS</service-interface>
      <wsdl-service-name xmlns:serviceNS="urn:RfidMgrWS/wsdl">serviceNS:RfidMgrWS</wsdl-service-name>
      <port-mapping>
      <port-name>RfidMgrWSSEIPort</port-name>
      <java-port-name>RfidMgrWSSEIPort</java-port-name>
      </port-mapping>
      </service-interface-mapping>
      <service-endpoint-interface-mapping>
      <service-endpoint-interface>sei.RfidMgrWSSEI</service-endpoint-interface>
      <wsdl-port-type xmlns:portTypeNS="urn:RfidMgrWS/wsdl">portTypeNS:RfidMgrWSSEI</wsdl-port-type>
      <wsdl-binding xmlns:bindingNS="urn:RfidMgrWS/wsdl">bindingNS:RfidMgrWSSEIBinding</wsdl-binding>
      <service-endpoint-method-mapping>
      <java-method-name>deviceNotify</java-method-name>
      <wsdl-operation>deviceNotify</wsdl-operation>
      <method-param-parts-mapping>
      <param-position>0</param-position>
      <param-type>int</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_deviceNotify</wsdl-message>
      <wsdl-message-part-name>int_1</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>1</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_deviceNotify</wsdl-message>
      <wsdl-message-part-name>String_2</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>2</param-position>
      <param-type>boolean</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_deviceNotify</wsdl-message>
      <wsdl-message-part-name>boolean_3</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>3</param-position>
      <param-type>long</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_deviceNotify</wsdl-message>
      <wsdl-message-part-name>long_4</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>4</param-position>
      <param-type>int</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_deviceNotify</wsdl-message>
      <wsdl-message-part-name>int_5</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>5</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_deviceNotify</wsdl-message>
      <wsdl-message-part-name>String_6</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      </service-endpoint-method-mapping>
      <service-endpoint-method-mapping>
      <java-method-name>readerEvent</java-method-name>
      <wsdl-operation>readerEvent</wsdl-operation>
      <method-param-parts-mapping>
      <param-position>0</param-position>
      <param-type>int</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_readerEvent</wsdl-message>
      <wsdl-message-part-name>int_1</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>1</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_readerEvent</wsdl-message>
      <wsdl-message-part-name>String_2</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>2</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_readerEvent</wsdl-message>
      <wsdl-message-part-name>String_3</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>3</param-position>
      <param-type>long</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_readerEvent</wsdl-message>
      <wsdl-message-part-name>long_4</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>4</param-position>
      <param-type>int</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_readerEvent</wsdl-message>
      <wsdl-message-part-name>int_5</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      </service-endpoint-method-mapping>
      <service-endpoint-method-mapping>
      <java-method-name>readerEventEx</java-method-name>
      <wsdl-operation>readerEventEx</wsdl-operation>
      <method-param-parts-mapping>
      <param-position>0</param-position>
      <param-type>int</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_readerEventEx</wsdl-message>
      <wsdl-message-part-name>int_1</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>1</param-position>
      <param-type>java.lang.String[]</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_readerEventEx</wsdl-message>
      <wsdl-message-part-name>arrayOfString_2</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>2</param-position>
      <param-type>java.lang.String[]</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_readerEventEx</wsdl-message>
      <wsdl-message-part-name>arrayOfString_3</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>3</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_readerEventEx</wsdl-message>
      <wsdl-message-part-name>String_4</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>4</param-position>
      <param-type>long</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_readerEventEx</wsdl-message>
      <wsdl-message-part-name>long_5</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>5</param-position>
      <param-type>int</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_readerEventEx</wsdl-message>
      <wsdl-message-part-name>int_6</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      </service-endpoint-method-mapping>
      <service-endpoint-method-mapping>
      <java-method-name>tagChangeEvent</java-method-name>
      <wsdl-operation>tagChangeEvent</wsdl-operation>
      <method-param-parts-mapping>
      <param-position>0</param-position>
      <param-type>int</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEvent</wsdl-message>
      <wsdl-message-part-name>int_1</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>1</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEvent</wsdl-message>
      <wsdl-message-part-name>String_2</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>2</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEvent</wsdl-message>
      <wsdl-message-part-name>String_3</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>3</param-position>
      <param-type>boolean</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEvent</wsdl-message>
      <wsdl-message-part-name>boolean_4</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>4</param-position>
      <param-type>long</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEvent</wsdl-message>
      <wsdl-message-part-name>long_5</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>5</param-position>
      <param-type>int</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEvent</wsdl-message>
      <wsdl-message-part-name>int_6</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      </service-endpoint-method-mapping>
      <service-endpoint-method-mapping>
      <java-method-name>tagChangeEventEx</java-method-name>
      <wsdl-operation>tagChangeEventEx</wsdl-operation>
      <method-param-parts-mapping>
      <param-position>0</param-position>
      <param-type>int</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEventEx</wsdl-message>
      <wsdl-message-part-name>int_1</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>1</param-position>
      <param-type>java.lang.String[]</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEventEx</wsdl-message>
      <wsdl-message-part-name>arrayOfString_2</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>2</param-position>
      <param-type>java.lang.String[]</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEventEx</wsdl-message>
      <wsdl-message-part-name>arrayOfString_3</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>3</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEventEx</wsdl-message>
      <wsdl-message-part-name>String_4</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>4</param-position>
      <param-type>boolean[]</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEventEx</wsdl-message>
      <wsdl-message-part-name>arrayOfboolean_5</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>5</param-position>
      <param-type>long</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEventEx</wsdl-message>
      <wsdl-message-part-name>long_6</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>6</param-position>
      <param-type>int</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="urn:RfidMgrWS/wsdl">wsdlMsgNS:RfidMgrWSSEI_tagChangeEventEx</wsdl-message>
      <wsdl-message-part-name>int_7</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      </service-endpoint-method-mapping>
      </service-endpoint-interface-mapping>
      </java-wsdl-mapping>


      above is my wsdl file

      <?xml version="1.0" encoding="UTF-8"?>
      <definitions name="RfidMgrWS" targetNamespace="urn:RfidMgrWS/wsdl" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns2="urn:RfidMgrWS/types/arrays/" xmlns:ns3="urn:RfidMgrWS/types/arrays/java/lang" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="urn:RfidMgrWS/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <types>
      <schema targetNamespace="urn:RfidMgrWS/types/arrays/" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="urn:RfidMgrWS/types/arrays/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <import namespace="urn:RfidMgrWS/types/arrays/java/lang"/>
      <complexType name="booleanArray">
      <sequence>
      <element maxOccurs="unbounded" minOccurs="0" name="value" type="boolean"/>
      </sequence>
      </complexType>
      </schema>
      <schema targetNamespace="urn:RfidMgrWS/types/arrays/java/lang" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="urn:RfidMgrWS/types/arrays/java/lang" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <import namespace="urn:RfidMgrWS/types/arrays/"/>
      <complexType name="StringArray">
      <sequence>
      <element maxOccurs="unbounded" minOccurs="0" name="value" nillable="true" type="string"/>
      </sequence>
      </complexType>
      </schema>
      </types>
      <message name="RfidMgrWSSEI_readerEventEx">
      <part name="int_1" type="xsd:int"/>
      <part name="arrayOfString_2" type="ns3:StringArray"/>
      <part name="arrayOfString_3" type="ns3:StringArray"/>
      <part name="String_4" type="xsd:string"/>
      <part name="long_5" type="xsd:long"/>
      <part name="int_6" type="xsd:int"/>
      </message>
      <message name="RfidMgrWSSEI_readerEventResponse">
      </message>
      <message name="RfidMgrWSSEI_deviceNotifyResponse">
      </message>
      <message name="RfidMgrWSSEI_readerEventExResponse">
      </message>
      <message name="RfidMgrWSSEI_deviceNotify">
      <part name="int_1" type="xsd:int"/>
      <part name="String_2" type="xsd:string"/>
      <part name="boolean_3" type="xsd:boolean"/>
      <part name="long_4" type="xsd:long"/>
      <part name="int_5" type="xsd:int"/>
      <part name="String_6" type="xsd:string"/>
      </message>
      <message name="RfidMgrWSSEI_tagChangeEventResponse">
      </message>
      <message name="RfidMgrWSSEI_tagChangeEvent">
      <part name="int_1" type="xsd:int"/>
      <part name="String_2" type="xsd:string"/>
      <part name="String_3" type="xsd:string"/>
      <part name="boolean_4" type="xsd:boolean"/>
      <part name="long_5" type="xsd:long"/>
      <part name="int_6" type="xsd:int"/>
      </message>
      <message name="RfidMgrWSSEI_tagChangeEventExResponse">
      </message>
      <message name="RfidMgrWSSEI_readerEvent">
      <part name="int_1" type="xsd:int"/>
      <part name="String_2" type="xsd:string"/>
      <part name="String_3" type="xsd:string"/>
      <part name="long_4" type="xsd:long"/>
      <part name="int_5" type="xsd:int"/>
      </message>
      <message name="RfidMgrWSSEI_tagChangeEventEx">
      <part name="int_1" type="xsd:int"/>
      <part name="arrayOfString_2" type="ns3:StringArray"/>
      <part name="arrayOfString_3" type="ns3:StringArray"/>
      <part name="String_4" type="xsd:string"/>
      <part name="arrayOfboolean_5" type="ns2:booleanArray"/>
      <part name="long_6" type="xsd:long"/>
      <part name="int_7" type="xsd:int"/>
      </message>
      <portType name="RfidMgrWSSEI">
      <operation name="deviceNotify" parameterOrder="int_1 String_2 boolean_3 long_4 int_5 String_6">
      <input message="tns:RfidMgrWSSEI_deviceNotify"/>
      <output message="tns:RfidMgrWSSEI_deviceNotifyResponse"/>
      </operation>
      <operation name="readerEvent" parameterOrder="int_1 String_2 String_3 long_4 int_5">
      <input message="tns:RfidMgrWSSEI_readerEvent"/>
      <output message="tns:RfidMgrWSSEI_readerEventResponse"/>
      </operation>
      <operation name="readerEventEx" parameterOrder="int_1 arrayOfString_2 arrayOfString_3 String_4 long_5 int_6">
      <input message="tns:RfidMgrWSSEI_readerEventEx"/>
      <output message="tns:RfidMgrWSSEI_readerEventExResponse"/>
      </operation>
      <operation name="tagChangeEvent" parameterOrder="int_1 String_2 String_3 boolean_4 long_5 int_6">
      <input message="tns:RfidMgrWSSEI_tagChangeEvent"/>
      <output message="tns:RfidMgrWSSEI_tagChangeEventResponse"/>
      </operation>
      <operation name="tagChangeEventEx" parameterOrder="int_1 arrayOfString_2 arrayOfString_3 String_4 arrayOfboolean_5 long_6 int_7">
      <input message="tns:RfidMgrWSSEI_tagChangeEventEx"/>
      <output message="tns:RfidMgrWSSEI_tagChangeEventExResponse"/>
      </operation>
      </portType>
      <binding name="RfidMgrWSSEIBinding" type="tns:RfidMgrWSSEI">
      <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
      <operation name="deviceNotify">
      <soap:operation soapAction=""/>
      <input>
      <soap:body namespace="urn:RfidMgrWS/wsdl" use="literal"/>
      </input>
      <output>
      <soap:body namespace="urn:RfidMgrWS/wsdl" use="literal"/>
      </output>
      </operation>
      <operation name="readerEvent">
      <soap:operation soapAction=""/>
      <input>
      <soap:body namespace="urn:RfidMgrWS/wsdl" use="literal"/>
      </input>
      <output>
      <soap:body namespace="urn:RfidMgrWS/wsdl" use="literal"/>
      </output>
      </operation>
      <operation name="readerEventEx">
      <soap:operation soapAction=""/>
      <input>
      <soap:body namespace="urn:RfidMgrWS/wsdl" use="literal"/>
      </input>
      <output>
      <soap:body namespace="urn:RfidMgrWS/wsdl" use="literal"/>
      </output>
      </operation>
      <operation name="tagChangeEvent">
      <soap:operation soapAction=""/>
      <input>
      <soap:body namespace="urn:RfidMgrWS/wsdl" use="literal"/>
      </input>
      <output>
      <soap:body namespace="urn:RfidMgrWS/wsdl" use="literal"/>
      </output>
      </operation>
      <operation name="tagChangeEventEx">
      <soap:operation soapAction=""/>
      <input>
      <soap:body namespace="urn:RfidMgrWS/wsdl" use="literal"/>
      </input>
      <output>
      <soap:body namespace="urn:RfidMgrWS/wsdl" use="literal"/>
      </output>
      </operation>
      </binding>
      <service name="RfidMgrWS">
      <port binding="tns:RfidMgrWSSEIBinding" name="RfidMgrWSSEIPort">
      <soap:address location="http://BRB42603NS:8080/RfidMgrWebService/RfidMgrWS"/>
      </port>
      </service>
      </definitions>


      I already develop a WS Simulator on Java language to test my callback web service, so everything works all right. But when I try to deploy it to interface with the .NET version I was getting the follow error


      2005-12-20 08:22:07,375 ERROR [org.jboss.axis.providers.java.RPCInvocation] org.xml.sax.SAXException: Invalid element in sei._arrays.java.lang.StringArray - string
      org.xml.sax.SAXException: Invalid element in sei._arrays.java.lang.StringArray - string
      at org.jboss.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:432)
      at org.jboss.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:1168)
      at org.jboss.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:244)
      at org.jboss.axis.message.SOAPElementAxisImpl.publishToHandler(SOAPElementAxisImpl.java:1389)
      at org.jboss.axis.message.RPCElement.deserialize(RPCElement.java:262)
      at org.jboss.axis.message.RPCElement.getParams(RPCElement.java:396)
      at org.jboss.axis.providers.java.RPCInvocation.prepareFromRequestEnvelope(RPCInvocation.java:235)
      at org.jboss.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:103)
      at org.jboss.axis.providers.java.JavaProvider.invoke(JavaProvider.java:358)
      at org.jboss.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:73)
      at org.jboss.axis.SimpleChain.doVisiting(SimpleChain.java:160)
      at org.jboss.axis.SimpleChain.invoke(SimpleChain.java:123)
      at org.jboss.axis.handlers.soap.SOAPService.invoke(SOAPService.java:560)
      at org.jboss.webservice.server.ServerEngine.invokeInternal(ServerEngine.java:200)
      at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.java:89)
      at org.jboss.axis.transport.http.AxisServlet.doPost(AxisServlet.java:911)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at org.jboss.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
      at java.lang.Thread.run(Thread.java:595)
      2005-12-20 08:22:07,453 ERROR [org.jboss.webservice.server.ServerEngine] Server error: AxisFault
      faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client
      faultSubcode:
      faultString: Invalid element in sei._arrays.java.lang.StringArray - string
      faultActor:
      faultNode:
      faultDetail:
      {http://xml.apache.org/axis/}stackTrace: org.xml.sax.SAXException: Invalid element in sei._arrays.java.lang.StringArray - string
      at org.jboss.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:432)
      at org.jboss.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:1168)
      at org.jboss.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:244)
      at org.jboss.axis.message.SOAPElementAxisImpl.publishToHandler(SOAPElementAxisImpl.java:1389)
      at org.jboss.axis.message.RPCElement.deserialize(RPCElement.java:262)
      at org.jboss.axis.message.RPCElement.getParams(RPCElement.java:396)
      at org.jboss.axis.providers.java.RPCInvocation.prepareFromRequestEnvelope(RPCInvocation.java:235)
      at org.jboss.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:103)
      at org.jboss.axis.providers.java.JavaProvider.invoke(JavaProvider.java:358)
      at org.jboss.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:73)
      at org.jboss.axis.SimpleChain.doVisiting(SimpleChain.java:160)
      at org.jboss.axis.SimpleChain.invoke(SimpleChain.java:123)
      at org.jboss.axis.handlers.soap.SOAPService.invoke(SOAPService.java:560)
      at org.jboss.webservice.server.ServerEngine.invokeInternal(ServerEngine.java:200)
      at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.java:89)
      at org.jboss.axis.transport.http.AxisServlet.doPost(AxisServlet.java:911)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at org.jboss.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
      at java.lang.Thread.run(Thread.java:595)

      {http://xml.apache.org/axis/}isRuntimeException: true

      2005-12-20 08:22:07,515 INFO [org.jboss.axis.transport.http.AxisServlet] org.xml.sax.SAXException: Invalid element in sei._arrays.java.lang.StringArray - string
      2005-12-20 08:22:08,171 DEBUG [org.jboss.cache.eviction.LRUAlgorithm] processing the node events in region: Regions--- fqn: /_default_/ maxNodes 1000000 TimeToIdleSeconds 300current eviction queue size is 0
      2005-12-20 08:22:08,171 DEBUG [org.jboss.cache.eviction.LRUAlgorithm] processed 0 node events
      2005-12-20 08:22:09,171 DEBUG [org.jboss.cache.eviction.LRUAlgorithm] processing the node events in region: Regions--- fqn: /_default_/ maxNodes 1000000 TimeToIdleSeconds 300current eviction queue size is 0
      2005-12-20 08:22:09,171 DEBUG [org.jboss.cache.eviction.LRUAlgorithm] processing the node events in region: Regions--- fqn: /_default_/ maxNodes 5000 TimeToIdleSeconds 1000current eviction queue size is 0
      2005-12-20 08:22:09,171 DEBUG [org.jboss.cache.eviction.LRUAlgorithm] processed 0 node events
      2005-12-20 08:22:09,171 DEBUG [org.jboss.cache.eviction.LRUAlgorithm] processed 0 node events
      2005-12-20 08:22:09,937 DEBUG [org.jboss.webservice.server.ServerEngine] invoke: org.jboss.axis.MessageContext@c68351
      2005-12-20 08:22:09,937 DEBUG [org.jboss.webservice.server.ServerEngine] TransportHandler: http
      2005-12-20 08:22:09,937 DEBUG [org.jboss.webservice.server.InvokerProviderJSE] makeNewServiceObject: class=sei.RfidMgrWSSEI
      2005-12-20 08:22:09,937 ERROR [org.jboss.axis.providers.java.RPCInvocation] org.xml.sax.SAXException: Invalid element in sei._arrays.java.lang.StringArray - string
      org.xml.sax.SAXException: Invalid element in sei._arrays.java.lang.StringArray - string
      at org.jboss.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:432)
      at org.jboss.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:1168)
      at org.jboss.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:244)
      at org.jboss.axis.message.SOAPElementAxisImpl.publishToHandler(SOAPElementAxisImpl.java:1389)
      at org.jboss.axis.message.RPCElement.deserialize(RPCElement.java:262)
      at org.jboss.axis.message.RPCElement.getParams(RPCElement.java:396)
      at org.jboss.axis.providers.java.RPCInvocation.prepareFromRequestEnvelope(RPCInvocation.java:235)
      at org.jboss.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:103)
      at org.jboss.axis.providers.java.JavaProvider.invoke(JavaProvider.java:358)
      at org.jboss.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:73)
      at org.jboss.axis.SimpleChain.doVisiting(SimpleChain.java:160)
      at org.jboss.axis.SimpleChain.invoke(SimpleChain.java:123)
      at org.jboss.axis.handlers.soap.SOAPService.invoke(SOAPService.java:560)
      at org.jboss.webservice.server.ServerEngine.invokeInternal(ServerEngine.java:200)
      at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.java:89)
      at org.jboss.axis.transport.http.AxisServlet.doPost(AxisServlet.java:911)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at org.jboss.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
      at java.lang.Thread.run(Thread.java:595)
      2005-12-20 08:22:10,000 ERROR [org.jboss.webservice.server.ServerEngine] Server error: AxisFault
      faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client
      faultSubcode:
      faultString: Invalid element in sei._arrays.java.lang.StringArray - string
      faultActor:
      faultNode:
      faultDetail:
      {http://xml.apache.org/axis/}stackTrace: org.xml.sax.SAXException: Invalid element in sei._arrays.java.lang.StringArray - string
      at org.jboss.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:432)
      at org.jboss.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:1168)
      at org.jboss.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:244)
      at org.jboss.axis.message.SOAPElementAxisImpl.publishToHandler(SOAPElementAxisImpl.java:1389)
      at org.jboss.axis.message.RPCElement.deserialize(RPCElement.java:262)
      at org.jboss.axis.message.RPCElement.getParams(RPCElement.java:396)
      at org.jboss.axis.providers.java.RPCInvocation.prepareFromRequestEnvelope(RPCInvocation.java:235)
      at org.jboss.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:103)
      at org.jboss.axis.providers.java.JavaProvider.invoke(JavaProvider.java:358)
      at org.jboss.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:73)
      at org.jboss.axis.SimpleChain.doVisiting(SimpleChain.java:160)
      at org.jboss.axis.SimpleChain.invoke(SimpleChain.java:123)
      at org.jboss.axis.handlers.soap.SOAPService.invoke(SOAPService.java:560)
      at org.jboss.webservice.server.ServerEngine.invokeInternal(ServerEngine.java:200)
      at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.java:89)
      at org.jboss.axis.transport.http.AxisServlet.doPost(AxisServlet.java:911)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at org.jboss.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
      at java.lang.Thread.run(Thread.java:595)

      {http://xml.apache.org/axis/}isRuntimeException: true




        • 1. Re: .NET Client access JBoss and Invalid Element Exception
          jason.greene

          Try pasting your wsdl file in a [ code ] block. From what i can see it looks like your array type is missing the required nested element.

          You should have something in your schema that looks like this

          <complexType name="StringArray>
           <sequence>
           <element name="value" type="string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
           </sequence>
          </complexType>
          


          Also, try adding your jaxrpc-mapping customizations like so (note the variable mapping):

          <java-xml-type-mapping>
           <java-type>sei._arrays.java.lang.StringArray</java-type>
           <root-type-qname xmlns:typeNS="urn:RfidMgrWS/types/arrays/java/lang">typeNS:StringArray</root-type-qname>
           <qname-scope>complexType</qname-scope>
           <variable-mapping>
           <java-variable-name>value</java-variable-name>
           <xml-element-name>value</xml-element-name>
           </variable-mapping>
          </java-xml-type-mapping>
          


          -Jason