diff --git a/helper/ccnx-interest-sender-helper.cc b/helper/ccnx-interest-sender-helper.cc
index ca0b9f0..c182207 100644
--- a/helper/ccnx-interest-sender-helper.cc
+++ b/helper/ccnx-interest-sender-helper.cc
@@ -40,20 +40,20 @@
 }
     
 ApplicationContainer
-CcnxInterestSenderHelper::Install (Ptr<Node> node) const
+CcnxInterestSenderHelper::Install (Ptr<Node> node)
 {
     return ApplicationContainer (InstallPriv (node));
 }
     
 ApplicationContainer
-CcnxInterestSenderHelper::Install (std::string nodeName) const
+CcnxInterestSenderHelper::Install (std::string nodeName)
 {
     Ptr<Node> node = Names::Find<Node> (nodeName);
     return ApplicationContainer (InstallPriv (node));
 }
     
 ApplicationContainer
-CcnxInterestSenderHelper::Install (NodeContainer c) const
+CcnxInterestSenderHelper::Install (NodeContainer c)
 {
     ApplicationContainer apps;
     for (NodeContainer::Iterator i = c.Begin (); i != c.End (); ++i)
@@ -65,8 +65,13 @@
 }
     
 Ptr<Application>
-CcnxInterestSenderHelper::InstallPriv (Ptr<Node> node) const
+CcnxInterestSenderHelper::InstallPriv (Ptr<Node> node)
 {
+    Ptr<CcnxLocalFace> localFace = Create<CcnxLocalFace> ();
+    localFace->SetNode(node);
+    localFace->SetUp();
+    m_factory.Set ("Face", PointerValue (localFace));
+    
     Ptr<Application> app = m_factory.Create<Application> ();
     node->AddApplication (app);
         
