I was shooting for Friday, but I think it will be Monday instead.
- 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
Envoi Solutions
http://envoisolutions.com
http://netzooid.com/blog