[gatein-commits] gatein SVN: r4657 - components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/handlers.

do-not-reply at jboss.org do-not-reply at jboss.org
Wed Oct 13 14:33:14 EDT 2010


Author: chris.laprun at jboss.com
Date: 2010-10-13 14:33:13 -0400 (Wed, 13 Oct 2010)
New Revision: 4657

Modified:
   components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/handlers/NavigationalStateUpdatingHandler.java
Log:
- GTNWSRP-49: If there was an exception un-/marshalling the payload, just ignore that particular event but log the exception.

Modified: components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/handlers/NavigationalStateUpdatingHandler.java
===================================================================
--- components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/handlers/NavigationalStateUpdatingHandler.java	2010-10-13 17:47:28 UTC (rev 4656)
+++ components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/handlers/NavigationalStateUpdatingHandler.java	2010-10-13 18:33:13 UTC (rev 4657)
@@ -39,6 +39,7 @@
 import org.oasis.wsrp.v2.PortletContext;
 import org.oasis.wsrp.v2.UpdateResponse;
 
+import java.io.Serializable;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
@@ -97,7 +98,20 @@
          for (Event event : events)
          {
             EventInfo eventInfo = consumer.getProducerInfo().getInfoForEvent(event.getName());
-            result.queueEvent(new UpdateNavigationalStateResponse.Event(event.getName(), PayloadUtils.getPayloadAsSerializable(event, eventInfo)));
+            Serializable payloadAsSerializable = null;
+            try
+            {
+               payloadAsSerializable = PayloadUtils.getPayloadAsSerializable(event, eventInfo);
+            }
+            catch (Exception e)
+            {
+               log.info("Couldn't handle payload for event " + event.getName() + ". Will ignore it.", e);
+            }
+
+            if (payloadAsSerializable != null)
+            {
+               result.queueEvent(new UpdateNavigationalStateResponse.Event(event.getName(), payloadAsSerializable));
+            }
          }
       }
 



More information about the gatein-commits mailing list