You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by al...@apache.org on 2017/05/16 18:17:46 UTC

nifi git commit: NIFI-3906 Added formatting to tables.

Repository: nifi
Updated Branches:
  refs/heads/master 77a676bf9 -> f5f6cab64


NIFI-3906 Added formatting to tables.

Signed-off-by: Andy LoPresto <al...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/f5f6cab6
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/f5f6cab6
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/f5f6cab6

Branch: refs/heads/master
Commit: f5f6cab64681c16664a71e8c1374f8e9c34d4931
Parents: 77a676b
Author: Scott Aslan <sc...@gmail.com>
Authored: Tue May 16 10:31:30 2017 -0700
Committer: Andy LoPresto <al...@apache.org>
Committed: Tue May 16 11:17:29 2017 -0700

----------------------------------------------------------------------
 .../propertytable/jquery.propertytable.js       |   9 +-
 .../components/nf-ng-processor-component.js     |   3 +-
 .../webapp/js/nf/canvas/nf-component-state.js   |   9 +-
 .../js/nf/canvas/nf-controller-services.js      |  24 ++-
 .../webapp/js/nf/canvas/nf-policy-management.js |   2 +-
 .../webapp/js/nf/canvas/nf-queue-listing.js     |  12 +-
 .../src/main/webapp/js/nf/canvas/nf-settings.js |   7 +-
 .../webapp/js/nf/cluster/nf-cluster-table.js    | 164 +++++++++++++++----
 .../webapp/js/nf/counters/nf-counters-table.js  |   9 +-
 .../src/main/webapp/js/nf/nf-common.js          |  18 +-
 .../js/nf/provenance/nf-provenance-table.js     |  18 +-
 .../webapp/js/nf/summary/nf-summary-table.js    | 133 ++++++++++++---
 .../js/nf/templates/nf-templates-table.js       |   8 +-
 .../main/webapp/js/nf/users/nf-users-table.js   |   8 +-
 14 files changed, 328 insertions(+), 96 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/jquery/propertytable/jquery.propertytable.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/jquery/propertytable/jquery.propertytable.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/jquery/propertytable/jquery.propertytable.js
index 6ee9a2f..7c27b3d 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/jquery/propertytable/jquery.propertytable.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/jquery/propertytable/jquery.propertytable.js
@@ -1289,7 +1289,14 @@
 
             return markup;
         };
-        propertyColumns.push({id: "actions", name: "&nbsp;", minWidth: 20, width: 20, formatter: actionFormatter});
+        propertyColumns.push(
+            {
+                id: "actions",
+                name: "&nbsp;",
+                minWidth: 20,
+                width: 20,
+                formatter: actionFormatter
+            });
 
         var propertyConfigurationOptions = {
             forceFitColumns: true,

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/header/components/nf-ng-processor-component.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/header/components/nf-ng-processor-component.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/header/components/nf-ng-processor-component.js
index bb42ee7..c9f80f3 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/header/components/nf-ng-processor-component.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/header/components/nf-ng-processor-component.js
@@ -329,7 +329,8 @@
                                 name: 'Tags',
                                 field: 'tags',
                                 sortable: true,
-                                resizable: true
+                                resizable: true,
+                                formatter: nfCommon.genericValueFormatter
                             }
                         ];
 

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-component-state.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-component-state.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-component-state.js
index ae9ebdc..8fb73a8 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-component-state.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-component-state.js
@@ -298,14 +298,16 @@
                     field: 'key',
                     name: 'Key',
                     sortable: true,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 },
                 {
                     id: 'value',
                     field: 'value',
                     name: 'Value',
                     sortable: true,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 }
             ];
 
@@ -316,7 +318,8 @@
                     field: 'scope',
                     name: 'Scope',
                     sortable: true,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 });
             }
 

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-controller-services.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-controller-services.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-controller-services.js
index 3c9726f..ef98d38 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-controller-services.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-controller-services.js
@@ -361,7 +361,8 @@
                 name: 'Tags',
                 field: 'tags',
                 sortable: true,
-                resizable: true
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
             }
         ];
 
@@ -624,10 +625,10 @@
      */
     var nameFormatter = function (row, cell, value, columnDef, dataContext) {
         if (!dataContext.permissions.canRead) {
-            return '<span class="blank">' + dataContext.id + '</span>';
+            return '<span class="blank">' + nfCommon.escapeHtml(dataContext.id) + '</span>';
         }
         
-        return dataContext.component.name;
+        return nfCommon.escapeHtml(dataContext.component.name);
     };
 
     /**
@@ -652,9 +653,9 @@
                 var selectedData = selection.datum();
                 if (selectedData.id === dataContext.component.parentGroupId) {
                     if (selectedData.permissions.canRead) {
-                        return selectedData.component.name;
+                        return nfCommon.escapeHtml(selectedData.component.name);
                     } else {
-                        return selectedData.id;
+                        return nfCommon.escapeHtml(selectedData.id);
                     }
                 }
             }
@@ -670,7 +671,7 @@
                 }
             });
 
-            return processGroupLabel;
+            return nfCommon.escapeHtml(processGroupLabel);
         } else {
             return 'Controller';
         }
@@ -938,7 +939,16 @@
         ];
 
         // action column should always be last
-        controllerServicesColumns.push({id: 'actions', name: '&nbsp;', resizable: false, formatter: controllerServiceActionFormatter, sortable: false, width: 90, maxWidth: 90});
+        controllerServicesColumns.push(
+            {
+                id: 'actions',
+                name: '&nbsp;',
+                resizable: false,
+                formatter: controllerServiceActionFormatter,
+                sortable: false,
+                width: 90,
+                maxWidth: 90
+            });
 
         // initialize the dataview
         var controllerServicesData = new Slick.Data.DataView({

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-policy-management.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-policy-management.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-policy-management.js
index 93cb920..c4c3cd8 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-policy-management.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-policy-management.js
@@ -540,7 +540,7 @@
                 markup += '<div class="fa fa-users" style="margin-right: 5px;"></div>';
             }
 
-            markup += dataContext.component.identity;
+            markup += nfCommon.escapeHtml(dataContext.component.identity);
 
             return markup;
         };

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-queue-listing.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-queue-listing.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-queue-listing.js
index 98632dc..b9714ef 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-queue-listing.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-queue-listing.js
@@ -534,21 +534,24 @@
                     sortable: false,
                     resizable: false,
                     width: 75,
-                    maxWidth: 75
+                    maxWidth: 75,
+                    formatter: nfCommon.genericValueFormatter
                 },
                 {
                     id: 'uuid',
                     name: 'UUID',
                     field: 'uuid',
                     sortable: false,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 },
                 {
                     id: 'filename',
                     name: 'Filename',
                     field: 'filename',
                     sortable: false,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 },
                 {
                     id: 'size',
@@ -594,7 +597,8 @@
                     name: 'Node',
                     field: 'clusterNodeAddress',
                     sortable: false,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 });
             }
 

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-settings.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-settings.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-settings.js
index 2574cbd..075f712 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-settings.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-settings.js
@@ -229,10 +229,10 @@
      */
     var nameFormatter = function (row, cell, value, columnDef, dataContext) {
         if (!dataContext.permissions.canRead) {
-            return '<span class="blank">' + dataContext.id + '</span>';
+            return '<span class="blank">' + nfCommon.escapeHtml(dataContext.id) + '</span>';
         }
 
-        return dataContext.component.name;
+        return nfCommon.escapeHtml(dataContext.component.name);
     };
 
     /**
@@ -508,7 +508,8 @@
                 name: 'Tags',
                 field: 'tags',
                 sortable: true,
-                resizable: true
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
             }
         ];
 

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster-table.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster-table.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster-table.js
index cb4ed60..0192b49 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster-table.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster-table.js
@@ -134,7 +134,14 @@
         tabContentId: 'cluster-system-tab-content',
         tableId: 'cluster-system-table',
         tableColumnModel: [
-            {id: 'node', field: 'node', name: 'Node Address', sortable: true, resizable: true},
+            {
+                id: 'node',
+                field: 'node',
+                name: 'Node Address',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
             {
                 id: 'processors',
                 field: 'processors',
@@ -142,7 +149,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'processorLoadAverage',
@@ -151,7 +159,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'totalThreads',
@@ -160,7 +169,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'daemonThreads',
@@ -169,7 +179,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             }
         ],
         tableIdColumn: 'id',
@@ -195,7 +206,14 @@
         tabContentId: 'cluster-flowfile-tab-content',
         tableId: 'cluster-flowfile-table',
         tableColumnModel: [
-            {id: 'node', field: 'node', name: 'Node Address', sortable: true, resizable: true},
+            {
+                id: 'node',
+                field: 'node',
+                name: 'Node Address',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
             {
                 id: 'ffRepoTotal',
                 field: 'ffRepoTotal',
@@ -203,7 +221,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'ffRepoUsed',
@@ -212,7 +231,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'ffRepoFree',
@@ -221,7 +241,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'ffStoreUtil',
@@ -230,7 +251,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             }
         ],
         tableIdColumn: 'id',
@@ -256,8 +278,22 @@
         tabContentId: 'cluster-content-tab-content',
         tableId: 'cluster-content-table',
         tableColumnModel: [
-            {id: 'node', field: 'node', name: 'Node Address', sortable: true, resizable: true},
-            {id: 'contentRepoId', field: 'contentRepoId', name: 'Content Repository', sortable: true, resizable: true},
+            {
+                id: 'node',
+                field: 'node',
+                name: 'Node Address',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
+            {
+                id: 'contentRepoId',
+                field: 'contentRepoId',
+                name: 'Content Repository',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
             {
                 id: 'contentRepoTotal',
                 field: 'contentRepoTotal',
@@ -265,7 +301,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'contentRepoUsed',
@@ -274,7 +311,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'contentRepoFree',
@@ -283,7 +321,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'contentRepoUtil',
@@ -292,7 +331,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             }
         ],
         tableIdColumn: 'id',
@@ -321,13 +361,62 @@
         tabContentId: 'cluster-version-tab-content',
         tableId: 'cluster-version-table',
         tableColumnModel: [
-            {id: 'node', field: 'node', name: 'Node Address', sortable: true, resizable: true},
-            {id: 'version', field: 'version', name: 'NiFi Version', sortable: true, resizable: true},
-            {id: 'javavendor', field: 'javaVendor', name: 'Java Vendor', sortable: true, resizable: true},
-            {id: 'javaversion', field: 'javaVersion', name: 'Java Version', sortable: true, resizable: true},
-            {id: 'osname', field: 'osName', name: 'OS Name', sortable: true, resizable: true},
-            {id: 'osversion', field: 'osVersion', name: 'OS Version', sortable: true, resizable: true},
-            {id: 'osarch', field: 'osArchitecture', name: 'OS Architecture', sortable: true, resizable: true}
+            {
+                id: 'node',
+                field: 'node',
+                name: 'Node Address',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
+            {
+                id: 'version',
+                field: 'version',
+                name: 'NiFi Version',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
+            {
+                id: 'javavendor',
+                field: 'javaVendor',
+                name: 'Java Vendor',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
+            {
+                id: 'javaversion',
+                field: 'javaVersion',
+                name: 'Java Version',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
+            {
+                id: 'osname',
+                field: 'osName',
+                name: 'OS Name',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
+            {
+                id: 'osversion',
+                field: 'osVersion',
+                name: 'OS Version',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
+            {
+                id: 'osarch',
+                field: 'osArchitecture',
+                name: 'OS Architecture',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            }
         ],
         tableIdColumn: 'id',
         tableOptions: commonTableOptions,
@@ -413,7 +502,8 @@
                 name: 'Active Thread Count',
                 resizable: true,
                 sortable: true,
-                defaultSortAsc: false
+                defaultSortAsc: false,
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'queued',
@@ -421,7 +511,8 @@
                 name: '<span class="queued-title">Queue</span>&nbsp;/&nbsp;<span class="queued-size-title">Size</span>',
                 resizable: true,
                 sortable: true,
-                defaultSortAsc: false
+                defaultSortAsc: false,
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'status',
@@ -540,7 +631,8 @@
                 field: 'node',
                 name: 'Node Address',
                 sortable: true,
-                resizable: true
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'heapMax',
@@ -549,7 +641,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'heapTotal',
@@ -558,7 +651,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'heapUsed',
@@ -567,7 +661,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'heapUtilPct',
@@ -576,7 +671,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'nonHeapTotal',
@@ -594,7 +690,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             },
             {
                 id: 'gc',
@@ -612,7 +709,8 @@
                 sortable: true,
                 resizable: true,
                 cssClass: 'cell-right',
-                headerCssClass: 'header-right'
+                headerCssClass: 'header-right',
+                formatter: nfCommon.genericValueFormatter
             }
         ];
     }
@@ -717,7 +815,7 @@
         if (node.roles.includes(config.clusterCoordinator)) {
             markup += ', COORDINATOR';
         }
-        return markup;
+        return nfCommon.escapeHtml(markup);
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/counters/nf-counters-table.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/counters/nf-counters-table.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/counters/nf-counters-table.js
index 8cd04c7..b76b4df 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/counters/nf-counters-table.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/counters/nf-counters-table.js
@@ -178,14 +178,16 @@
                     name: 'Context',
                     field: 'context',
                     sortable: true,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 },
                 {
                     id: 'name',
                     name: 'Name',
                     field: 'name',
                     sortable: true,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 },
                 {
                     id: 'value',
@@ -193,7 +195,8 @@
                     field: 'value',
                     sortable: true,
                     resizable: true,
-                    defaultSortAsc: false
+                    defaultSortAsc: false,
+                    formatter: nfCommon.genericValueFormatter
                 }
             ];
 

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-common.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-common.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-common.js
index 52a50f6..5afe253 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-common.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-common.js
@@ -329,6 +329,20 @@
         },
 
         /**
+         * Escapes any malicious HTML characters from the value.
+         *
+         * @param row
+         * @param cell
+         * @param value
+         * @param columnDef
+         * @param dataContext
+         * @returns {string}
+         */
+        genericValueFormatter: function (row, cell, value, columnDef, dataContext) {
+            return nfCommon.escapeHtml(value);
+        },
+
+        /**
          * Formats the bundle of a component type for the new instance dialog.
          *
          * @param row
@@ -1184,11 +1198,11 @@
             while (regex.test(string)) {
                 string = string.replace(regex, '$1' + ',' + '$2');
             }
-            return string;
+            return nfCommon.escapeHtml(string);
         },
 
         /**
-         * Formats the specified float using two demical places.
+         * Formats the specified float using two decimal places.
          *
          * @param {float} f
          */

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-table.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-table.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-table.js
index 1ae4c1d..1076cca 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-table.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-table.js
@@ -664,21 +664,24 @@
                     field: 'eventTime',
                     sortable: true,
                     defaultSortAsc: false,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 },
                 {
                     id: 'eventType',
                     name: 'Type',
                     field: 'eventType',
                     sortable: true,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 },
                 {
                     id: 'flowFileUuid',
                     name: 'FlowFile Uuid',
                     field: 'flowFileUuid',
                     sortable: true,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 },
                 {
                     id: 'fileSize',
@@ -686,7 +689,8 @@
                     field: 'fileSize',
                     sortable: true,
                     defaultSortAsc: false,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 },
                 {
                     id: 'componentName',
@@ -701,7 +705,8 @@
                     name: 'Component Type',
                     field: 'componentType',
                     sortable: true,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 }
             ];
 
@@ -712,7 +717,8 @@
                     name: 'Node',
                     field: 'clusterNodeAddress',
                     sortable: true,
-                    resizable: true
+                    resizable: true,
+                    formatter: nfCommon.genericValueFormatter
                 });
             }
 

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary-table.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary-table.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary-table.js
index 4f83691..92b622b 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary-table.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary-table.js
@@ -278,12 +278,12 @@
 
         // formatter for io
         var ioFormatter = function (row, cell, value, columnDef, dataContext) {
-            return dataContext.read + ' / ' + dataContext.written;
+            return nfCommon.escapeHtml(dataContext.read) + ' / ' + nfCommon.escapeHtml(dataContext.written);
         };
 
         // formatter for tasks
         var taskTimeFormatter = function (row, cell, value, columnDef, dataContext) {
-            return nfCommon.formatInteger(dataContext.tasks) + ' / ' + dataContext.tasksDuration;
+            return nfCommon.formatInteger(dataContext.tasks) + ' / ' + nfCommon.escapeHtml(dataContext.tasksDuration);
         };
 
         // function for formatting the last accessed time
@@ -295,7 +295,7 @@
         var runStatusFormatter = function (row, cell, value, columnDef, dataContext) {
             var activeThreadCount = '';
             if (nfCommon.isDefinedAndNotNull(dataContext.activeThreadCount) && dataContext.activeThreadCount > 0) {
-                activeThreadCount = '(' + dataContext.activeThreadCount + ')';
+                activeThreadCount = '(' + nfCommon.escapeHtml(dataContext.activeThreadCount) + ')';
             }
             var classes = nfCommon.escapeHtml(value.toLowerCase());
             switch (nfCommon.escapeHtml(value.toLowerCase())) {
@@ -322,7 +322,14 @@
         };
 
         // define the input, read, written, and output columns (reused between both tables)
-        var nameColumn = {id: 'name', field: 'name', name: 'Name', sortable: true, resizable: true};
+        var nameColumn = {
+            id: 'name',
+            field: 'name',
+            name: 'Name',
+            sortable: true,
+            resizable: true,
+            formatter: nfCommon.genericValueFormatter
+        };
         var runStatusColumn = {
             id: 'runStatus',
             field: 'runStatus',
@@ -337,7 +344,8 @@
             toolTip: 'Count / data size in the last 5 min',
             sortable: true,
             defaultSortAsc: false,
-            resizable: true
+            resizable: true,
+            formatter: nfCommon.genericValueFormatter
         };
         var ioColumn = {
             id: 'io',
@@ -356,7 +364,8 @@
             toolTip: 'Count / data size in the last 5 min',
             sortable: true,
             defaultSortAsc: false,
-            resizable: true
+            resizable: true,
+            formatter: nfCommon.genericValueFormatter
         };
         var tasksTimeColumn = {
             id: 'tasks',
@@ -383,7 +392,14 @@
                 toolTip: 'Sorts based on presence of bulletins'
             },
             nameColumn,
-            {id: 'type', field: 'type', name: 'Type', sortable: true, resizable: true},
+            {
+                id: 'type',
+                field: 'type',
+                name: 'Type',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
             runStatusColumn,
             inputColumn,
             ioColumn,
@@ -583,7 +599,14 @@
 
         // initialize the cluster processor column model
         var clusterProcessorsColumnModel = [
-            {id: 'node', field: 'node', name: 'Node', sortable: true, resizable: true},
+            {
+                id: 'node',
+                field: 'node',
+                name: 'Node',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
             runStatusColumn,
             inputColumn,
             ioColumn,
@@ -653,7 +676,7 @@
             if (nfCommon.isDefinedAndNotNull(dataContext.percentUseBytes)) {
                 percentUseBytes = dataContext.percentUseBytes + '%';
             }
-            return percentUseCount + ' / ' + percentUseBytes;
+            return nfCommon.escapeHtml(percentUseCount) + ' / ' + nfCommon.escapeHtml(percentUseBytes);
         };
 
         // define the input, read, written, and output columns (reused between both tables)
@@ -663,7 +686,8 @@
             name: '<span class="queued-title">Queue</span>&nbsp;/&nbsp;<span class="queued-size-title">Size</span>',
             sortable: true,
             defaultSortAsc: false,
-            resize: true
+            resize: true,
+            formatter: nfCommon.genericValueFormatter
         };
 
         // define the backpressure column (reused between both tables)
@@ -688,14 +712,29 @@
                 width: 50,
                 maxWidth: 50
             },
-            {id: 'sourceName', field: 'sourceName', name: 'Source Name', sortable: true, resizable: true},
-            {id: 'name', field: 'name', name: 'Name', sortable: true, resizable: true, formatter: valueFormatter},
+            {
+                id: 'sourceName',
+                field: 'sourceName',
+                name: 'Source Name',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
+            {
+                id: 'name',
+                field: 'name',
+                name: 'Name',
+                sortable: true,
+                resizable: true,
+                formatter: valueFormatter
+            },
             {
                 id: 'destinationName',
                 field: 'destinationName',
                 name: 'Destination Name',
                 sortable: true,
-                resizable: true
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
             },
             inputColumn,
             queueColumn,
@@ -864,7 +903,14 @@
 
         // initialize the cluster processor column model
         var clusterConnectionsColumnModel = [
-            {id: 'node', field: 'node', name: 'Node', sortable: true, resizable: true},
+            {
+                id: 'node',
+                field: 'node',
+                name: 'Node',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
             inputColumn,
             queueColumn,
             backpressureColumn,
@@ -949,7 +995,8 @@
             toolTip: 'Count / data size transferred to and from connections in the last 5 min',
             resizable: true,
             defaultSortAsc: false,
-            sortable: true
+            sortable: true,
+            formatter: nfCommon.genericValueFormatter
         };
         var sentColumn = {
             id: 'sent',
@@ -958,7 +1005,8 @@
             toolTip: 'Count / data size in the last 5 min',
             sortable: true,
             defaultSortAsc: false,
-            resizable: true
+            resizable: true,
+            formatter: nfCommon.genericValueFormatter
         };
         var receivedColumn = {
             id: 'received',
@@ -967,13 +1015,21 @@
             toolTip: 'Count / data size in the last 5 min',
             sortable: true,
             defaultSortAsc: false,
-            resizable: true
+            resizable: true,
+            formatter: nfCommon.genericValueFormatter
         };
 
         // define the column model for the summary table
         var processGroupsColumnModel = [
             moreDetailsColumn,
-            {id: 'name', field: 'name', name: 'Name', sortable: true, resizable: true, formatter: valueFormatter},
+            {
+                id: 'name',
+                field: 'name',
+                name: 'Name',
+                sortable: true,
+                resizable: true,
+                formatter: valueFormatter
+            },
             transferredColumn,
             inputColumn,
             ioColumn,
@@ -1170,7 +1226,14 @@
 
         // initialize the cluster process groups column model
         var clusterProcessGroupsColumnModel = [
-            {id: 'node', field: 'node', name: 'Node', sortable: true, resizable: true},
+            {
+                id: 'node',
+                field: 'node',
+                name: 'Node',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
             transferredColumn,
             inputColumn,
             ioColumn,
@@ -1414,7 +1477,14 @@
 
         // initialize the cluster input port column model
         var clusterInputPortsColumnModel = [
-            {id: 'node', field: 'node', name: 'Node', sortable: true, resizable: true},
+            {
+                id: 'node',
+                field: 'node',
+                name: 'Node',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
             runStatusColumn,
             outputColumn
         ];
@@ -1654,7 +1724,14 @@
 
         // initialize the cluster output port column model
         var clusterOutputPortsColumnModel = [
-            {id: 'node', field: 'node', name: 'Node', sortable: true, resizable: true},
+            {
+                id: 'node',
+                field: 'node',
+                name: 'Node',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
             runStatusColumn,
             inputColumn
         ];
@@ -1711,7 +1788,7 @@
         var transmissionStatusFormatter = function (row, cell, value, columnDef, dataContext) {
             var activeThreadCount = '';
             if (nfCommon.isDefinedAndNotNull(dataContext.activeThreadCount) && dataContext.activeThreadCount > 0) {
-                activeThreadCount = '(' + dataContext.activeThreadCount + ')';
+                activeThreadCount = '(' + nfCommon.escapeHtml(dataContext.activeThreadCount) + ')';
             }
 
             // determine what to put in the mark up
@@ -1743,7 +1820,8 @@
             field: 'targetUri',
             name: 'Target URI',
             sortable: true,
-            resizable: true
+            resizable: true,
+            formatter: nfCommon.genericValueFormatter
         };
 
         // define the column model for the summary table
@@ -1951,7 +2029,14 @@
 
         // initialize the cluster remote process group column model
         var clusterRemoteProcessGroupsColumnModel = [
-            {id: 'node', field: 'node', name: 'Node', sortable: true, resizable: true},
+            {
+                id: 'node',
+                field: 'node',
+                name: 'Node',
+                sortable: true,
+                resizable: true,
+                formatter: nfCommon.genericValueFormatter
+            },
             targetUriColumn,
             transmissionStatusColumn,
             sentColumn,

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/templates/nf-templates-table.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/templates/nf-templates-table.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/templates/nf-templates-table.js
index 8c5e4de..c942bdb 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/templates/nf-templates-table.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/templates/nf-templates-table.js
@@ -251,15 +251,15 @@
                     return '';
                 }
 
-                return dataContext.template.timestamp;
+                return nfCommon.escapeHtml(dataContext.template.timestamp);
             };
 
             var nameFormatter = function (row, cell, value, columnDef, dataContext) {
                 if (!dataContext.permissions.canRead) {
-                    return '<span class="blank">' + dataContext.id + '</span>';
+                    return '<span class="blank">' + nfCommon.escapeHtml(dataContext.id) + '</span>';
                 }
 
-                return dataContext.template.name;
+                return nfCommon.escapeHtml(dataContext.template.name);
             };
 
             var descriptionFormatter = function (row, cell, value, columnDef, dataContext) {
@@ -275,7 +275,7 @@
                     return '';
                 }
 
-                return dataContext.template.groupId;
+                return nfCommon.escapeHtml(dataContext.template.groupId);
             };
 
             // function for formatting the actions column

http://git-wip-us.apache.org/repos/asf/nifi/blob/f5f6cab6/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/users/nf-users-table.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/users/nf-users-table.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/users/nf-users-table.js
index 73a8125..503be42 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/users/nf-users-table.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/users/nf-users-table.js
@@ -598,7 +598,7 @@
                 // not a global policy... check if user has access to the component reference
                 return componentResourceParser(dataContext);
             } else {
-                return '<span class="unset">' + dataContext.id + '</span>';
+                return '<span class="unset">' + nfCommon.escapeHtml(dataContext.id) + '</span>';
             }
         };
 
@@ -774,7 +774,7 @@
                 markup += '<div class="fa fa-users" style="margin-right: 5px;"></div>';
             }
 
-            markup += dataContext.component.identity;
+            markup += nfCommon.escapeHtml(dataContext.component.identity);
 
             return markup;
         };
@@ -783,11 +783,11 @@
         var membersGroupsFormatter = function (row, cell, value, columnDef, dataContext) {
             if (dataContext.type === 'group') {
                 return 'Members: <b>' + dataContext.component.users.map(function (user) {
-                        return user.component.identity;
+                        return nfCommon.escapeHtml(user.component.identity);
                     }).join('</b>, <b>') + '</b>';
             } else {
                 return 'Member of: <b>' + dataContext.component.userGroups.map(function (group) {
-                        return group.component.identity;
+                        return nfCommon.escapeHtml(group.component.identity);
                     }).join('</b>, <b>') + '</b>';
             }
         };