SlideShare uma empresa Scribd logo
1 de 34
Baixar para ler offline
Admin Console
GlassFish V3
htps://glassfish.dev.java.net



  Ken Paulsen
  Anissa Lam

  June 18, 2008
  Sun Microsystems, Inc.
Agenda
➔ v3 Admin Console Strategy
• Console Plugins




                              2
v3 Admin Console Strategy
• Infrastructure
  >   Plugin API
  >   Update Center Integration
  >   Theme Support
  >   Preferences Support
• Features
      Scripting Support




                                  X
  >
  >   Enhanced Web Service
  >   Charting
  >   etc.
                                      3
Infrastructure: Plugin API
• Plugin
  > Tree Nodes (in TP2)
  > Tabs
  > Pages
  > Themes
  > Help
• Issues:
  > ClassLoader Issues. Only resources
    can be in the plugin module
                                         4
Branding
• Provides at least
  > GlassFish Community Server
  > Sun GlassFish Enterprise Server
• Questions:
  > should we do this short term effort ?
  > Can be achieved with Theme Plugin.




                                            5
Preferences Support
• Build the infrastructure to support user
  preference.
• Allows user to customize their page, eg
  common task page, inline text etc.
• Providing the actual implementation is
  NTH for V3 Lite.
• May use Preference API in JDK6
• Question: whats the min. requirement of
  JDK version in V3 Lite ?
                                             6
Update Center Integration
• Provide ISP packages for both Admin
  Console War and Plugin Modules
• Vehicle for initial download and updates
• New page showing installed modules and
  available updates
• Include other modules besides GlassFish
  modules if UC 2.0 provides necessary API



                                             7
Update Center Integration (cont..)
Issues/Dependencies:
• specifying range of dependencies
• UC API
• UC to support downloading additional
  modules based on dependencies. eg. a
  new web plugin will also bring in the
  corresponding core module.



                                          8
Monitoring

• Simple monitoring page
• May provide charting
Dependencies
• backend monitoring support
• JMaki charting
• AMX API

                               9
Scripting Support
• Deployment screen
• Listing of deployed app
Dependencies
• AMX API to list out apps




                             10
Fix & Finish
  > Navigation
    >Dynamic Sub Nodes
    >Tree Node refresh
    >Breadcrumbs
  > Core
    >Logger Settings
    >Log Levels Settings


                           11
Fix & Finish (cont..)
• Web module
  > List/Create/Delete security Realms
  > Manage user and group
• Woodstock Login component
• upgrade to Woodstock 4.2 GA release




                                         12
Agenda

• V3 Admin Console Strategy
➔ Console Plugins




                              13
Admin Console v3 Plugins
 What is an Admin Console Plugin?




                                    Plugin
              Plugin
                                             14
Plugin Examples
 What is an Admin Console Plugin?
 •   Tree Nodes
 •   Pages
 •   Tabs
 •   Help
 •   Page-specific
 •   Theme


                                    15
Integration Points
• Tree Nodes
 > Allows plugin bundles to declare tree nodes
 > Example: SIP and JBI specify new tree nodes
   allowing the user to navigate to SIP / JBI
   functionality




                           Tree Node Plugin
                                                 16
Integration Points
• Pages
 > Allows plugin bundles to add pages
 > Example: GlassFish Java One Jeopardy
   Game



   Plugin Page



                                          17
Integration Points
• Tabs
 > Allows plugin bundles to add additional tabs to
   existing tab sets
 > Example: A new “JBI” tab for clusters




                                                     18
Integration Points
• Online Help
 > Allows for custom context sensitive help
 > Provide a way for plugin bundles to integrate
   the help set so that it is:
    >Searchable
    >Merged with the help index
    >Works with our context-sensitive help button
    >Can link between plugin bundles
    >Localized

                                                    19
Integration Points
• Page-specific Integration
 > Plugin module provides additional content or
   actions
 > Example: Application filter list includes types
   from the plugin module




                                                     20
Integration Points
• Page-specific Integration (continued)
 > Example: Log Levels specific to the plugin
   show up in list of configurable log levels (not
   just a Property).




                                                     21
Integration Points
• Theme
 > Ability to add or replace styles, images, and
   text that define the Look & Feel of the
   application.
 > Eample: Login Screen
 > Example: Header Image / content
 > Example: Page Colors




                                                   22
Plugin Design




                23
Integration Design
• Console Plugin Service
  > Admin GUI's access point for getting Integration Points
    from all plugin bundles




                                                              24
Console Provider
• Marker Service
• Provides console-config.xml URL
• Default: META-INF/admingui/console-config.xml

     @Service
     public class JavaOnePlugin implements
       ConsoleProvider {
         public URL getConfiguration() {
              return null;
         }
     }
Integration Points
• Defined inside console-config.xml:

   <?xml version="1.0" encoding="UTF-8"?>
   <console-config id="javaone">
     <integration-point
         id="JavaOneNode"
         type="tree"
         priority="210"
         parentId="tree"
         content="treenode-ex1.jsf" />
   </console-config>
Integration Points
• The “id” for the plugin bundle
• Visible in urls to plugin bundle resources
   <?xml version="1.0" encoding="UTF-8"?>
   <console-config id="javaone">
     <integration-point
         id="JavaOneNode"
         type="tree"
         priority="210"
         parentId="tree"
         content="treenode-ex1.jsf" />
   </console-config>
Integration Points
• The “id” for the plugin bundle
• Visible in urls to plugin bundle resources
   <?xml version="1.0" encoding="UTF-8"?>
   <console-config id="javaone">
     <integration-point
         id="JavaOneNode"
         type="tree"
         priority="210"
         parentId="tree"
         content="treenode-ex1.jsf" />
   </console-config>
Integration Points
• The integration-point “type” targets where
  an integration should occur
   <?xml version="1.0" encoding="UTF-8"?>
   <console-config id="javaone">
     <integration-point
         id="JavaOneNode"
         type="tree"
         priority="210"
         parentId="tree"
         content="treenode-ex1.jsf" />
   </console-config>
Integration Points
• “priority” can be used for ordering
• “parentId” is used for fine-grained targeting
   <?xml version="1.0" encoding="UTF-8"?>
   <console-config id="javaone">
     <integration-point
         id="JavaOneNode"
         type="tree"
         priority="210"
         parentId="tree"
         content="treenode-ex1.jsf" />
   </console-config>
Integration Points
• “content” specifies the contents of the
  integration, typically a JSF page fragment.
   <?xml version="1.0" encoding="UTF-8"?>
   <console-config id="javaone">
     <integration-point
         id="JavaOneNode"
         type="tree"
         priority="210"
         parentId="tree"
         content="treenode-ex1.jsf" />
   </console-config>
OSGi
• Plugin Bundles need to be able to:
  > Define new Java code that is invoked
    from JSFTemplating and does not
    implement any interface
  > Provide other Java code / libraries
 > Invoke Java code in the admin console web
   application, other plugin bundles, and in the
   admin console dependency bundles (i.e.
   glassfish-api, etc.)
 > Provide faces-config.xml file entries
   which are scanned at application startup,
   JSF findes these via the context classloader    32
   (getResources).
OSGi
• Basically...
 I want plugin bundles to behave as if
 they're in the WEB-INF/lib directory of the
 web application.




                                               33
OSGi
• Current attempt to make this work:
 > Provide common OSGi bundle for the Admin
   Console Web Application and all plugin
   bundles to depend on.
                                 Other Dependencies
                                  (jMaki, GlassFish API,
                                    plugin-specific, etc)

                                      Java Classes
                          Admin
    Webapp Container     Console                  Plugin(s)
           JSF              Core
        Java Classes      Java Classes              Java Classes
                       faces-config.xml           faces-config.xml


                                                                     34

Mais conteúdo relacionado

Mais procurados

04 asp.net session05
04 asp.net session0504 asp.net session05
04 asp.net session05Niit Care
 
JSF, Facelets, Spring-JSF & Maven
JSF, Facelets, Spring-JSF & MavenJSF, Facelets, Spring-JSF & Maven
JSF, Facelets, Spring-JSF & MavenRaghavan Mohan
 
01 asp.net session01
01 asp.net session0101 asp.net session01
01 asp.net session01Niit Care
 
Java EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexusJava EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexusArun Gupta
 
Training in Android with Maven
Training in Android with MavenTraining in Android with Maven
Training in Android with MavenArcadian Learning
 
Tuscany : Applying OSGi After The Fact
Tuscany : Applying  OSGi After The FactTuscany : Applying  OSGi After The Fact
Tuscany : Applying OSGi After The FactLuciano Resende
 
Java EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureJava EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureArun Gupta
 
02 asp.net session02
02 asp.net session0202 asp.net session02
02 asp.net session02Niit Care
 
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)Spring as a Cloud Platform (Developer Summit 2011 17-C-5)
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)Kazuyuki Kawamura
 
Web Technologies in Java EE 7
Web Technologies in Java EE 7Web Technologies in Java EE 7
Web Technologies in Java EE 7Lukáš Fryč
 
Maven, Eclipse and OSGi Working Together - Carlos Sanchez
Maven, Eclipse and OSGi Working Together - Carlos SanchezMaven, Eclipse and OSGi Working Together - Carlos Sanchez
Maven, Eclipse and OSGi Working Together - Carlos Sanchezmfrancis
 
Installing web sphere application server v7 on red hat enterprise linux v6.3
Installing web sphere application server v7 on red hat enterprise linux v6.3Installing web sphere application server v7 on red hat enterprise linux v6.3
Installing web sphere application server v7 on red hat enterprise linux v6.3Dave Hay
 
HTML5 Accessibility CSUN 2012
HTML5 Accessibility CSUN 2012HTML5 Accessibility CSUN 2012
HTML5 Accessibility CSUN 2012Steven Faulkner
 
IKS early adopters workshop - introducing FISE
IKS early adopters workshop - introducing FISEIKS early adopters workshop - introducing FISE
IKS early adopters workshop - introducing FISEBertrand Delacretaz
 
Windows Loves Drupal
Windows Loves DrupalWindows Loves Drupal
Windows Loves DrupalAcquia
 
13 asp.net session19
13 asp.net session1913 asp.net session19
13 asp.net session19Niit Care
 
Simple module Development in Joomla! 2.5
Simple module Development in Joomla! 2.5Simple module Development in Joomla! 2.5
Simple module Development in Joomla! 2.5Vishwash Gaur
 
Top 15 most popular drupal 8 modules
Top 15 most popular drupal 8 modulesTop 15 most popular drupal 8 modules
Top 15 most popular drupal 8 modulesInnoraft
 

Mais procurados (20)

04 asp.net session05
04 asp.net session0504 asp.net session05
04 asp.net session05
 
JSF, Facelets, Spring-JSF & Maven
JSF, Facelets, Spring-JSF & MavenJSF, Facelets, Spring-JSF & Maven
JSF, Facelets, Spring-JSF & Maven
 
01 asp.net session01
01 asp.net session0101 asp.net session01
01 asp.net session01
 
Java EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexusJava EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexus
 
Changelog
ChangelogChangelog
Changelog
 
Training in Android with Maven
Training in Android with MavenTraining in Android with Maven
Training in Android with Maven
 
Tuscany : Applying OSGi After The Fact
Tuscany : Applying  OSGi After The FactTuscany : Applying  OSGi After The Fact
Tuscany : Applying OSGi After The Fact
 
Java EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureJava EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for future
 
02 asp.net session02
02 asp.net session0202 asp.net session02
02 asp.net session02
 
Java server face tutorial
Java server face tutorialJava server face tutorial
Java server face tutorial
 
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)Spring as a Cloud Platform (Developer Summit 2011 17-C-5)
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)
 
Web Technologies in Java EE 7
Web Technologies in Java EE 7Web Technologies in Java EE 7
Web Technologies in Java EE 7
 
Maven, Eclipse and OSGi Working Together - Carlos Sanchez
Maven, Eclipse and OSGi Working Together - Carlos SanchezMaven, Eclipse and OSGi Working Together - Carlos Sanchez
Maven, Eclipse and OSGi Working Together - Carlos Sanchez
 
Installing web sphere application server v7 on red hat enterprise linux v6.3
Installing web sphere application server v7 on red hat enterprise linux v6.3Installing web sphere application server v7 on red hat enterprise linux v6.3
Installing web sphere application server v7 on red hat enterprise linux v6.3
 
HTML5 Accessibility CSUN 2012
HTML5 Accessibility CSUN 2012HTML5 Accessibility CSUN 2012
HTML5 Accessibility CSUN 2012
 
IKS early adopters workshop - introducing FISE
IKS early adopters workshop - introducing FISEIKS early adopters workshop - introducing FISE
IKS early adopters workshop - introducing FISE
 
Windows Loves Drupal
Windows Loves DrupalWindows Loves Drupal
Windows Loves Drupal
 
13 asp.net session19
13 asp.net session1913 asp.net session19
13 asp.net session19
 
Simple module Development in Joomla! 2.5
Simple module Development in Joomla! 2.5Simple module Development in Joomla! 2.5
Simple module Development in Joomla! 2.5
 
Top 15 most popular drupal 8 modules
Top 15 most popular drupal 8 modulesTop 15 most popular drupal 8 modules
Top 15 most popular drupal 8 modules
 

Destaque

Standard java coding convention
Standard java coding conventionStandard java coding convention
Standard java coding conventionTam Thanh
 
CR Bridge Solutions Pvt Ltd. Java slides
CR Bridge Solutions Pvt Ltd. Java slidesCR Bridge Solutions Pvt Ltd. Java slides
CR Bridge Solutions Pvt Ltd. Java slidesCRBTech
 
Logminingsurvey
LogminingsurveyLogminingsurvey
Logminingsurveydrewz lin
 
Introduction to Ext JS 4
Introduction to Ext JS 4Introduction to Ext JS 4
Introduction to Ext JS 4Stefan Gehrig
 
Shanghai big tradeshow calendar 2014 collection by MARKYE@LIERJIA.CN
Shanghai big tradeshow calendar 2014 collection by MARKYE@LIERJIA.CN Shanghai big tradeshow calendar 2014 collection by MARKYE@LIERJIA.CN
Shanghai big tradeshow calendar 2014 collection by MARKYE@LIERJIA.CN YiMu Exhibition Services Co.,Ltd.
 
Adobe Digital Publishing Suite by dualpixel
Adobe Digital Publishing Suite by dualpixelAdobe Digital Publishing Suite by dualpixel
Adobe Digital Publishing Suite by dualpixeldualpixel
 
Attack_Simulation_and_Threat_Modeling
Attack_Simulation_and_Threat_ModelingAttack_Simulation_and_Threat_Modeling
Attack_Simulation_and_Threat_ModelingOluseyi Akindeinde
 
GreenWater Stakeholders Package
GreenWater Stakeholders PackageGreenWater Stakeholders Package
GreenWater Stakeholders PackageJeff Lemon
 
2011 New Product Showcase
2011 New Product Showcase2011 New Product Showcase
2011 New Product Showcasebmmitt
 
Curso de marketing em mídias sociais
Curso de marketing em mídias sociaisCurso de marketing em mídias sociais
Curso de marketing em mídias sociaisEdney Souza
 
Métricas em mídias sociais (versão 2010)
Métricas em mídias sociais (versão 2010)Métricas em mídias sociais (versão 2010)
Métricas em mídias sociais (versão 2010)Edney Souza
 
Ajax, JSF, Facelets, Eclipse & Maven tutorials
Ajax, JSF, Facelets, Eclipse & Maven tutorialsAjax, JSF, Facelets, Eclipse & Maven tutorials
Ajax, JSF, Facelets, Eclipse & Maven tutorialsRaghavan Mohan
 
Tomislav Capan - Muzika Hr (IT Showoff)
Tomislav Capan - Muzika Hr (IT Showoff)Tomislav Capan - Muzika Hr (IT Showoff)
Tomislav Capan - Muzika Hr (IT Showoff)IT Showoff
 

Destaque (20)

Core java concepts
Core    java  conceptsCore    java  concepts
Core java concepts
 
Java Programming Assignment
Java Programming AssignmentJava Programming Assignment
Java Programming Assignment
 
Standard java coding convention
Standard java coding conventionStandard java coding convention
Standard java coding convention
 
CR Bridge Solutions Pvt Ltd. Java slides
CR Bridge Solutions Pvt Ltd. Java slidesCR Bridge Solutions Pvt Ltd. Java slides
CR Bridge Solutions Pvt Ltd. Java slides
 
Logminingsurvey
LogminingsurveyLogminingsurvey
Logminingsurvey
 
document
documentdocument
document
 
Introduction to Ext JS 4
Introduction to Ext JS 4Introduction to Ext JS 4
Introduction to Ext JS 4
 
Infolitigpart1
Infolitigpart1Infolitigpart1
Infolitigpart1
 
Shanghai big tradeshow calendar 2014 collection by MARKYE@LIERJIA.CN
Shanghai big tradeshow calendar 2014 collection by MARKYE@LIERJIA.CN Shanghai big tradeshow calendar 2014 collection by MARKYE@LIERJIA.CN
Shanghai big tradeshow calendar 2014 collection by MARKYE@LIERJIA.CN
 
Adobe Digital Publishing Suite by dualpixel
Adobe Digital Publishing Suite by dualpixelAdobe Digital Publishing Suite by dualpixel
Adobe Digital Publishing Suite by dualpixel
 
Attack_Simulation_and_Threat_Modeling
Attack_Simulation_and_Threat_ModelingAttack_Simulation_and_Threat_Modeling
Attack_Simulation_and_Threat_Modeling
 
GreenWater Stakeholders Package
GreenWater Stakeholders PackageGreenWater Stakeholders Package
GreenWater Stakeholders Package
 
Ijm 06 10_012
Ijm 06 10_012Ijm 06 10_012
Ijm 06 10_012
 
2011 New Product Showcase
2011 New Product Showcase2011 New Product Showcase
2011 New Product Showcase
 
Curso de marketing em mídias sociais
Curso de marketing em mídias sociaisCurso de marketing em mídias sociais
Curso de marketing em mídias sociais
 
Métricas em mídias sociais (versão 2010)
Métricas em mídias sociais (versão 2010)Métricas em mídias sociais (versão 2010)
Métricas em mídias sociais (versão 2010)
 
Unemployment
UnemploymentUnemployment
Unemployment
 
00 a linguagem html
00 a linguagem html00 a linguagem html
00 a linguagem html
 
Ajax, JSF, Facelets, Eclipse & Maven tutorials
Ajax, JSF, Facelets, Eclipse & Maven tutorialsAjax, JSF, Facelets, Eclipse & Maven tutorials
Ajax, JSF, Facelets, Eclipse & Maven tutorials
 
Tomislav Capan - Muzika Hr (IT Showoff)
Tomislav Capan - Muzika Hr (IT Showoff)Tomislav Capan - Muzika Hr (IT Showoff)
Tomislav Capan - Muzika Hr (IT Showoff)
 

Semelhante a GlassFish v3 Lite Admin Console

Net Beans61 Platform
Net Beans61 PlatformNet Beans61 Platform
Net Beans61 Platformsatyajit_t
 
XPages -Beyond the Basics
XPages -Beyond the BasicsXPages -Beyond the Basics
XPages -Beyond the BasicsUlrich Krause
 
[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the BasicsUlrich Krause
 
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Red Hat JBoss BRMS and BPMS Workbench and Rich Client TechnologyRed Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Red Hat JBoss BRMS and BPMS Workbench and Rich Client TechnologyMark Proctor
 
VAST 7.5 and Beyond
VAST 7.5 and BeyondVAST 7.5 and Beyond
VAST 7.5 and BeyondESUG
 
Extending eZ Platform v2 with Symfony and React
Extending eZ Platform v2 with Symfony and ReactExtending eZ Platform v2 with Symfony and React
Extending eZ Platform v2 with Symfony and ReacteZ Systems
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUlrich Krause
 
VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...
VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...
VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...VMworld
 
Expanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate UsabilityExpanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate UsabilityTeamstudio
 
Easy as pie creating widgets for ibm connections
Easy as pie   creating widgets for ibm connectionsEasy as pie   creating widgets for ibm connections
Easy as pie creating widgets for ibm connectionsLetsConnect
 
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...Paul Withers
 
MyFaces CODI and JBoss Seam3 become Apache DeltaSpike
MyFaces CODI and JBoss Seam3 become Apache DeltaSpikeMyFaces CODI and JBoss Seam3 become Apache DeltaSpike
MyFaces CODI and JBoss Seam3 become Apache DeltaSpikeos890
 
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013Mack Hardy
 
Plugins 2.0: The Overview
Plugins 2.0: The OverviewPlugins 2.0: The Overview
Plugins 2.0: The Overviewmrdon
 
Liferay UG Meetup #8 - Portal 7.3 + portlets com nodeJS - 2020-03-04
Liferay UG Meetup #8 - Portal 7.3 + portlets com nodeJS - 2020-03-04Liferay UG Meetup #8 - Portal 7.3 + portlets com nodeJS - 2020-03-04
Liferay UG Meetup #8 - Portal 7.3 + portlets com nodeJS - 2020-03-04Fernando Fernández
 
ITB_2023_Extend_your_contentbox_apps_with_custom_modules_Javier_Quintero.pdf
ITB_2023_Extend_your_contentbox_apps_with_custom_modules_Javier_Quintero.pdfITB_2023_Extend_your_contentbox_apps_with_custom_modules_Javier_Quintero.pdf
ITB_2023_Extend_your_contentbox_apps_with_custom_modules_Javier_Quintero.pdfOrtus Solutions, Corp
 
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...Richard Calderon
 

Semelhante a GlassFish v3 Lite Admin Console (20)

Net Beans61 Platform
Net Beans61 PlatformNet Beans61 Platform
Net Beans61 Platform
 
Creation&imitation
Creation&imitationCreation&imitation
Creation&imitation
 
Extending the GFv3 Admin Console
Extending the GFv3 Admin ConsoleExtending the GFv3 Admin Console
Extending the GFv3 Admin Console
 
XPages -Beyond the Basics
XPages -Beyond the BasicsXPages -Beyond the Basics
XPages -Beyond the Basics
 
[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics
 
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Red Hat JBoss BRMS and BPMS Workbench and Rich Client TechnologyRed Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
 
VAST 7.5 and Beyond
VAST 7.5 and BeyondVAST 7.5 and Beyond
VAST 7.5 and Beyond
 
Extending eZ Platform v2 with Symfony and React
Extending eZ Platform v2 with Symfony and ReactExtending eZ Platform v2 with Symfony and React
Extending eZ Platform v2 with Symfony and React
 
AEM 6.X (With Basics) Training Syllabus
AEM 6.X (With Basics) Training SyllabusAEM 6.X (With Basics) Training Syllabus
AEM 6.X (With Basics) Training Syllabus
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basics
 
VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...
VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...
VMworld 2013: vSphere UI Platform Best Practices: Putting the Web Client SDK ...
 
Expanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate UsabilityExpanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate Usability
 
Easy as pie creating widgets for ibm connections
Easy as pie   creating widgets for ibm connectionsEasy as pie   creating widgets for ibm connections
Easy as pie creating widgets for ibm connections
 
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...
 
MyFaces CODI and JBoss Seam3 become Apache DeltaSpike
MyFaces CODI and JBoss Seam3 become Apache DeltaSpikeMyFaces CODI and JBoss Seam3 become Apache DeltaSpike
MyFaces CODI and JBoss Seam3 become Apache DeltaSpike
 
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
 
Plugins 2.0: The Overview
Plugins 2.0: The OverviewPlugins 2.0: The Overview
Plugins 2.0: The Overview
 
Liferay UG Meetup #8 - Portal 7.3 + portlets com nodeJS - 2020-03-04
Liferay UG Meetup #8 - Portal 7.3 + portlets com nodeJS - 2020-03-04Liferay UG Meetup #8 - Portal 7.3 + portlets com nodeJS - 2020-03-04
Liferay UG Meetup #8 - Portal 7.3 + portlets com nodeJS - 2020-03-04
 
ITB_2023_Extend_your_contentbox_apps_with_custom_modules_Javier_Quintero.pdf
ITB_2023_Extend_your_contentbox_apps_with_custom_modules_Javier_Quintero.pdfITB_2023_Extend_your_contentbox_apps_with_custom_modules_Javier_Quintero.pdf
ITB_2023_Extend_your_contentbox_apps_with_custom_modules_Javier_Quintero.pdf
 
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...
 

Último

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 

Último (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

GlassFish v3 Lite Admin Console

  • 1. Admin Console GlassFish V3 htps://glassfish.dev.java.net Ken Paulsen Anissa Lam June 18, 2008 Sun Microsystems, Inc.
  • 2. Agenda ➔ v3 Admin Console Strategy • Console Plugins 2
  • 3. v3 Admin Console Strategy • Infrastructure > Plugin API > Update Center Integration > Theme Support > Preferences Support • Features Scripting Support X > > Enhanced Web Service > Charting > etc. 3
  • 4. Infrastructure: Plugin API • Plugin > Tree Nodes (in TP2) > Tabs > Pages > Themes > Help • Issues: > ClassLoader Issues. Only resources can be in the plugin module 4
  • 5. Branding • Provides at least > GlassFish Community Server > Sun GlassFish Enterprise Server • Questions: > should we do this short term effort ? > Can be achieved with Theme Plugin. 5
  • 6. Preferences Support • Build the infrastructure to support user preference. • Allows user to customize their page, eg common task page, inline text etc. • Providing the actual implementation is NTH for V3 Lite. • May use Preference API in JDK6 • Question: whats the min. requirement of JDK version in V3 Lite ? 6
  • 7. Update Center Integration • Provide ISP packages for both Admin Console War and Plugin Modules • Vehicle for initial download and updates • New page showing installed modules and available updates • Include other modules besides GlassFish modules if UC 2.0 provides necessary API 7
  • 8. Update Center Integration (cont..) Issues/Dependencies: • specifying range of dependencies • UC API • UC to support downloading additional modules based on dependencies. eg. a new web plugin will also bring in the corresponding core module. 8
  • 9. Monitoring • Simple monitoring page • May provide charting Dependencies • backend monitoring support • JMaki charting • AMX API 9
  • 10. Scripting Support • Deployment screen • Listing of deployed app Dependencies • AMX API to list out apps 10
  • 11. Fix & Finish > Navigation >Dynamic Sub Nodes >Tree Node refresh >Breadcrumbs > Core >Logger Settings >Log Levels Settings 11
  • 12. Fix & Finish (cont..) • Web module > List/Create/Delete security Realms > Manage user and group • Woodstock Login component • upgrade to Woodstock 4.2 GA release 12
  • 13. Agenda • V3 Admin Console Strategy ➔ Console Plugins 13
  • 14. Admin Console v3 Plugins What is an Admin Console Plugin? Plugin Plugin 14
  • 15. Plugin Examples What is an Admin Console Plugin? • Tree Nodes • Pages • Tabs • Help • Page-specific • Theme 15
  • 16. Integration Points • Tree Nodes > Allows plugin bundles to declare tree nodes > Example: SIP and JBI specify new tree nodes allowing the user to navigate to SIP / JBI functionality Tree Node Plugin 16
  • 17. Integration Points • Pages > Allows plugin bundles to add pages > Example: GlassFish Java One Jeopardy Game Plugin Page 17
  • 18. Integration Points • Tabs > Allows plugin bundles to add additional tabs to existing tab sets > Example: A new “JBI” tab for clusters 18
  • 19. Integration Points • Online Help > Allows for custom context sensitive help > Provide a way for plugin bundles to integrate the help set so that it is: >Searchable >Merged with the help index >Works with our context-sensitive help button >Can link between plugin bundles >Localized 19
  • 20. Integration Points • Page-specific Integration > Plugin module provides additional content or actions > Example: Application filter list includes types from the plugin module 20
  • 21. Integration Points • Page-specific Integration (continued) > Example: Log Levels specific to the plugin show up in list of configurable log levels (not just a Property). 21
  • 22. Integration Points • Theme > Ability to add or replace styles, images, and text that define the Look & Feel of the application. > Eample: Login Screen > Example: Header Image / content > Example: Page Colors 22
  • 24. Integration Design • Console Plugin Service > Admin GUI's access point for getting Integration Points from all plugin bundles 24
  • 25. Console Provider • Marker Service • Provides console-config.xml URL • Default: META-INF/admingui/console-config.xml @Service public class JavaOnePlugin implements ConsoleProvider { public URL getConfiguration() { return null; } }
  • 26. Integration Points • Defined inside console-config.xml: <?xml version="1.0" encoding="UTF-8"?> <console-config id="javaone"> <integration-point id="JavaOneNode" type="tree" priority="210" parentId="tree" content="treenode-ex1.jsf" /> </console-config>
  • 27. Integration Points • The “id” for the plugin bundle • Visible in urls to plugin bundle resources <?xml version="1.0" encoding="UTF-8"?> <console-config id="javaone"> <integration-point id="JavaOneNode" type="tree" priority="210" parentId="tree" content="treenode-ex1.jsf" /> </console-config>
  • 28. Integration Points • The “id” for the plugin bundle • Visible in urls to plugin bundle resources <?xml version="1.0" encoding="UTF-8"?> <console-config id="javaone"> <integration-point id="JavaOneNode" type="tree" priority="210" parentId="tree" content="treenode-ex1.jsf" /> </console-config>
  • 29. Integration Points • The integration-point “type” targets where an integration should occur <?xml version="1.0" encoding="UTF-8"?> <console-config id="javaone"> <integration-point id="JavaOneNode" type="tree" priority="210" parentId="tree" content="treenode-ex1.jsf" /> </console-config>
  • 30. Integration Points • “priority” can be used for ordering • “parentId” is used for fine-grained targeting <?xml version="1.0" encoding="UTF-8"?> <console-config id="javaone"> <integration-point id="JavaOneNode" type="tree" priority="210" parentId="tree" content="treenode-ex1.jsf" /> </console-config>
  • 31. Integration Points • “content” specifies the contents of the integration, typically a JSF page fragment. <?xml version="1.0" encoding="UTF-8"?> <console-config id="javaone"> <integration-point id="JavaOneNode" type="tree" priority="210" parentId="tree" content="treenode-ex1.jsf" /> </console-config>
  • 32. OSGi • Plugin Bundles need to be able to: > Define new Java code that is invoked from JSFTemplating and does not implement any interface > Provide other Java code / libraries > Invoke Java code in the admin console web application, other plugin bundles, and in the admin console dependency bundles (i.e. glassfish-api, etc.) > Provide faces-config.xml file entries which are scanned at application startup, JSF findes these via the context classloader 32 (getResources).
  • 33. OSGi • Basically... I want plugin bundles to behave as if they're in the WEB-INF/lib directory of the web application. 33
  • 34. OSGi • Current attempt to make this work: > Provide common OSGi bundle for the Admin Console Web Application and all plugin bundles to depend on. Other Dependencies (jMaki, GlassFish API, plugin-specific, etc) Java Classes Admin Webapp Container Console Plugin(s) JSF Core Java Classes Java Classes Java Classes faces-config.xml faces-config.xml 34