Ich habe eine Spring Boot Webservice (Provider) -Anwendung erstellt. Ich gebe eine Zeitwarte-Option in Anfrage. Wenn der Wert von timewait = n ist, muss ich die Antwort so programmieren, dass sie um so viel Zeit verzögert wird, dh n Sekunden/Millisekunden. Kann ich das irgendwie machen? XSD unten angegeben:Spring Boot - Hinzufügen Verzögerung zu SOAP Antwort angezeigt werden
<xs:element name="asyncServerRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="header" type="xs:string"/>
<xs:element name="BSID" type="xs:string"></xs:element>
<xs:element name="encodedString" type="xs:string"></xs:element>
<xs:element name="timewait" type="xs:int"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="asyncServerResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="responsecode" type="xs:int"/>
<xs:element name="reponsemessage" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Ja. Ich habe den Thread.sleep() Weg verwendet, um dies zu tun. Funktioniert perfekt. Vielen Dank. – Anirban
Es gibt eine schlechte Seite dieser Technik. Jemand könnte beginnen, Ihnen viele Anfragen zu senden -> alle Ihre Threads in tomcat/jetty threadpool geht schlafen -> Server ist ausgefallen. Es ist also wahrscheinlich eine gute Idee, in einem separaten Threadpool zu schlafen. –
@ vadim_shb, guter Gedanke –