16
Nuxeo WebEngine Nuxeo WebEngine Embedding GlassFish v3 Embedding GlassFish v3 Bogdan Stefanescu - [email protected] | http://www.nuxeo.org

Nuxeo WebEngine and GlassFish v3

  • Upload
    nuxeo

  • View
    1.499

  • Download
    1

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Nuxeo WebEngine and GlassFish v3

Nuxeo WebEngineNuxeo WebEngineEmbedding GlassFish v3Embedding GlassFish v3

Bogdan Stefanescu - [email protected] | http://www.nuxeo.org

Page 2: Nuxeo WebEngine and GlassFish v3

Overview

● About Nuxeo● Deployment

● Embedding Glassfish● Why?● How?

● WebEngine● What's WebEngine?● Examples

● What's Next?

Page 3: Nuxeo WebEngine and GlassFish v3

Nuxeo

A leading open source software vendor, which develops a complete Enterprise Content Management (ECM) software platform.

● Nuxeo Enterprise Platform – an open source platform to build ECM applications.

● Products based on Nuxeo EP may be deployed in several flavors:● EAR, WAR, RCP or standalone applications.

Page 4: Nuxeo WebEngine and GlassFish v3

Nuxeo EP - Requirements

● Applications are made from components.● Be able to assemble new applications from specific

set of components.● Be able to add / remove components into an

(optionally running) application.● Be able to deploy and run modules in any OSGi

framework.

● Provide an extension mechanism for components.

Page 5: Nuxeo WebEngine and GlassFish v3

Nuxeo EP – Deployment

Page 6: Nuxeo WebEngine and GlassFish v3

Embedding GlassFish - Why?

● Why Embedding An Application Server?● Light packaging for enterprise applications.● Leverage JEE features in standalone applications.

● Powerful component model through HK2● HK2 is the foundation for GlassFish v3.● OSGi compatible modules.● Dependency Injection.● Lazy Loading – very fast startup time.

● Very easy to embed.

Page 7: Nuxeo WebEngine and GlassFish v3

Embedding GlassFish - How?

Page 8: Nuxeo WebEngine and GlassFish v3

WebEngine – What Is?

A framework to build RESTful Web Applications on top of the Nuxeo Platform.

● Features● Built on top of JAX-RS model.● Content Management through Nuxeo Platform● Full Groovy scripting support● Hot Deploy of Web Modules.● Flexible Template Model - based on Freemarker● Embeds GlassFish v3 as an OSGi bundle.

Page 9: Nuxeo WebEngine and GlassFish v3

WebEngine – What Is?

● A platform to build any kind of content oriented Web Applications including ● Content oriented Web sites or REST applications.● Rich front ends based on AJAX frameworks like

GWT.

● Powerful Object Model● WebEngine Objects are JAX-RS resources.● Any HTTP request is resolved against an object.● Objects can be manipulated through HTTP

methods: GET, POST, PUT, DELETE, HEAD etc.

Page 10: Nuxeo WebEngine and GlassFish v3

Examples – JAX-RS

Page 11: Nuxeo WebEngine and GlassFish v3

Examples – Web Module

Page 12: Nuxeo WebEngine and GlassFish v3

Examples – Web Object

Page 13: Nuxeo WebEngine and GlassFish v3

Examples – Templates

Page 14: Nuxeo WebEngine and GlassFish v3

What's next?

● Rewriting Nuxeo micro-kernel on top of HK2.● HK2 fulfills all the requirements as the foundation

for Nuxeo EP. ● HK2 provides dependency injection and other cool

features.

● Contribute to HK2 an extension point mechanism.

● Use GlassFish as the default application server for the Nuxeo EP EAR deployment.

Page 15: Nuxeo WebEngine and GlassFish v3

Extension Points

Serializers

Views

Actions

Editors

MyExtensionPoint

Page 16: Nuxeo WebEngine and GlassFish v3

Thank you!Thank you!