xlawrence 2004/12/22 17:00:35 CET
Modified files:
src/java/org/jahia/suite/calendar/framework/jms
JMSTransportSender.java
src/java/org/jahia/suite/calendar/syncClients
SyncClientFrame.java
Revision Changes Path
1.4 +24 -5
uwcal_JSR168/src/java/org/jahia/suite/calendar/framework/jms/JMSTransportSender.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/uwcal_JSR168/src/java/org/jahia/suite/calendar/framework/jms/JMSTransportSender.java.diff?r1=1.3&r2=1.4&f=h
1.11 +2 -2
uwcal_JSR168/src/java/org/jahia/suite/calendar/syncClients/SyncClientFrame.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/uwcal_JSR168/src/java/org/jahia/suite/calendar/syncClients/SyncClientFrame.java.diff?r1=1.10&r2=1.11&f=h
Index: JMSTransportSender.java
===================================================================
RCS file:
/home/cvs/repository/uwcal_JSR168/src/java/org/jahia/suite/calendar/framework/jms/JMSTransportSender.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- JMSTransportSender.java 23 Nov 2004 10:30:17 -0000 1.3
+++ JMSTransportSender.java 22 Dec 2004 16:00:35 -0000 1.4
@@ -54,6 +54,9 @@
*/
public class JMSTransportSender implements TransportSender {
+ // Timeout in seconds
+ public static final long TIMEOUT = 30;
+
// log4j logger
private Logger log = Logger.getLogger(JMSTransportSender.class);
@@ -89,21 +92,37 @@
* @see TransportSender
*/
public Response sendAndGetResponse(Request req) throws
TransportException {
+ javax.jms.QueueReceiver receiver = null;
+ javax.jms.TemporaryQueue tempQ = null;
try {
- javax.jms.TemporaryQueue tempQ = qSession.createTemporaryQueue();
+ tempQ = qSession.createTemporaryQueue();
// Transform the Message into a JMS Message Object
javax.jms.ObjectMessage jmsMsg =
qSession.createObjectMessage(req);
jmsMsg.setJMSReplyTo(tempQ);
log.debug("Request ID: "+req.getID());
sender.send(jmsMsg);
- javax.jms.QueueReceiver receiver =
qSession.createReceiver(tempQ);
- jmsMsg = (javax.jms.ObjectMessage)receiver.receive();
+ receiver = qSession.createReceiver(tempQ);
+ jmsMsg = (javax.jms.ObjectMessage)receiver.receive(TIMEOUT *
1000);
+
+ if (jmsMsg == null) {
+ throw new TransportException(
+ "Timeout Exception: No answer received after waiting for
"+TIMEOUT+
+ " seconds !");
+ }
+
Response resp = (Response)jmsMsg.getObject();
- receiver.close();
- tempQ.delete();
+
return resp;
+
} catch (Exception e) {
+ e.printStackTrace();
throw new TransportException(e.getMessage(), e);
+
+ } finally {
+ try {
+ receiver.close();
+ tempQ.delete();
+ } catch (Exception e) {}
}
}
Index: SyncClientFrame.java
===================================================================
RCS file:
/home/cvs/repository/uwcal_JSR168/src/java/org/jahia/suite/calendar/syncClients/SyncClientFrame.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- SyncClientFrame.java 20 Dec 2004 14:44:24 -0000 1.10
+++ SyncClientFrame.java 22 Dec 2004 16:00:35 -0000 1.11
@@ -722,13 +722,13 @@
log("\nSynchronization FAILED !");
} catch (ParserException e) {
- final String msg = "The file you specified is not in the correct
format !";
+ final String msg = "The data is not in the correct format !";
showError(msg);
log("Error: "+ msg);
log("\nSynchronization FAILED !");
} catch (ValidationException e) {
- final String msg = "The file you specified is not valid (not
iCalendar compliant) !";
+ final String msg = "The data is not valid (not iCalendar
compliant) !";
showError(msg);
log("Error: "+ msg);
log("\nSynchronization FAILED !");