You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@knox.apache.org by Lian Jiang <ji...@gmail.com> on 2018/06/11 23:56:56 UTC

accessing zeppelin via knox returns empty page

Hi,

I am using HDP2.6, knox, ranger, ldap. I can access zeppelin directly using
admin/admin as username/password. However, accessing zepplin via knox gets
200 status code but empty page.

Using curl, I found the responses (at the end) are the same for:

without knox:
curl -ik -H 'Cache-Control: no-cache' -u admin:"password"
http://test-namenode.subnet1.hadoop.oraclevcn.com:9995

with knox:
curl -ik -H 'Cache-Control: no-cache' -u admin:"password"
https://test-namenode.subnet1.hadoop.oraclevcn.com:8443/gateway/ui/zeppelin

Any idea why the browser does not show the login page? Appreciate any help!



Response:

HTTP/1.1 200 OK
Date: Mon, 11 Jun 2018 23:51:00 GMT
Date: Monday, June 11, 2018 11:51:00 PM GMT
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: authorization,Content-Type
Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, HEAD, DELETE
X-FRAME-OPTIONS: SAMEORIGIN
X-XSS-Protection: 1
Accept-Ranges: bytes
Content-Type: text/html
Last-Modified: Thu, 04 Jan 2018 10:59:02 GMT
Server: Jetty(9.2.15.v20160210)
Content-Length: 3783

<!doctype html><!--
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
--> <html ng-controller="MainCtrl" class="no-js"> <head> <meta
http-equiv="X-UA-Compatible" content="IE=edge"> <meta charset="utf-8">
<title></title> <!-- disable caches for all browser --> <meta
http-equiv="cache-control" content="max-age=0"> <meta
http-equiv="cache-control" content="no-cache"> <meta
http-equiv="cache-control" content="no-store"> <meta http-equiv="expires"
content="0"> <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00
GMT"> <meta http-equiv="pragma" content="no-cache"> <meta
name="description" content=""> <meta name="viewport"
content="width=device-width"> <!-- ACE CSS autocomplition issue workarounds
--> <style type="text/css">div.ace_editor.ace_autocomplete
.ace_marker-layer .ace_active-line { z-index: -1 !important; }</style> <!--
Place favicon.ico and apple-touch-icon.png in the root directory --> <link
rel="stylesheet"
href="/gateway/ui/zeppelin/styles/vendor.ead2f1215177b914.css"> <link
rel="stylesheet"
href="/gateway/ui/zeppelin/styles/main.5e840e18559d1996.css"> <link
rel="stylesheet"
ng-href="/gateway/ui/zeppelin/assets/styles/looknfeel/{{looknfeel}}.css">
<link rel="stylesheet"
href="/gateway/ui/zeppelin/assets/styles/printMode.css">  <body
ng-class="{'bodyAsIframe': asIframe}"> <!--[if lt IE 7]>
    <p class="browsehappy">You are using an <strong>outdated</strong>
browser. Please <a href="http://browsehappy.com/">upgrade your browser</a>
to improve your experience.</p>
    <![endif]--> <toast></toast> <div ng-include
src="'components/navbar/navbar.html?v=1515063488639'"></div> <!-- Add your
site or application content here --> <div id="main" class="container"> <div
ng-view></div> </div> <!-- Modal ::  Keyboard shortcuts --> <div ng-include
src="'components/modal-shortcut/modal-shortcut.html?v=1515063488639'"></div>
<div ng-controller="NotenameCtrl as notenamectrl"> <div
id="note-modal-container" ng-include
src="'components/noteName-create/note-name-dialog.html?v=1515063488639'"></div>
</div> <div ng-controller="NoteImportCtrl as noteimportctrl"> <div
id="note-import-container" ng-include
src="'components/noteName-import/note-import-dialog.html?v=1515063488639'"></div>
</div> <div ng-controller="LoginCtrl as noteimportctrl"> <div
id="login-container" ng-include
src="'components/login/login.html?v=1515063488639'"></div> </div> <div
ng-controller="RenameCtrl"> <div ng-include
src="'components/rename/rename.html?v=1515063488639'"></div> </div> <!--[if
lt IE 9]>
    <script src="scripts/oldieshim.8967257085f0b83a.js"></script>
    <![endif]--> <script type="text/x-mathjax-config">var config = {
        extensions: ["tex2jax.js"],
        jax: ["input/TeX", "output/HTML-CSS"],
        tex2jax: {
          inlineMath: [ ["\\(","\\)"] ],
          displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
          processEscapes: true
        },
        "HTML-CSS": { availableFonts: ["TeX"] },
        messageStyle: "none"
      }
      // add root only if it's not dev mode
      if (Number(location.port) !== 9000) {
        config.root = '.';
      }
      MathJax.Hub.Config(config);</script> <script
src="/gateway/ui/zeppelin/scripts/vendor.b8e51cdeeccd208d.js"></script>
<script type="text/javascript"
src="/gateway/ui/zeppelin/app.05bbdae750681c30f521.js"></script>

Re: accessing zeppelin via knox returns empty page

Posted by Lian Jiang <ji...@gmail.com>.
Thanks guys. Your suggestions worked!

On Mon, Jun 11, 2018 at 7:45 PM, Sandeep Moré <mo...@gmail.com> wrote:

> Also, can you try adding forward slash to your url, i.e.
> https://test-namenode.subnet1.hadoop.oraclevcn.com:
> 8443/gateway/ui/zeppelin/
>
> Best,
> Sandeep
>
>
> On Mon, Jun 11, 2018 at 9:32 PM larry mccay <lm...@apache.org> wrote:
>
>> Hi Lian -
>>
>> If the same response is coming back from curl going both direct and
>> through Knox then it seems that Knox proxying is working properly - at
>> least until that point.
>>
>> Have you looked at the javascript console in the browser to see whether
>> there are any errors?
>> In order for Zeppelin to work you will also need to proxy the websocket
>> connections - so make sure that you follow the docs [1] completely.
>>
>> Dev tools and the javascript console should provide you with some more
>> details hopefully.
>>
>> thanks,
>>
>> --larry
>>
>> 1. http://knox.apache.org/books/knox-1-0-0/user-guide.html#Zeppelin+UI
>>
>> On Mon, Jun 11, 2018 at 7:56 PM, Lian Jiang <ji...@gmail.com>
>> wrote:
>>
>>> Hi,
>>>
>>> I am using HDP2.6, knox, ranger, ldap. I can access zeppelin directly
>>> using admin/admin as username/password. However, accessing zepplin via knox
>>> gets 200 status code but empty page.
>>>
>>> Using curl, I found the responses (at the end) are the same for:
>>>
>>> without knox:
>>> curl -ik -H 'Cache-Control: no-cache' -u admin:"password"
>>> http://test-namenode.subnet1.hadoop.oraclevcn.com:9995
>>>
>>> with knox:
>>> curl -ik -H 'Cache-Control: no-cache' -u admin:"password"
>>> https://test-namenode.subnet1.hadoop.oraclevcn.com:8443/
>>> gateway/ui/zeppelin
>>>
>>> Any idea why the browser does not show the login page? Appreciate any
>>> help!
>>>
>>>
>>>
>>> Response:
>>>
>>> HTTP/1.1 200 OK
>>> Date: Mon, 11 Jun 2018 23:51:00 GMT
>>> Date: Monday, June 11, 2018 11:51:00 PM GMT
>>> Access-Control-Allow-Credentials: true
>>> Access-Control-Allow-Headers: authorization,Content-Type
>>> Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, HEAD, DELETE
>>> X-FRAME-OPTIONS: SAMEORIGIN
>>> X-XSS-Protection: 1
>>> Accept-Ranges: bytes
>>> Content-Type: text/html
>>> Last-Modified: Thu, 04 Jan 2018 10:59:02 GMT
>>> Server: Jetty(9.2.15.v20160210)
>>> Content-Length: 3783
>>>
>>> <!doctype html><!--
>>> Licensed under the Apache License, Version 2.0 (the "License");
>>> you may not use this file except in compliance with the License.
>>> You may obtain a copy of the License at
>>>
>>> http://www.apache.org/licenses/LICENSE-2.0
>>>
>>> Unless required by applicable law or agreed to in writing, software
>>> distributed under the License is distributed on an "AS IS" BASIS,
>>> WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
>>> See the License for the specific language governing permissions and
>>> limitations under the License.
>>> --> <html ng-controller="MainCtrl" class="no-js"> <head> <meta
>>> http-equiv="X-UA-Compatible" content="IE=edge"> <meta charset="utf-8">
>>> <title></title> <!-- disable caches for all browser --> <meta
>>> http-equiv="cache-control" content="max-age=0"> <meta
>>> http-equiv="cache-control" content="no-cache"> <meta
>>> http-equiv="cache-control" content="no-store"> <meta http-equiv="expires"
>>> content="0"> <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00
>>> GMT"> <meta http-equiv="pragma" content="no-cache"> <meta
>>> name="description" content=""> <meta name="viewport"
>>> content="width=device-width"> <!-- ACE CSS autocomplition issue workarounds
>>> --> <style type="text/css">div.ace_editor.ace_autocomplete
>>> .ace_marker-layer .ace_active-line { z-index: -1 !important; }</style> <!--
>>> Place favicon.ico and apple-touch-icon.png in the root directory --> <link
>>> rel="stylesheet" href="/gateway/ui/zeppelin/styles/vendor.ead2f1215177b914.css">
>>> <link rel="stylesheet" href="/gateway/ui/zeppelin/
>>> styles/main.5e840e18559d1996.css"> <link rel="stylesheet"
>>> ng-href="/gateway/ui/zeppelin/assets/styles/looknfeel/{{looknfeel}}.css">
>>> <link rel="stylesheet" href="/gateway/ui/zeppelin/assets/styles/printMode.css">
>>> <body ng-class="{'bodyAsIframe': asIframe}"> <!--[if lt IE 7]>
>>>     <p class="browsehappy">You are using an <strong>outdated</strong>
>>> browser. Please <a href="http://browsehappy.com/">upgrade your
>>> browser</a> to improve your experience.</p>
>>>     <![endif]--> <toast></toast> <div ng-include src="'components/navbar/
>>> navbar.html?v=1515063488639'"></div> <!-- Add your site or application
>>> content here --> <div id="main" class="container"> <div ng-view></div>
>>> </div> <!-- Modal ::  Keyboard shortcuts --> <div ng-include
>>> src="'components/modal-shortcut/modal-shortcut.html?v=1515063488639'"></div>
>>> <div ng-controller="NotenameCtrl as notenamectrl"> <div
>>> id="note-modal-container" ng-include src="'components/noteName-
>>> create/note-name-dialog.html?v=1515063488639'"></div> </div> <div
>>> ng-controller="NoteImportCtrl as noteimportctrl"> <div
>>> id="note-import-container" ng-include src="'components/noteName-
>>> import/note-import-dialog.html?v=1515063488639'"></div> </div> <div
>>> ng-controller="LoginCtrl as noteimportctrl"> <div id="login-container"
>>> ng-include src="'components/login/login.html?v=1515063488639'"></div>
>>> </div> <div ng-controller="RenameCtrl"> <div ng-include
>>> src="'components/rename/rename.html?v=1515063488639'"></div> </div>
>>> <!--[if lt IE 9]>
>>>     <script src="scripts/oldieshim.8967257085f0b83a.js"></script>
>>>     <![endif]--> <script type="text/x-mathjax-config">var config = {
>>>         extensions: ["tex2jax.js"],
>>>         jax: ["input/TeX", "output/HTML-CSS"],
>>>         tex2jax: {
>>>           inlineMath: [ ["\\(","\\)"] ],
>>>           displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
>>>           processEscapes: true
>>>         },
>>>         "HTML-CSS": { availableFonts: ["TeX"] },
>>>         messageStyle: "none"
>>>       }
>>>       // add root only if it's not dev mode
>>>       if (Number(location.port) !== 9000) {
>>>         config.root = '.';
>>>       }
>>>       MathJax.Hub.Config(config);</script> <script
>>> src="/gateway/ui/zeppelin/scripts/vendor.b8e51cdeeccd208d.js"></script>
>>> <script type="text/javascript" src="/gateway/ui/zeppelin/app.
>>> 05bbdae750681c30f521.js"></script>
>>>
>>>
>>>
>>

Re: accessing zeppelin via knox returns empty page

Posted by Sandeep Moré <mo...@gmail.com>.
Also, can you try adding forward slash to your url, i.e.
https://test-namenode.subnet1.hadoop.oraclevcn.com:8443/gateway/ui/zeppelin/

Best,
Sandeep

On Mon, Jun 11, 2018 at 9:32 PM larry mccay <lm...@apache.org> wrote:

> Hi Lian -
>
> If the same response is coming back from curl going both direct and
> through Knox then it seems that Knox proxying is working properly - at
> least until that point.
>
> Have you looked at the javascript console in the browser to see whether
> there are any errors?
> In order for Zeppelin to work you will also need to proxy the websocket
> connections - so make sure that you follow the docs [1] completely.
>
> Dev tools and the javascript console should provide you with some more
> details hopefully.
>
> thanks,
>
> --larry
>
> 1. http://knox.apache.org/books/knox-1-0-0/user-guide.html#Zeppelin+UI
>
> On Mon, Jun 11, 2018 at 7:56 PM, Lian Jiang <ji...@gmail.com> wrote:
>
>> Hi,
>>
>> I am using HDP2.6, knox, ranger, ldap. I can access zeppelin directly
>> using admin/admin as username/password. However, accessing zepplin via knox
>> gets 200 status code but empty page.
>>
>> Using curl, I found the responses (at the end) are the same for:
>>
>> without knox:
>> curl -ik -H 'Cache-Control: no-cache' -u admin:"password"
>> http://test-namenode.subnet1.hadoop.oraclevcn.com:9995
>>
>> with knox:
>> curl -ik -H 'Cache-Control: no-cache' -u admin:"password"
>> https://test-namenode.subnet1.hadoop.oraclevcn.com:8443/gateway/ui/zeppelin
>>
>> Any idea why the browser does not show the login page? Appreciate any
>> help!
>>
>>
>>
>> Response:
>>
>> HTTP/1.1 200 OK
>> Date: Mon, 11 Jun 2018 23:51:00 GMT
>> Date: Monday, June 11, 2018 11:51:00 PM GMT
>> Access-Control-Allow-Credentials: true
>> Access-Control-Allow-Headers: authorization,Content-Type
>> Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, HEAD, DELETE
>> X-FRAME-OPTIONS: SAMEORIGIN
>> X-XSS-Protection: 1
>> Accept-Ranges: bytes
>> Content-Type: text/html
>> Last-Modified: Thu, 04 Jan 2018 10:59:02 GMT
>> Server: Jetty(9.2.15.v20160210)
>> Content-Length: 3783
>>
>> <!doctype html><!--
>> Licensed under the Apache License, Version 2.0 (the "License");
>> you may not use this file except in compliance with the License.
>> You may obtain a copy of the License at
>>
>> http://www.apache.org/licenses/LICENSE-2.0
>>
>> Unless required by applicable law or agreed to in writing, software
>> distributed under the License is distributed on an "AS IS" BASIS,
>> WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
>> See the License for the specific language governing permissions and
>> limitations under the License.
>> --> <html ng-controller="MainCtrl" class="no-js"> <head> <meta
>> http-equiv="X-UA-Compatible" content="IE=edge"> <meta charset="utf-8">
>> <title></title> <!-- disable caches for all browser --> <meta
>> http-equiv="cache-control" content="max-age=0"> <meta
>> http-equiv="cache-control" content="no-cache"> <meta
>> http-equiv="cache-control" content="no-store"> <meta http-equiv="expires"
>> content="0"> <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00
>> GMT"> <meta http-equiv="pragma" content="no-cache"> <meta
>> name="description" content=""> <meta name="viewport"
>> content="width=device-width"> <!-- ACE CSS autocomplition issue workarounds
>> --> <style type="text/css">div.ace_editor.ace_autocomplete
>> .ace_marker-layer .ace_active-line { z-index: -1 !important; }</style> <!--
>> Place favicon.ico and apple-touch-icon.png in the root directory --> <link
>> rel="stylesheet"
>> href="/gateway/ui/zeppelin/styles/vendor.ead2f1215177b914.css"> <link
>> rel="stylesheet"
>> href="/gateway/ui/zeppelin/styles/main.5e840e18559d1996.css"> <link
>> rel="stylesheet"
>> ng-href="/gateway/ui/zeppelin/assets/styles/looknfeel/{{looknfeel}}.css">
>> <link rel="stylesheet"
>> href="/gateway/ui/zeppelin/assets/styles/printMode.css">  <body
>> ng-class="{'bodyAsIframe': asIframe}"> <!--[if lt IE 7]>
>>     <p class="browsehappy">You are using an <strong>outdated</strong>
>> browser. Please <a href="http://browsehappy.com/">upgrade your
>> browser</a> to improve your experience.</p>
>>     <![endif]--> <toast></toast> <div ng-include
>> src="'components/navbar/navbar.html?v=1515063488639'"></div> <!-- Add your
>> site or application content here --> <div id="main" class="container"> <div
>> ng-view></div> </div> <!-- Modal ::  Keyboard shortcuts --> <div ng-include
>> src="'components/modal-shortcut/modal-shortcut.html?v=1515063488639'"></div>
>> <div ng-controller="NotenameCtrl as notenamectrl"> <div
>> id="note-modal-container" ng-include
>> src="'components/noteName-create/note-name-dialog.html?v=1515063488639'"></div>
>> </div> <div ng-controller="NoteImportCtrl as noteimportctrl"> <div
>> id="note-import-container" ng-include
>> src="'components/noteName-import/note-import-dialog.html?v=1515063488639'"></div>
>> </div> <div ng-controller="LoginCtrl as noteimportctrl"> <div
>> id="login-container" ng-include
>> src="'components/login/login.html?v=1515063488639'"></div> </div> <div
>> ng-controller="RenameCtrl"> <div ng-include
>> src="'components/rename/rename.html?v=1515063488639'"></div> </div> <!--[if
>> lt IE 9]>
>>     <script src="scripts/oldieshim.8967257085f0b83a.js"></script>
>>     <![endif]--> <script type="text/x-mathjax-config">var config = {
>>         extensions: ["tex2jax.js"],
>>         jax: ["input/TeX", "output/HTML-CSS"],
>>         tex2jax: {
>>           inlineMath: [ ["\\(","\\)"] ],
>>           displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
>>           processEscapes: true
>>         },
>>         "HTML-CSS": { availableFonts: ["TeX"] },
>>         messageStyle: "none"
>>       }
>>       // add root only if it's not dev mode
>>       if (Number(location.port) !== 9000) {
>>         config.root = '.';
>>       }
>>       MathJax.Hub.Config(config);</script> <script
>> src="/gateway/ui/zeppelin/scripts/vendor.b8e51cdeeccd208d.js"></script>
>> <script type="text/javascript"
>> src="/gateway/ui/zeppelin/app.05bbdae750681c30f521.js"></script>
>>
>>
>>
>

Re: accessing zeppelin via knox returns empty page

Posted by larry mccay <lm...@apache.org>.
Hi Lian -

If the same response is coming back from curl going both direct and through
Knox then it seems that Knox proxying is working properly - at least until
that point.

Have you looked at the javascript console in the browser to see whether
there are any errors?
In order for Zeppelin to work you will also need to proxy the websocket
connections - so make sure that you follow the docs [1] completely.

Dev tools and the javascript console should provide you with some more
details hopefully.

thanks,

--larry

1. http://knox.apache.org/books/knox-1-0-0/user-guide.html#Zeppelin+UI

On Mon, Jun 11, 2018 at 7:56 PM, Lian Jiang <ji...@gmail.com> wrote:

> Hi,
>
> I am using HDP2.6, knox, ranger, ldap. I can access zeppelin directly
> using admin/admin as username/password. However, accessing zepplin via knox
> gets 200 status code but empty page.
>
> Using curl, I found the responses (at the end) are the same for:
>
> without knox:
> curl -ik -H 'Cache-Control: no-cache' -u admin:"password"
> http://test-namenode.subnet1.hadoop.oraclevcn.com:9995
>
> with knox:
> curl -ik -H 'Cache-Control: no-cache' -u admin:"password"
> https://test-namenode.subnet1.hadoop.oraclevcn.com:8443/
> gateway/ui/zeppelin
>
> Any idea why the browser does not show the login page? Appreciate any help!
>
>
>
> Response:
>
> HTTP/1.1 200 OK
> Date: Mon, 11 Jun 2018 23:51:00 GMT
> Date: Monday, June 11, 2018 11:51:00 PM GMT
> Access-Control-Allow-Credentials: true
> Access-Control-Allow-Headers: authorization,Content-Type
> Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, HEAD, DELETE
> X-FRAME-OPTIONS: SAMEORIGIN
> X-XSS-Protection: 1
> Accept-Ranges: bytes
> Content-Type: text/html
> Last-Modified: Thu, 04 Jan 2018 10:59:02 GMT
> Server: Jetty(9.2.15.v20160210)
> Content-Length: 3783
>
> <!doctype html><!--
> Licensed under the Apache License, Version 2.0 (the "License");
> you may not use this file except in compliance with the License.
> You may obtain a copy of the License at
>
> http://www.apache.org/licenses/LICENSE-2.0
>
> Unless required by applicable law or agreed to in writing, software
> distributed under the License is distributed on an "AS IS" BASIS,
> WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> See the License for the specific language governing permissions and
> limitations under the License.
> --> <html ng-controller="MainCtrl" class="no-js"> <head> <meta
> http-equiv="X-UA-Compatible" content="IE=edge"> <meta charset="utf-8">
> <title></title> <!-- disable caches for all browser --> <meta
> http-equiv="cache-control" content="max-age=0"> <meta
> http-equiv="cache-control" content="no-cache"> <meta
> http-equiv="cache-control" content="no-store"> <meta http-equiv="expires"
> content="0"> <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00
> GMT"> <meta http-equiv="pragma" content="no-cache"> <meta
> name="description" content=""> <meta name="viewport"
> content="width=device-width"> <!-- ACE CSS autocomplition issue workarounds
> --> <style type="text/css">div.ace_editor.ace_autocomplete
> .ace_marker-layer .ace_active-line { z-index: -1 !important; }</style> <!--
> Place favicon.ico and apple-touch-icon.png in the root directory --> <link
> rel="stylesheet" href="/gateway/ui/zeppelin/styles/vendor.ead2f1215177b914.css">
> <link rel="stylesheet" href="/gateway/ui/zeppelin/
> styles/main.5e840e18559d1996.css"> <link rel="stylesheet"
> ng-href="/gateway/ui/zeppelin/assets/styles/looknfeel/{{looknfeel}}.css">
> <link rel="stylesheet" href="/gateway/ui/zeppelin/assets/styles/printMode.css">
> <body ng-class="{'bodyAsIframe': asIframe}"> <!--[if lt IE 7]>
>     <p class="browsehappy">You are using an <strong>outdated</strong>
> browser. Please <a href="http://browsehappy.com/">upgrade your
> browser</a> to improve your experience.</p>
>     <![endif]--> <toast></toast> <div ng-include src="'components/navbar/
> navbar.html?v=1515063488639'"></div> <!-- Add your site or application
> content here --> <div id="main" class="container"> <div ng-view></div>
> </div> <!-- Modal ::  Keyboard shortcuts --> <div ng-include
> src="'components/modal-shortcut/modal-shortcut.html?v=1515063488639'"></div>
> <div ng-controller="NotenameCtrl as notenamectrl"> <div
> id="note-modal-container" ng-include src="'components/noteName-
> create/note-name-dialog.html?v=1515063488639'"></div> </div> <div
> ng-controller="NoteImportCtrl as noteimportctrl"> <div
> id="note-import-container" ng-include src="'components/noteName-
> import/note-import-dialog.html?v=1515063488639'"></div> </div> <div
> ng-controller="LoginCtrl as noteimportctrl"> <div id="login-container"
> ng-include src="'components/login/login.html?v=1515063488639'"></div>
> </div> <div ng-controller="RenameCtrl"> <div ng-include
> src="'components/rename/rename.html?v=1515063488639'"></div> </div>
> <!--[if lt IE 9]>
>     <script src="scripts/oldieshim.8967257085f0b83a.js"></script>
>     <![endif]--> <script type="text/x-mathjax-config">var config = {
>         extensions: ["tex2jax.js"],
>         jax: ["input/TeX", "output/HTML-CSS"],
>         tex2jax: {
>           inlineMath: [ ["\\(","\\)"] ],
>           displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
>           processEscapes: true
>         },
>         "HTML-CSS": { availableFonts: ["TeX"] },
>         messageStyle: "none"
>       }
>       // add root only if it's not dev mode
>       if (Number(location.port) !== 9000) {
>         config.root = '.';
>       }
>       MathJax.Hub.Config(config);</script> <script
> src="/gateway/ui/zeppelin/scripts/vendor.b8e51cdeeccd208d.js"></script>
> <script type="text/javascript" src="/gateway/ui/zeppelin/app.
> 05bbdae750681c30f521.js"></script>
>
>
>