Hi All,

I was able to resolve the issue with deploying a plugin with Tomcat.

The solution can be found in my blog post.
http://ayolajayamaha.blogspot.com/2014/08/deploying-hawtio-plugin-in-apache-tomcat.html

Thanks.


On 31 July 2014 22:30, Ayola Jayamaha <[email protected]> wrote:

> Hi All,
>
> Attached herewith is the User Manual. However there is a small issue with
> deploying the plugin(.war file). I'm trying with tomcat, fabric8 and also
> communicating with the hawtio community. By next week this problem will
> surly be resolved. And I will write on blog the necessary.
>
>
> On 27 July 2014 07:03, Ayola Jayamaha <[email protected]> wrote:
>
>> Hi Kanak,
>>
>> Ok I will send the user manual to you.
>>
>> Sent from my iPhone
>>
>> On 2014 ජූලි 26, at පෙ.ව. 11.57, Kanak Biscuitwala <[email protected]>
>> wrote:
>>
>> > Hi Ayola,
>> >
>> > Could you write a "Getting Started" guide with step-by-step
>> instructions on how to build and deploy the dashboard? If you already have
>> that, could you send a link?
>> >
>> > Thanks,
>> > Kanak
>> >
>> >> Date: Thu, 24 Jul 2014 22:49:32 +0530
>> >> Subject: Re: [GSOC] Current Status
>> >> From: [email protected]
>> >> To: [email protected]; [email protected]
>> >>
>> >> Hi All,
>> >>
>> >> I was able to resolve the Cross Domain Issue in Helix where it arises
>> since
>> >> the Rest API domain differs from the dashboard domain (ports).
>> Currently it
>> >> is resolved as to allow all requests from the API. I have committed to
>> my
>> >> git repo [1] in which Cluster API is resolved. I will clean the code
>> and
>> >> remove any duplicates and resolve the other APIs as well.
>> >> More information will be found in my blog [2]. Also I'm following
>> >> AngularJS, Angular Directives and Angular Services. These will be
>> helpful
>> >> to me to write good maintainable code for hawtio dashboard.
>> >>
>> >> [1]https://github.com/AyolaJayamaha/helix
>> >> [2]
>> http://ayolajayamaha.blogspot.com/2014/07/enable-cors-in-restlet-21.html
>> >>
>> >>
>> >>
>> >> On 23 July 2014 03:25, Kanak Biscuitwala <[email protected]> wrote:
>> >>
>> >>> In terms of the CORS pattern, I think it's just pattern matching the
>> >>> origin headers (i.e. Origin with Access-Control-Allow-Origin), so if
>> you
>> >>> can make it configurable, that would be good.
>> >>>
>> >>> If it simplifies your implementation and resolves the XSS issues, you
>> can
>> >>> co-deploy helix-admin-webapp with your dashboard (along with any
>> components
>> >>> other than helix controller or helix participant). Other than that, I
>> don't
>> >>> have any specific suggestions as I'm not an expert in this.
>> >>>
>> >>> Kanak
>> >>>
>> >>> Date: Tue, 22 Jul 2014 08:26:31 +0530
>> >>> Subject: Re: [GSOC] Current Status
>> >>> From: [email protected]
>> >>> To: [email protected]; [email protected]
>> >>>
>> >>> Hi All,
>> >>>
>> >>> Currently I'm going through Charting with regard to UI components.
>> Also
>> >>> I'm looking where to put the headers to enable CORS. I'm writing a
>> simple
>> >>> Restlet and removing cross domain issue in that. Any suggestions? I'm
>> going
>> >>> through AngularJS and writing some blog posts with regard to charting
>> and
>> >>> Restlet.
>> >>>
>> >>>
>> >>> http://ayolajayamaha.blogspot.com/2014/07/restlet.html
>> >>> http://ayolajayamaha.blogspot.com/2014/07/angularjs-charts.html
>> >>>
>> >>> http://ayolajayamaha.blogspot.com/2014/07/angularjs-pie-charts.html
>> >>> http://ayolajayamaha.blogspot.com/2014/07/angularjs-line-charts.html
>> >>>
>> >>>
>> >>>
>> >>> On 27 June 2014 18:00, Ayola Jayamaha <[email protected]>
>> wrote:
>> >>>
>> >>> Hi,
>> >>> I have added theme (css) for plugin screen shoot[2] with data[3] is
>> >>> attaching.
>> >>>
>> >>> Clean pom file[4] with setting up properties and dependencies. later
>> we
>> >>> can move those parent pom, set the parent pom.This will build as
>> successful
>> >>> and sample-1.5-SNAPSHOT.war file can be host any web server. (I am
>> using
>> >>> tomcat)
>> >>>
>> >>>
>> >>>
>> >>> Helix dashboard looks with themes
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> Helix dashboard with Helix rest details
>> >>>
>> >>> Here I am sharing 'gist' that I used for hawtio dashboard install[1]
>> >>> (dashboard json).Now we have initial hawtio plugin for Helix[4].
>> >>>
>> >>>
>> >>> If any thing is not clear please let me know
>> >>> Thanks
>> >>> [1] https://gist.github.com/AyolaJayamaha/f54d3178516e8c4875b7
>> >>>
>> >>> [2]
>> >>>
>> https://docs.google.com/file/d/0ByWGexlJqMwbTVNBSC1nM09ON1U/edit?pli=1[3]
>> >>>
>> https://drive.google.com/file/d/0ByWGexlJqMwbWGZDRENXaV9obm8/edit?usp=sharing
>> >>>
>> >>> [4]
>> https://github.com/AyolaJayamaha/helix/tree/master/helix-dashboard
>> >>>
>> >>>
>> >>>
>> >>> On 26 June 2014 17:02, Ayola Jayamaha <[email protected]>
>> wrote:
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> On 26 June 2014 10:07, Ayola Jayamaha <[email protected]>
>> wrote:
>> >>>
>> >>>
>> >>>
>> >>> Hi,
>> >>>
>> >>> 1. I have updated the Mock UI document as the feedback given by my
>> mentor.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> https://docs.google.com/document/d/177-drFSIBOh_aln25v-gpka9TNW8TFmJifLRdVptxz8/edit?usp=sharing
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>> Is the portal on the document address the needs mentioned?
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> 2. The steps I followed next are the transitions from Mock UI --->
>> Static
>> >>> HTML ----->Angular Module
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>>
>> http://ayolajayamaha.blogspot.com/2014/06/simple-ui-with-angularjs.html
>> >>> The sample UI is not the final version. It would be \ improved
>> graphical
>> >>> wise in the final versions. The given UI is the structure of the
>> interface
>> >>> showing all the details that will be given to users.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> ​
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> ui33.png
>> >>>
>> >>>
>> >>>
>> >>> ​​
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> ui11.png
>> >>>
>> >>>
>> >>>
>> >>> ​​
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> ui22.png
>> >>>
>> >>>
>> >>>
>> >>> ​​
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> ui49.png
>> >>>
>> >>>
>> >>>
>> >>> ​​
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> ui9.png
>> >>>
>> >>>
>> >>>
>> >>> ​
>> >>> ---> hawtio plugin
>> >>> ​
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> plugin.png
>> >>>
>> >>>
>> >>>
>> >>> ​​
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> js.png
>> >>>
>> >>>
>> >>>
>> >>> ​
>> >>> As you can see in the screenshots you can find the plugin in github.
>> >>> https://github.com/AyolaJayamaha/helix/tree/master/helix-dashboard
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> You can get clone and build the dashboard. But some configurations in
>> >>> hawtio dashboard has to be done manually. I plan to automate it in the
>> >>> future.
>> >>>
>> >>> Note:
>> >>> I used a mock rest service since the Cross Domain Issue. To enable
>> CORS
>> >>> we need to add the following headers to the response.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> responseHeaders.add("Access-Control-Allow-Origin", "*");
>> >>> responseHeaders.add("Access-Control-Allow-Methods", "POST,OPTIONS");
>> >>> responseHeaders.add("Access-Control-Allow-Headers", "Content-Type");
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> responseHeaders.add("Access-Control-Allow-Credentials", "false");
>> >>> responseHeaders.add("Access-Control-Max-Age", "60");
>> >>> In building war file, the plugin will be added to .war file. But
>> current
>> >>> plugin needs to be installed to hawtio manually.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> On 20 June 2014 21:31, Ayola Jayamaha <[email protected]>
>> wrote:
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> Hi,
>> >>> Thanks for the comments. I will make necessary changes and update the
>> >>> document.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> On 20 June 2014 02:41, Kanak Biscuitwala <[email protected]> wrote:
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> Hi Ayola,
>> >>>
>> >>>
>> >>>
>> >>> Looks good so far. I have some comments about your mockups:
>> >>>
>> >>>
>> >>>
>> >>> 1. Enabling/disabling a cluster and enabling/disabling the controller
>> are
>> >>> actually the same thing. What is missing is "activateCluster."
>> >>> activateCluster is useful when you have a cluster of controllers, and
>> you
>> >>> want those controllers to manage other clusters. The controller
>> cluster is
>> >>> called the "grand cluster."
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> 2. Resources are added to cluster upon creation and cannot be moved or
>> >>> added to other clusters afterwards. Thus, the "add to cluster" on
>> existing
>> >>> resources doesn't make sense. The resources screen should allow
>> >>> enable/disable, read external view, read/write configs and read/write
>> ideal
>> >>> state. There should also be an "add resource" button on the clusters
>> page.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> 3. Same comment for instances. There should be an "add instance"
>> button on
>> >>> the cluster pages, and on the instance page it should allow read
>> current
>> >>> state, read messages, read/write configs.
>> >>>
>> >>>
>> >>>
>> >>> 4. There's a separate page for all configs, but it may make sense to
>> >>> integrate them into the configs at each scope (i.e. cluster, resource,
>> >>> participant).
>> >>>
>> >>>
>> >>>
>> >>> 5. There should be a button on the clusters page for adding a state
>> model
>> >>> definition.
>> >>>
>> >>>
>> >>>
>> >>> I think the overall comment is that the clusters page needs to be a
>> portal
>> >>> for the rest of the dashboard, so there should be a link to all the
>> cluster
>> >>> pages, and within a cluster page, there should be ways to access all
>> the
>> >>> resources, instances, configs, and constraints for that cluster.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> Kanak
>> >>>
>> >>>
>> >>>
>> >>> ----------------------------------------
>> >>>
>> >>>> Date: Thu, 19 Jun 2014 22:23:01 +0530
>> >>>
>> >>>> Subject: Re: [GSOC] Current Status
>> >>>
>> >>>> From: [email protected]
>> >>>
>> >>>> To: [email protected]; [email protected]
>> >>>
>> >>>
>> >>>> Hi,
>> >>>
>> >>>> Below is the Mock UIs for Apache Helix. The UIs will be created with
>> >>> hawtio
>> >>>
>> >>>> dashboard. A .war file can be used to deploy on any server as a
>> separate
>> >>>
>> >>>> module. The UIs get data from the REST API. This is just initial one.
>> >>> They
>> >>>
>> >>>> will be developed as Angular plugin. Towards the end I will provide
>> some
>> >>>
>> >>>> chart as well for cluster management.
>> >>>
>> >>>> Presently I'm doing the hawtio and helix integration and towards next
>> >>> week
>> >>>
>> >>>> I'm writing some angularjs plugins.
>> >>>
>> >>>
>> >>>
>> https://docs.google.com/document/d/177-drFSIBOh_aln25v-gpka9TNW8TFmJifLRdVptxz8/edit?usp=sharing
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>> Thank you.
>> >>>
>> >>>
>> >>>
>> >>>> On 19 June 2014 13:14, Ayola Jayamaha <[email protected]>
>> wrote:
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>>> On 19 June 2014 01:38, Kanak Biscuitwala <[email protected]>
>> wrote:
>> >>>
>> >>>
>> >>>>>> Local deployment is fine.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>>>> Here is the git repo that I will be using, later I will share Git
>> >>>
>> >>>>>> location (Angular plugin) that can be used in dashboard of hawtio.
>> I
>> >>> will
>> >>>
>> >>>>>> blog on those as well.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>>>> The main thing we would like you to deliver is the package so that
>> it
>> >>> is
>> >>>
>> >>>>>> available for anyone to deploy within their own cluster.
>> >>>
>> >>>
>> >>>
>> >>>>> Sure,
>> >>>
>> >>>>> helix-dashboard[2] module will build 'sample-1.5-SNAPSHOT.war' with
>> >>> helix
>> >>>
>> >>>>> dashboard. This war can be host any server (tomcat etc.. ) by anyone
>> >>> with
>> >>>
>> >>>>> helix rest web app (own cluster).
>> >>>
>> >>>>> I just found[1] function 'start()' line 43. I too can follow that
>> model
>> >>>
>> >>>>> even.
>> >>>
>> >>>
>> >>>>> Therefore finally you will have web app as 'helix-admin-webapp'
>> that can
>> >>>
>> >>>>> be deployed within their own cluster.
>> >>>
>> >>>
>> >>>>> [1]
>> >>>
>> >>>
>> https://github.com/AyolaJayamaha/helix/blob/master/helix-admin-webapp/src/main/java/org/apache/helix/webapp/HelixAdminWebApp.java
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>>> [2]
>> https://github.com/AyolaJayamaha/helix/tree/master/helix-dashboard
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>>>> Kanak
>> >>>
>> >>>
>> >>>>>> ----------------------------------------
>> >>>
>> >>>>>>> Date: Wed, 18 Jun 2014 22:30:43 +0530
>> >>>
>> >>>>>>> Subject: Re: [GSOC] Current Status
>> >>>
>> >>>>>>> From: [email protected]
>> >>>
>> >>>>>>> To: [email protected]
>> >>>
>> >>>>>>> CC: [email protected]
>> >>>
>> >>>
>> >>>>>>> Hi,
>> >>>
>> >>>>>>> Currently I'm creating mock UIs, helix and hawt.io integration as
>> >>>
>> >>>>>> module
>> >>>
>> >>>>>>> and plugins with angularjs in hawtio dashboard.
>> >>>
>> >>>>>>> Upto now I'm almost created the mock UIs. And in helix and hawtio
>> >>>
>> >>>>>>> integration where should I create the headers to cater for the
>> cross
>> >>>
>> >>>>>> domain
>> >>>
>> >>>>>>> issue and if I'm deploying the .war file where can I deploy it?
>> >>>
>> >>>>>>> For the time being the code is in my local machine. I will commit
>> to
>> >>>
>> >>>>>> repo
>> >>>
>> >>>>>>> tomorrow and share with you. But it is still in initial phase.
>> >>>
>> >>>
>> >>>
>> >>>>>>> On 18 June 2014 09:53, Kanak Biscuitwala <[email protected]>
>> wrote:
>> >>>
>> >>>
>> >>>>>>>> Sounds reasonable. Is your current code available in a public
>> >>>
>> >>>>>> repository?
>> >>>
>> >>>>>>>> I would be interested in taking a look if it is.
>> >>>
>> >>>
>> >>>>>>>> Kanak
>> >>>
>> >>>
>> >>>>>>>> ________________________________
>> >>>
>> >>>>>>>>> Date: Wed, 18 Jun 2014 09:31:40 +0530
>> >>>
>> >>>>>>>>> Subject: Re: [GSOC] Current Status
>> >>>
>> >>>>>>>>> From: [email protected]
>> >>>
>> >>>>>>>>> To: [email protected]; [email protected]
>> >>>
>> >>>
>> >>>
>> >>>>>>>>> Hi,
>> >>>
>> >>>
>> >>>>>>>>> In Hawt.io, from a plugin developer's perspective a plugin is
>> just a
>> >>>
>> >>>>>>>>> set of resources; usually at least one JavaScript file. For all
>> the
>> >>>
>> >>>>>>>>> plugins in hawt.io<http://hawt.io> done so far they have picked
>> >>>
>> >>>>>>>>> AngularJS as the UI framework, which has a nice two-way binding
>> >>>
>> >>>>>>>>> between the HTML markup and the JS data model along with
>> >>>
>> >>>>>>>>> modularization, web directives and dependency injection. These
>> >>>
>> >>>>>>>>> AngularJS modules can be added and removed at runtime inside the
>> >>> same
>> >>>
>> >>>>>>>>> single page application without requiri
>>
>
>
>
> --
> Best Regards,
> Ayola Jayamaha
>
> http://ayolajayamaha.blogspot.com
>



-- 
Best Regards,
Ayola Jayamaha

http://ayolajayamaha.blogspot.com

Reply via email to