diff --git a/source/RobotAPI/gui-plugins/SensorActorWidgetsPlugin/ArmarXPlotter/ArmarXPlotter.cpp b/source/RobotAPI/gui-plugins/SensorActorWidgetsPlugin/ArmarXPlotter/ArmarXPlotter.cpp
index cd6bd78ce1b06629e99aed0a134c4137a13f8046..a89bab1bda53570e659149eabf38c94cd6a9286b 100644
--- a/source/RobotAPI/gui-plugins/SensorActorWidgetsPlugin/ArmarXPlotter/ArmarXPlotter.cpp
+++ b/source/RobotAPI/gui-plugins/SensorActorWidgetsPlugin/ArmarXPlotter/ArmarXPlotter.cpp
@@ -545,46 +545,51 @@ namespace armarx
 
             for (int i = 0; i < selectedChannels.size(); i++)
             {
-                ARMARX_VERBOSE << "Channel: " << selectedChannels.at(i).toStdString() << flush;
-                DataFieldIdentifierPtr identifier = new DataFieldIdentifier(selectedChannels.at(i).toStdString());
-                auto prx = getProxy<ObserverInterfacePrx>(identifier->observerName);
-
-                VariantPtr var = VariantPtr::dynamicCast(prx->getDataField(identifier));
-
-                if (VariantType::IsBasicType(var->getType()))
+                try
                 {
-                    QwtPlotCurve* curve = createCurve(selectedChannels.at(i));
-                    curves[selectedChannels.at(i).toStdString()] = curve;
-
-                    QwtThermo* bar = createBar(selectedChannels.at(i));
-                    bars[selectedChannels.at(i).toStdString()] = bar;
+                    ARMARX_VERBOSE << "Channel: " << selectedChannels.at(i).toStdString() << flush;
+                    DataFieldIdentifierPtr identifier = new DataFieldIdentifier(selectedChannels.at(i).toStdString());
+                    auto prx = getProxy<ObserverInterfacePrx>(identifier->observerName);
 
+                    VariantPtr var = VariantPtr::dynamicCast(prx->getDataField(identifier));
 
-                }
-                else
-                {
-                    auto id = identifier->getIdentifierStr();
-                    ARMARX_IMPORTANT << id;
-                    auto dict = JSONObject::ConvertToBasicVariantMap(json, var);
+                    if (VariantType::IsBasicType(var->getType()))
+                    {
+                        QwtPlotCurve* curve = createCurve(selectedChannels.at(i));
+                        curves[selectedChannels.at(i).toStdString()] = curve;
 
-                    for (auto e : dict)
+                        QwtThermo* bar = createBar(selectedChannels.at(i));
+                        bars[selectedChannels.at(i).toStdString()] = bar;
+                    }
+                    else
                     {
-                        VariantTypeId type = e.second->getType();
+                        auto id = identifier->getIdentifierStr();
+                        ARMARX_IMPORTANT << id;
+                        auto dict = JSONObject::ConvertToBasicVariantMap(json, var);
 
-                        if (type == VariantType::Double
-                            || type == VariantType::Float
-                            || type == VariantType::Int)
+                        for (auto e : dict)
                         {
-                            std::string key = id + "." + e.first;
-                            ARMARX_INFO << key << ": " << *VariantPtr::dynamicCast(e.second);
-                            QwtPlotCurve* curve = createCurve(QString::fromStdString(key));
-                            curves[key] = curve;
+                            VariantTypeId type = e.second->getType();
+
+                            if (type == VariantType::Double
+                                    || type == VariantType::Float
+                                    || type == VariantType::Int)
+                            {
+                                std::string key = id + "." + e.first;
+                                ARMARX_INFO << key << ": " << *VariantPtr::dynamicCast(e.second);
+                                QwtPlotCurve* curve = createCurve(QString::fromStdString(key));
+                                curves[key] = curve;
 
-                            QwtThermo* bar = createBar(QString::fromStdString(key));
-                            bars[key] = bar;
+                                QwtThermo* bar = createBar(QString::fromStdString(key));
+                                bars[key] = bar;
+                            }
                         }
                     }
                 }
+                catch(...)
+                {
+                    handleExceptions();
+                }
             }
 
             ui.qwtPlot->replot();