It shouldn't be causing the problem, but it is probably related. Is there a chance you could send me your whole wsdl (privately will work fine if you can't send it publicly)? I think that will help me figure out whats going on. I suspect that it only happens when you have things laid out in a certain way, I just can't figure out what that way is yet! Thanks,

- Dan

[EMAIL PROTECTED] wrote:

Sorry if this message got repeated, but it doesn't look like it got sent

Actually, i got an exception with deserialization on server side . Stack Trace
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client
faultSubcode: faultString: Fault faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}stackTrace:Fault
        at
org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.ja
va:222)
        at
org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.jav
a:129)
        at
org.apache.axis.encoding.DeserializationContext.endElement(Deserializati
onContext.java:1087)
        at
weblogic.apache.xerces.parsers.AbstractSAXParser.endElement(AbstractSAXP
arser.java:585)
        at
weblogic.apache.xerces.impl.XMLNamespaceBinder.handleEndElement(XMLNames
paceBinder.java:898)
        at
weblogic.apache.xerces.impl.XMLNamespaceBinder.endElement(XMLNamespaceBi
nder.java:644)
        at
weblogic.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElemen
t(XMLDocumentFragmentScannerImpl.java:1008)
        at
weblogic.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentConte
ntDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1469)


I found something interesting in the way that the wsdl is generated

I have a AccounProperties object with properties being a map, so ageis
mapping is:
<mappings>
   <mapping>
      <property name="properties" keyType="java.lang.String"
componentType="java.lang.String"/>
      <property name="keys" componentType="java.lang.String"/>
   </mapping>
</mappings>

And WSDL type is: <xsd:complexType name="AccountProperties">
<xsd:sequence>
<xsd:element name="keys" type="ns6:ArrayOfString" minOccurs="0"
nillable="true"/> <xsd:element name="properties" type="ns6:string2stringMap"
minOccurs="0"/> </xsd:sequence>
</xsd:complexType>

Interestingly the namespace for string2stringMap is at
com.email.sender...i don't know how this namespace gets there...Can that
cause the problem of deserialization on server side?

<xsd:schema targetNamespace="http://sender.email.com";
elementFormDefault="qualified" attributeFormDefault="qualified">
<xsd:complexType name="string2stringMap"> <xsd:sequence>
<xsd:element name="entry" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="key" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="value" type="xsd:string" minOccurs="0"
maxOccurs="1"/> </xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
Lana

-----Original Message-----
From: Dan Diephouse [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 15, 2006 7:21 AM
To: [email protected]
Subject: Re: [xfire-user] client not passing java.util.Map

Hi Lana,
Are you actually running into this issue? I can't reproduce it at all. But if both you and Ron are experiencing it, that drastically increases the likelihood of it being real.

- Dan

[EMAIL PROTECTED] wrote:
Hi Dan, Any news on when the 1.1 Beta 1 will be released with bug 293 fixed?
This is related to mapping java.util.Map object

Thanks Lana

-----Original Message-----
From: Dan Diephouse [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 08, 2006 6:45 PM
To: [email protected]
Subject: Re: [xfire-user] client not passing java.util.Map

Hmmm looking at this again, the client does seem to be serializing it right. It must be the server that isn't unserializing it correctly.
Why,
I have no idea. Very bizarre, I will try to write some tests for this
soon.

- Dan

Dan Diephouse wrote:
Seems you've found a bug. I've created an issue here and I will investigate it for our next release:

http://jira.codehaus.org/browse/XFIRE-293

- Dan

Ron Anderson wrote:
I'll attach the messages in txt file as something seemed to clobber the xml tags.

Ron

----- Original Message ----
From: Dan Diephouse <[EMAIL PROTECTED]>
To: [email protected]
Sent: Wednesday, March 8, 2006 1:23:51 PM
Subject: Re: [xfire-user] client not passing java.util.Map

It seems these messages didn't come through correctly. Can you try
pasting them again?

Ron Anderson wrote:
Dan,

Very sorry about the duplicate messages.

Seems from the tcpmon that the map is getting sent, here are the
request and response.

POST /apiapp/services/ServiceOrderService HTTP/1.1
SOAPAction: ""
Content-Type: text/xml; charset=UTF-8
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0;
XFire
Client +http://xfire.codehaus.org)
Host: 127.0.0.1:6062
Expect: 100-continue
Content-Length: 1791

1'>http://model.api.com";>1new'>http://model.api.com";>new
<http://model.api.com%22%3E1new> voip
orderfalse'>http://model.api.com";>false2006-03-08T00:00:00-08:00'>http:/
/model.api.com">2006-03-08T00:00:00-08:00passwordpasswordabcduseruserJoh
n
<http://model.api.com%22%3Efalse2006-03-08T00:00:00-08:00>
Smithhosthostdynamicsubscribersubscriber20155512125'>http://model.api.co
m">51001'>http://model.api.com";>10012006-03-08T00:00:00-08:00'>http://mo
del.api.com">2006-03-08T00:00:00-08:00VOIP'>http://model.api.com";>VOIPop
en.running.pending_processing'>http://model.api.com";>open.running.pendin
g_processing2015551212'>http://model.api.com";>2015551212createOrder'>htt
p://model.api.com">createOrder
<http://model.api.com%22%3E51001>
HTTP/1.1 100 Continue

HTTP/1.1 200 OK
Set-Cookie: JSESSIONID=95DD4E6E7FBD6A5C72A7761CDCE6529F;
Path=/apiapp
Content-Type: text/xml;charset=UTF-8
Transfer-Encoding: chunked
Date: Wed, 08 Mar 2006 16:53:25 GMT
Server: Apache-Coyote/1.1

157
29
0

Thanks,

Ron

----- Original Message ----
From: Dan Diephouse <[EMAIL PROTECTED]>
To: [email protected]
Sent: Wednesday, March 8, 2006 8:14:35 AM
Subject: Re: [xfire-user] client not passing java.util.Map

Ron, this is the third time you have sent this message. Please
don't do
so again.

I haven't been able to deduce what is going on, it may be a bug.
The
client accesses aegis mapping files via the classpath, so make sure
they're copied onto it.

You might want to try looking at the request/response in TCPMon and
see
if you can figure out whats going on - https://tcpmon.dev.java.net/

- Dan

Ron Anderson wrote:
Hi Dan,

Sorry if this is a duplicate but I seem to be having mailing list
issues.
I've exposed my soap service and its working with the exception
that
my java.util.Map (OrderItems)
property doesn't get serialized and sent (or maybe unserialized
on the
receive side).
All the other properties of ServiceOrder (except map) are passed
and
the long key is
returned all with no problem.

I'm not getting any errors on either client or server side.  I've
set
debug statements that show the map populated on
the client service method call but what gets received and
persisted is
empty.

Would greatly appreciate your help/advise in case I've got
something
set up wrong here.  Its not clear how
the client gets access to the aegis mapping files to figure out
the
Map mapping.
> > Thanks,
Ron
> > Here is the client code I'm using to send.  The receive side
is Spring
Remote with Aegis mapping files.
> > public String sendSoapOrderRequest() throws
MalformedURLException {
> >          Service serviceModel = new
ObjectServiceFactory().create(OrderManager.class);
      > >        > >  OrderManager service = (OrderManager)
        new XFireProxyFactory().create(serviceModel, endpoint);

        log.debug("This serviceOrder is: " + serviceOrder);
        Long key = (Long)
service.saveServiceOrder(serviceOrder);
> > log.debug("soap message sent... received
orderKey: " + key);
        if (key != null) {
            return "start";
        } else
            return "list";
    }
> >  Excerpts from my wsdl:


xmlns:ns6="http://io.java"; <http://io.java%22>;
<http://io.java%22>;;
xmlns:ns7="http://model.api.com"; <http://model.api.com%22>;
<http://model.api.com%22>;; > > xmlns:ns8="http://dao.api.com"; <http://dao.api.com%22>; <http://dao.api.com%22>;;
xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/";
<http://schemas.xmlsoap.org/soap/envelope/%22>;
<http://schemas.xmlsoap.org/soap/envelope/%22>;;
xmlns:soap12="http://www.w3.org/2003/05/soap-envelope";
<http://www.w3.org/2003/05/soap-envelope%22>;
<http://www.w3.org/2003/05/soap-envelope%22>;;
xmlns:soapenc11="http://schemas.xmlsoap.org/soap/encoding/";
<http://schemas.xmlsoap.org/soap/encoding/%22>;
<http://schemas.xmlsoap.org/soap/encoding/%22>;;
xmlns:soapenc12="http://www.w3.org/2003/05/soap-encoding";
<http://www.w3.org/2003/05/soap-encoding%22>;
<http://www.w3.org/2003/05/soap-encoding%22>;;
xmlns:tns="http://service.api.com"; <http://service.api.com%22>;
<http://service.api.com%22>;;
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/";
<http://schemas.xmlsoap.org/wsdl/soap/%22>;
<http://schemas.xmlsoap.org/wsdl/soap/%22>;;
xmlns:xsd="http://www.w3.org/2001/XMLSchema";
<http://www.w3.org/2001/XMLSchema%22>;
<http://www.w3.org/2001/XMLSchema%22>;;
targetNamespace="http://service.api.com";
<http://service.api.com%22>; <http://service.api.com%22>;;>
> > <xsd:complexType name="string2OrderItemMap">
 <xsd:sequence>
    <xsd:element name="entry"  minOccurs="0"
maxOccurs="unbounded">
       <xsd:complexType>
         <xsd:sequence>
              <xsd:element name="key" type="xsd:string"
minOccurs="0"  maxOccurs="1" />
<xsd:element name="value" type="ns7:OrderItem" >
minOccurs="0" maxOccurs="1" />
         </xsd:sequence>
       </xsd:complexType>
   </xsd:element>
 </xsd:sequence>
</xsd:complexType>
> > <xsd:element name="saveServiceOrder">
  <xsd:complexType>
     <xsd:sequence>
          <xsd:element name="in0" type="ns7:ServiceOrder"
nillable="true"  minOccurs="1" maxOccurs="1" />
     </xsd:sequence>
   </xsd:complexType>
</xsd:element>

<xsd:element name="saveServiceOrderResponse">
 <xsd:complexType>
  <xsd:sequence>
<xsd:element name="out" type="xsd:long"
nillable="true"  > > minOccurs="1" maxOccurs="1"
/>
   </xsd:sequence>
  </xsd:complexType>
</xsd:element>
> >
 <xsd:complexType name="ServiceOrder">
  <xsd:sequence>
         <xsd:element name="actual_completion_date"
type="xsd:dateTime"  minOccurs="0" />
<xsd:element name="orderDate" type="xsd:dateTime" > >
minOccurs="0" />
         <xsd:element name="orderItems"
type="tns:string2OrderItemMap" minOccurs="0" />
<xsd:element name="orderKey" type="xsd:long"
minOccurs="0"
nillable="true" />
<xsd:element name="priority" type="xsd:string" > >
minOccurs="0" nillable="true" />
<xsd:element name="purchaseOrder" type="xsd:string" >
minOccurs="0" nillable="true" />
         <xsd:element
name="requested_completion_date" type="xsd:dateTime"
minOccurs="0" />
<xsd:element name="serviceType" type="xsd:string" > >
minOccurs="0" nillable="true" />
         <xsd:element name="state" type="xsd:string"
minOccurs="0"
nillable="true" />
         <xsd:element name="subscriberID" type="xsd:string"  > >
minOccurs="0" nillable="true" />
<xsd:element name="type" type="xsd:string"
minOccurs="0"  > > nillable="true" />
   </xsd:sequence>
 </xsd:complexType>

 <xsd:complexType name="OrderItem">
   <xsd:sequence>
<xsd:element name="orderItemKey" type="xsd:string" > >
minOccurs="0" nillable="true" />
<xsd:element name="orderItemValue" type="xsd:string" > >
minOccurs="0" nillable="true" />
    </xsd:sequence>
 </xsd:complexType>

 <xsd:complexType name="ArrayOfServiceOrder">
   <xsd:sequence>
  > >  <xsd:element name="ServiceOrder" type="ns7:ServiceOrder"
nillable="true" minOccurs="0" maxOccurs="unbounded"  />
   </xsd:sequence>
 </xsd:complexType>
</xsd:schema>

<wsdl:service name="OrderManager">
 <wsdl:port binding="tns:OrderManagerHttpBinding"
name="OrderManagerHttpPort">
  > >   </wsdl:port>
</wsdl:service>
--
Dan Diephouse
Envoi Solutions LLC
http://envoisolutions.com
http://netzooid.com/blog

--
Dan Diephouse
Envoi Solutions LLC
http://envoisolutions.com
http://netzooid.com/blog


------------------------------------------------------------------------
POST /apiapp/services/ServiceOrderService HTTP/1.1
SOAPAction: ""
Content-Type: text/xml; charset=UTF-8
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; XFire

Client +http://xfire.codehaus.org)
Host: 127.0.0.1:6062
Expect: 100-continue
Content-Length: 1791

<?xml version='1.0' encoding='UTF-8'?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"; xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";><soap:Body><saveSe
rviceOrder
xmlns="http://service.api.com";><in0><api_client_ID xmlns="http://model.api.com";>1</api_client_ID><contraintOrder xmlns="http://model.api.com"; xsi:nil="true"/><description xmlns="http://model.api.com";>new voip order</description><failed xmlns="http://model.api.com";>false</failed><failedException xmlns="http://model.api.com"; xsi:nil="true"/><orderDate
xmlns="http://model.api.com";>2006-03-08T00:00:00-08:00</orderDate><order
Items
xmlns="http://model.api.com";><entry><key>password</key><value><orderItem
Key>password</orderItemKey><orderItemValue>abcd</orderItemValue></value>
</entry><entry><key>user</key><value><orderItemKey>user</orderItemKey><o
rderItemValue>John
Smith</orderItemValue></value></entry><entry><key>host</key><value><orde
rItemKey>host</orderItemKey><orderItemValue>dynamic</orderItemValue></va
lue></entry><entry><key>subscriber</key><value><orderItemKey>subscriber<
/orderItemKey><orderItemValue>2015551212</orderItemValue></value></entry
</orderItems><orderKey
xmlns="http://model.api.com"; xsi:nil="true"/><priority xmlns="http://model.api.com";>5</priority><purchaseOrder
xmlns="http://model.api.com";>1001</purchaseOrder><requested_completion_d
ate
xmlns="http://model.api.com";>2006-03-08T00:00:00-08:00</requested_comple
tion_date><serviceType
xmlns="http://model.api.com";>VOIP</serviceType><state
xmlns="http://model.api.com";>open.running.pending_processing</state><sub
scriberID
xmlns="http://model.api.com";>2015551212</subscriberID><type
xmlns="http://model.api.com";>createOrder</type></in0></saveServiceOrder>
</soap:Body></soap:Envelope>
HTTP/1.1 100 Continue

HTTP/1.1 200 OK
Set-Cookie: JSESSIONID=95DD4E6E7FBD6A5C72A7761CDCE6529F;
Path=/apiapp
Content-Type: text/xml;charset=UTF-8
Transfer-Encoding: chunked
Date: Wed, 08 Mar 2006 16:53:25 GMT
Server: Apache-Coyote/1.1

157
<?xml version='1.0' encoding='UTF-8'?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"; xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";><soap:Body><saveSe
rviceOrderResponse
xmlns="http://service.api.com";><out>29</out></saveServiceOrderResponse><
/soap:Body></soap:Envelope>
0




--
Dan Diephouse
(616) 971-2053
Envoi Solutions LLC
http://netzooid.com

Reply via email to