Extending the GFv3 Admin Console
Upcoming SlideShare
Loading in...5
×
 

Extending the GFv3 Admin Console

on

  • 1,249 views

How to Extend the GFv3 Adminstration Console using an OSGi module

How to Extend the GFv3 Adminstration Console using an OSGi module

Statistics

Views

Total Views
1,249
Views on SlideShare
1,248
Embed Views
1

Actions

Likes
0
Downloads
13
Comments
0

1 Embed 1

http://www.slideshare.net 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Extending the GFv3 Admin Console Extending the GFv3 Admin Console Presentation Transcript

  • Extending the GlassFish v3 Admin Console Ken Paulsen Senior Staff Engineer Sun Microsystems, Inc.
  • Agenda • What is an Admin Console Plugin? • Plugin Details • References
  • What is an Admin Console Plugin? Answer: An OSGi bundle which contains 1 or more Integration Points: • Tree Nodes • Pages • Tabs • Help • Page-specific • Theme 3
  • Admin Console v3 Plugins What is an Admin Console Plugin? Integration Point Integration Point 4
  • What is an Admin Console Plugin? • In addition to Integration Points, a Console Plugin may also: > Expose new Java code that is used by any other plugin via “JSFTemplating Handlers.” > Import packages from other OSGi bundles > Provide additional pages, page fragments, or resources (images, css, properties files, JavaScript, etc.). > Provide faces-config.xml file entries which are scanned at application startup. 5
  • Agenda • What is an Admin Console Plugin? • Plugin Details • References
  • Plugin Details 7
  • 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=quot;1.0quot; encoding=quot;UTF-8quot;?> <console-config id=quot;javaonequot;> <integration-point id=quot;JavaOneNodequot; type=quot;org.glassfish.admingui:treeNodequot; priority=quot;210quot; parentId=quot;treequot; content=quot;treenode-ex1.jsfquot; /> </console-config>
  • Integration Points • The “id” for the plugin bundle • Visible in urls to plugin bundle resources <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?> <console-config id=quot;javaonequot;> <integration-point id=quot;JavaOneNodequot; type=quot;org.glassfish.admingui:treeNodequot; priority=quot;210quot; parentId=quot;treequot; content=quot;treenode-ex1.jsfquot; /> </console-config>
  • Integration Points • The integration-point “type” targets where an integration should occur <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?> <console-config id=quot;javaonequot;> <integration-point id=quot;JavaOneNodequot; type=quot;org.glassfish.admingui:treeNodequot; priority=quot;210quot; parentId=quot;treequot; content=quot;treenode-ex1.jsfquot; /> </console-config>
  • Integration Points • “priority” can be used for ordering • “parentId” is used for fine-grained targeting <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?> <console-config id=quot;javaonequot;> <integration-point id=quot;JavaOneNodequot; type=quot;org.glassfish.admingui:treeNodequot; priority=quot;210quot; parentId=quot;treequot; content=quot;treenode-ex1.jsfquot; /> </console-config>
  • Integration Points • “content” specifies the contents of the integration, typically a JSF page fragment. <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?> <console-config id=quot;javaonequot;> <integration-point id=quot;JavaOneNodequot; type=quot;org.glassfish.admingui:treeNodequot; priority=quot;210quot; parentId=quot;treequot; content=quot;treenode-ex1.jsfquot; /> </console-config>
  • Agenda • What is an Admin Console Plugin? • Plugin Details • References
  • References • Plugin Developer Guide Documentation > http://wiki.glassfish.java.net/Wiki.jsp?page=AddOnComponentDevelopmentGuide • JSFTemplating Templates > Makes creating new pages easy > Follows Facelets templating pattern > http://wiki.glassfish.java.net/Wiki.jsp?page=V3AdminGuiTemplates • JSFTemplating Handlers > Used to invoke Java code from plugin JSF pages > Many already available, ready for use > https://jsftemplating.dev.java.net/doc • Woodstock Documentation > https://woodstock.dev.java.net/Documentation.htm • Documentation of all public Integration Points: > http://wiki.glassfish.java.net/Wiki.jsp?page=V3IntegrationPoint
  • Questions? Extending the GlassFish v3 Admin Console https://glassfish.dev.java.net Ken Paulsen ken.paulsen@sun.com