Hi Jose,

The reason there's such a big time difference between the 2 timestamps is 
because the .NET client invoked the service yesterday while I invoked the 
service using a Java client today. I merely wanted to show the formatting of 
the 2 timestamps. I'm sorry if I mislead you! The .NET developer isn't around 
today so I couldn't get him to invoke the service so I used yesterday's 
invocation as an example. Cheers.

Regards
Sanjay

________________________________
From: José Ferreiro [mailto:[EMAIL PROTECTED]
Sent: 24 July 2008 10:30
To: axis-user@ws.apache.org
Subject: Re: Timestamp error when invoking a Rampart service from a .NET client.

Hello Sanjay,

Please observe the following:


SOAP Request from your .NET client
################################
  <wsse:Security>
           <wsu:Timestamp 
wsu:Id="Timestamp-74569579-8e34-407f-a10c-c27d3b119b80">
              <wsu:Created>2008-07-23T14:55:04Z</wsu:Created>
              <wsu:Expires>2008-07-23T15:00:04Z</wsu:Expires>
           </wsu:Timestamp>
  </wsse:Security>

### Java ###
<wsu:Timestamp 
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
 wsu:Id="Timestamp-1035988">
              <wsu:Created>2008-07-24T08:59:27.952Z</wsu:Created>
              <wsu:Expires>2008-07-24T09:04:27.952Z</wsu:Expires>
</wsu:Timestamp>


Please take a look at the clock synchonization between the two machines.

By default this value should not have a difference bigger than 300 seconds (5 
minutes) timetolive parameter in Axis(for sure) or Axis2( I guess too) [1].


I you would like to change this default value in .NET proceed as follow in the 
configuration file.

MICROSOFT World: WSE 3.0 [2] - Use the tags timeToleranceInSeconds and 
defaultTtlInSeconds in the app.config file of the web service in your project 
(illustration follows with the corresponding xml tags)

< configuration >
< microsoft.web.services3 >
< security >
< timeToleranceInSeconds value = "3600" / >
< defaultTtlInSeconds value = "3600" / >

Maybe you may investigate in this direction because your SOAP message seems OK 
but it fails when verifying the timestamp.

Also in .NET the timestamp is always there by default. You cannot remove it. 
This is not the case with Java where you may specify if it is there or not.

Hope this helps.

[1] - http://wiki.apache.org/ws/FrontPage/WsFx/wss4jFAQ#time
[2] - http://msdn.microsoft.com/en-us/library/ms824668.aspx

--
José Ferreiro
EPFL Communication Systems engineer
ing.sys.com.dipl.EPFL



Reply via email to