SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
What‘s new in Http Service
Felix Meschberger, Adobe
1
1Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Setting the Scope
2
Web
Applications
Specification
Web Applications
Support
Http Service
Specification
Web Applications
OSGi-style
2Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Http Service 1.2
§ More or less unmodified since OSGi R1 (May, 2000)
§ Resource Registration
§ Custom Authentication
§ Based on Servlet API 2.1 (November, 1998)
§ Error Pages (Servlet API 2.2)
§ Filters (Servlet API 2.3)
§ Application Events (Servlet API 2.3)
§ Limited Servlet Registration (path prefix only)
§ Complex registration:
§ Requires HttpService to register
§ Requires keeping state of successful registration
§ Requires Http Service to unregister
3
901 San Antonio Road
Palo Alto, CA 94303 USA
415 960-1300 fax 415 969-9131
A Division of Sun Microsystems, Inc.
Java™ Servlet API
Specification
Version 2.1a
James Duncan Davidson
with Suzanne Ahmed
November 1998
Java Software Division
OSGi Service Gateway Specification
Release 1.0
May, 2000
Copyright © The Open Services Gateway Initiative (2000). All Rights Reserved.
Implementation of certain elements of the Open Services Gateway Initiative (OSGI)
Specification may be subject to third party intellectual property rights, including without
limitation, patent rights (such a third party may or may not be a member of OSGi). OSGi is
not responsible and shall not be held responsible in any manner for identifying or failing to
identify any or all such third party intellectual property rights. This document and the
information contained herein are provided on an "AS IS" basis and OSGI DISCLAIMS
ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT
INFRINGE ANY RIGHTS AND ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT
WILL OSGI BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF BUSINESS, LOSS
OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR DIRECT, INDIRECT,
SPECIAL OR EXEMPLARY, INCIDENTIAL, PUNITIVE OR CONSEQUENTIAL
DAMAGES OF ANY KIND IN CONNECTION WITH THIS DOCUMENT OR THE
INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY
OF SUCH LOSS OR DAMAGE.
All Company, brand and product names may be trademarks that are the sole property of
their respective owners. All rights reserved.
OSGi Service Gateway Specification Release 1.0
http://curie.eng/OSGi/index.html (1 of 2) [4/27/2000 12:29:54 PM]
3Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Where will Http Service Go ?
§ Servlet API Version
§ Web Application Descriptor Elements
§ Simpler Registration
§ Clarify Relationship between HttpContext and ServletContext
§ Diagnostic API (based on RFC 185 / Data Transfer Objects)
4
4Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Requirements 1: Http Service Updates
HS-1 The solution MUST define the relationship between the Http Service and Web Application specifications.
HS-2 The solution MUST update the Http Service specification to refer to the latest Servlet API specification and define to what
extend the Http Service provides support.
HS-3 The solution MUST extend the HttpService service API to support Servlet registration with patterns as defined by the
Servlet API specification (Section 12.2, Specification of Mappings, in the Servlet API 3.0 specification). This requirement
aligns servlet registration to functionality provided by the Servlet API web application descriptor (web.xml).
HS-4 The solution MUST extend the HttpService service API to support registration of Servlet API filters with patterns as
defined by the Servlet API specification (Section 12.2, Specification of Mappings, in the Servlet API 3.0 specification) or
referring to servlets by their names. This requirement aligns mapping filters to requests to functionality provided by the
Servlet API web application descriptor (web.xml).
HS-5 The solution MUST extend the HttpService service API to support registration of Servlet API listeners.
HS-6 The solution MUST add support for error page configuration.
HS-7 The solution MUST define how registered Servlets and Filters are named.
HS-8 The solution MUST clarify ServletContext implementation in the HttpService for both standalone and bridged Http
Service implementations.
HS-9 The solution MUST clarify the ServletContext scope of Servlet API listeners registered through the HttpService.
HS-10 The solution MAY specify support for scripted request processing. For example supporting JSP with Tag Libraries.
HS-11 The solution MAY define how HttpService instances can be dynamically configured.
HS-12 The solution MUST define service registration properties for the HttpService to reflect configuration of the service.
5
5Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Requirements 2: Whiteboard Registration
HS-13 The solution MUST define whiteboard registration of servlet services with the HttpService.
HS-14 The solution MUST define whiteboard registration of filter services with the HttpService.
HS-15 The solution MUST define whiteboard registration of servlet listener services with the HttpService.
HS-16 The solution MUST define registration of OSGi HttpContext services used for Servlet and Filter registration.
HS-17 The solution MUST define how servlets, filters, and servlet listener services are matched with HttpService services for
registration.
HS-18 The solution MUST support registration of static resources according to the extender pattern.
HS-19 The solution MUST support registration of error pages according to the extender pattern.
HS-20 The solution MUST define a capability for the osgi.extender namespace. Bundles providing resources and/or error pages
can then require this capability.
HS-21 The solution MUST define a capability for the whiteboard pattern registration in one of the standard namespaces (or a
new namespace to be defined in the Chapter 135, Common Namespaces Specification). Bundles registering servlet, filter,
and/or servlet listener services can then require this capability.
6
6Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Servlet API Version
§ Which Servlet API to support/require ?
§ Servlet API 3.0 for the latest and greatest ?
§ Must not alienate Embedded Systems !
§ Servlet API and the Platform
§ 2.4 requires Java 1.3
§ 2.5 requires Java 5
§ 3.0 requires Java 6
7
>= 2.4
7Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Web Application Descriptor Elements
8
Servlet
Filter
Error
Pages
Event
Listener
EJB
MIME
mapping
Replacements
• EJB: Use Services
• MIME mapping: Use HttpContext
8Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Registration - Http Service 1.2 API
9
public interface HttpService {
public void registerServlet(String alias,
Servlet servlet,
Dictionary initparams,
HttpContext context)
throws ServletException, NamespaceException;
public void unregister(String alias);
}
Single path Prefix only
Servlet or
Resource ?
Manage
State
Service
Required
Share ?
9Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Registration - Http Service 1.2 Example
10
@Component(service = {}, property = "alias=/")
public class SampleServletOld extends HttpServlet {
private HttpService httpService;
private String servletAlias;
private boolean servletRegistered;
@Activate
private void activate(Map<String, Object> config) throws ServletException, NamespaceException {
this.servletAlias = (String) config.get("alias");
this.httpService.registerServlet(this.servletAlias, this, null, null);
this.servletRegistered = true;
}
@Deactivate
private void deactivate() {
if (this.servletRegistered) {
this.httpService.unregister(servletAlias);
}
}
@Reference(unbind = "unbindHttpService")
private void bindHttpService(final HttpService httpService) {
this.httpService = httpService;
}
private void unbindHttpService(final HttpService httpService) {
if (this.httpService == httpService) {
this.httpService = null;
}
}
}
Manage
State
Service
Required
10Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Registration - Whiteboard Pattern
11
@Component(
service = Servlet.class,
property = "osgi.http.whiteboard.pattern=/")
public class SampleServletWhiteboard extends HttpServlet {
}
§ No Http Service reference
§ No State Management
11Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Http Context and Servlet Context
12
Common Servlet Context
(e.g. from Servlet Container)
Servlet Context 1 Servlet Context n
Http Context 1 Http Context n
Context Path
Logging
Version
Attributes
Resources
HTTP Sessions
Attributes
Resources
HTTP Sessions
Authentication
MIME Types
Authentication
MIME Types
12Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Whiteboard Pattern Support Explained
§ Uses Servlet, Filter, HttpContext services
§ Registers with Http Service
§ Matches Servlet to HttpContext with context.name property
13
Servlet
HttpContext
Http Service
context.name
pattern
Filter
pattern
13Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Http Service Whiteboard Properties
14
osgi.http.whiteboard. Servlet HttpContext Filter
.pattern
.context.name
.context.shared
.errorPage
.service.target
.prefix
Registration
Pattern
n/a
Registration
Pattern
Refers to
HttpContext
Identifies
Refers to
HttpContext
n/a
Shared across
Bundles ?
n/a
Status Code
Exception Type
n/a n/a
HttpService
Selection
n/a
HttpService
Selection
Resource Prefix n/a n/a
14Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Alias vs. Pattern
15
Http Service Servlet API Match Type
/alias /prefix/* Prefix Match
*.ext Extension Match
„“ (empty) Context Root Match
/ Default Servlet
/exact/match Exact Match
§ osgi.http.whiteboard.pattern Service Registration Property
§ String+: String, String[], Collection<String>
15Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Application Events
§ Listeners are Services
§ Listener interface is Service Name
§ Supported Listeners depending on Servlet API Support
§ Whiteboard Registration
§ All Events from Http Service
§ Exception: ServletContextListener
16
16Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Diagnostic API
§ ServletDTO[] getServlets();
§ Map<String, String> getResources();
§ FilterDTO[] getFilters();
§ Map<Object, String> getErrorLocations();
17
FilterDTO
- String name;
- String[] patterns;
- ServletContextDTO servletContext;
ServletDTO
- String name;
- String[] patterns;
- String servletInfo;
- ServletContextDTO servletContext;
ServletContextDTO
- String name;
- String contextPath;
- Map<String, Object> initParams;
- Map<String, Object> attributes;
17Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
What else ?
§ Resources
§ Replacement for HttpService.registerResources
§ org.osgi.service.http.Resource Servlet
§ osgi.http.whiteboard.pattern - String+ of URL patterns
§ osgi.http.whiteboard.prefix - String of name prefix
§ Http Service Registration Property
§ osgi.http.service.endpoints - String+ of endpoint URIs, e.g. http://127.0.0.1:4502
§ Capability / Namespace
§ New namespace osgi.whiteboard
§ Whiteboard Capability: osgi.http
18
Provide-Capability: osgi.whiteboard;
osgi.whiteboard="osgi.http";
uses:="javax.servlet";
version:Version="1.3"
Require-Capability: osgi.whiteboard;
filter:="(&(osgi.whiteboard=osgi.http)(version>=1.3))"
18Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Good News
19
© 2013 OSGi Alliance
All Rights Reserved.
OSGi Early Draft
2013.03
4 March 2013
19Dienstag, 26. März 13
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Links
§ http://wiki.osgi.org/wiki/WebExperience
§ OSGi Early Access Draft 2013-03
§ http://www.osgi.org/Download/File?url=/download/osgi-early-draft-2013-03.pdf
§ Discuss
§ mailto:osgi-dev@mail.osgi.org
§ OSGi Service Gateway Specification Releases 1.0
§ http://www.osgi.org/Download/Release1
§ OSGi Enterprise Release 5
§ http://www.osgi.org/Download/Release5
20
20Dienstag, 26. März 13
1 Sign In: www.eclipsecon.org
2 Select Session Evaluate
3 Vote
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Give Feedback on the Session
21
21Dienstag, 26. März 13

Más contenido relacionado

La actualidad más candente

Web Deployment With Visual Studio 2010
Web Deployment With Visual Studio 2010Web Deployment With Visual Studio 2010
Web Deployment With Visual Studio 2010Rishu Mehra
 
Making Sense of APEX Security by Christoph Ruepprich
Making Sense of APEX Security by Christoph RuepprichMaking Sense of APEX Security by Christoph Ruepprich
Making Sense of APEX Security by Christoph RuepprichEnkitec
 
Extending Retrofit for fun and profit
Extending Retrofit for fun and profitExtending Retrofit for fun and profit
Extending Retrofit for fun and profitMatthew Clarke
 
Alfresco devcon 2019: How to track user activities without using the audit fu...
Alfresco devcon 2019: How to track user activities without using the audit fu...Alfresco devcon 2019: How to track user activities without using the audit fu...
Alfresco devcon 2019: How to track user activities without using the audit fu...konok
 
AAI 2236-Using the New Java Concurrency Utilities with IBM WebSphere
AAI 2236-Using the New Java Concurrency Utilities with IBM WebSphereAAI 2236-Using the New Java Concurrency Utilities with IBM WebSphere
AAI 2236-Using the New Java Concurrency Utilities with IBM WebSphereKevin Sutter
 
Azure Durable Functions (2019-04-27)
Azure Durable Functions (2019-04-27)Azure Durable Functions (2019-04-27)
Azure Durable Functions (2019-04-27)Paco de la Cruz
 
What's cool in the new and updated OSGi Specs (EclipseCon 2014)
What's cool in the new and updated OSGi Specs (EclipseCon 2014)What's cool in the new and updated OSGi Specs (EclipseCon 2014)
What's cool in the new and updated OSGi Specs (EclipseCon 2014)David Bosschaert
 
Spring Hibernate with Ehcache
Spring Hibernate with EhcacheSpring Hibernate with Ehcache
Spring Hibernate with EhcacheInnovationM
 
OSGi Cloud Ecosystems (EclipseCon 2013)
OSGi Cloud Ecosystems (EclipseCon 2013)OSGi Cloud Ecosystems (EclipseCon 2013)
OSGi Cloud Ecosystems (EclipseCon 2013)David Bosschaert
 
Spray - Build RESTfull services in scala
Spray - Build RESTfull services in scalaSpray - Build RESTfull services in scala
Spray - Build RESTfull services in scalaSandeep Purohit
 
RESTful Web Services with JAX-RS
RESTful Web Services with JAX-RSRESTful Web Services with JAX-RS
RESTful Web Services with JAX-RSCarol McDonald
 

La actualidad más candente (20)

Apache Felix Web Console
Apache Felix Web ConsoleApache Felix Web Console
Apache Felix Web Console
 
RESTEasy
RESTEasyRESTEasy
RESTEasy
 
REST in Peace
REST in PeaceREST in Peace
REST in Peace
 
Web Deployment With Visual Studio 2010
Web Deployment With Visual Studio 2010Web Deployment With Visual Studio 2010
Web Deployment With Visual Studio 2010
 
Making Sense of APEX Security by Christoph Ruepprich
Making Sense of APEX Security by Christoph RuepprichMaking Sense of APEX Security by Christoph Ruepprich
Making Sense of APEX Security by Christoph Ruepprich
 
Extending Retrofit for fun and profit
Extending Retrofit for fun and profitExtending Retrofit for fun and profit
Extending Retrofit for fun and profit
 
Alfresco devcon 2019: How to track user activities without using the audit fu...
Alfresco devcon 2019: How to track user activities without using the audit fu...Alfresco devcon 2019: How to track user activities without using the audit fu...
Alfresco devcon 2019: How to track user activities without using the audit fu...
 
API gateway setup
API gateway setupAPI gateway setup
API gateway setup
 
AAI 2236-Using the New Java Concurrency Utilities with IBM WebSphere
AAI 2236-Using the New Java Concurrency Utilities with IBM WebSphereAAI 2236-Using the New Java Concurrency Utilities with IBM WebSphere
AAI 2236-Using the New Java Concurrency Utilities with IBM WebSphere
 
Azure Durable Functions (2019-04-27)
Azure Durable Functions (2019-04-27)Azure Durable Functions (2019-04-27)
Azure Durable Functions (2019-04-27)
 
What's cool in the new and updated OSGi Specs (EclipseCon 2014)
What's cool in the new and updated OSGi Specs (EclipseCon 2014)What's cool in the new and updated OSGi Specs (EclipseCon 2014)
What's cool in the new and updated OSGi Specs (EclipseCon 2014)
 
Psr-7
Psr-7Psr-7
Psr-7
 
Backbone js
Backbone jsBackbone js
Backbone js
 
Spring Hibernate with Ehcache
Spring Hibernate with EhcacheSpring Hibernate with Ehcache
Spring Hibernate with Ehcache
 
Web api
Web apiWeb api
Web api
 
OSGi Cloud Ecosystems (EclipseCon 2013)
OSGi Cloud Ecosystems (EclipseCon 2013)OSGi Cloud Ecosystems (EclipseCon 2013)
OSGi Cloud Ecosystems (EclipseCon 2013)
 
Spray - Build RESTfull services in scala
Spray - Build RESTfull services in scalaSpray - Build RESTfull services in scala
Spray - Build RESTfull services in scala
 
Brief Intro To Jax Rs
Brief Intro To Jax RsBrief Intro To Jax Rs
Brief Intro To Jax Rs
 
JEE Programming - 04 Java Servlets
JEE Programming - 04 Java ServletsJEE Programming - 04 Java Servlets
JEE Programming - 04 Java Servlets
 
RESTful Web Services with JAX-RS
RESTful Web Services with JAX-RSRESTful Web Services with JAX-RS
RESTful Web Services with JAX-RS
 

Similar a Adobe Http Service Specification Update

From Open Source to Open API with Restlet
From Open Source to Open API with RestletFrom Open Source to Open API with Restlet
From Open Source to Open API with RestletRestlet
 
Webservices in SalesForce (part 1)
Webservices in SalesForce (part 1)Webservices in SalesForce (part 1)
Webservices in SalesForce (part 1)Mindfire Solutions
 
Java servlet technology
Java servlet technologyJava servlet technology
Java servlet technologyMinal Maniar
 
What's New in CA Service Virtualization 8.0 - CA World Pre-Conference Session
What's New in CA Service Virtualization 8.0 - CA World Pre-Conference SessionWhat's New in CA Service Virtualization 8.0 - CA World Pre-Conference Session
What's New in CA Service Virtualization 8.0 - CA World Pre-Conference SessionStefana Muller
 
Xamarin Workshop Noob to Master – Week 5
Xamarin Workshop Noob to Master – Week 5Xamarin Workshop Noob to Master – Week 5
Xamarin Workshop Noob to Master – Week 5Charlin Agramonte
 
REST API 20.2 - Appworks Gateway Integration.pptx
REST API 20.2 - Appworks Gateway Integration.pptxREST API 20.2 - Appworks Gateway Integration.pptx
REST API 20.2 - Appworks Gateway Integration.pptxJason452803
 
Java API for XML Web Services (JAX-WS)
Java API for XML Web Services (JAX-WS)Java API for XML Web Services (JAX-WS)
Java API for XML Web Services (JAX-WS)Peter R. Egli
 
Lotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & ArchitectureLotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & Architectureddrschiw
 
Lotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & ArchitectureLotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & Architectureddrschiw
 
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptxTransform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptxkmani5
 
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx (3).ppt
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx (3).pptTransform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx (3).ppt
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx (3).pptHusseinWassof
 
(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...
(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...
(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...Amazon Web Services
 
java Servlet technology
java Servlet technologyjava Servlet technology
java Servlet technologyTanmoy Barman
 
February 2020 Salesforce API Review
February 2020 Salesforce API ReviewFebruary 2020 Salesforce API Review
February 2020 Salesforce API ReviewLydon Bergin
 
Create Home Directories on Storage Using WFA and ServiceNow integration
Create Home Directories on Storage Using WFA and ServiceNow integrationCreate Home Directories on Storage Using WFA and ServiceNow integration
Create Home Directories on Storage Using WFA and ServiceNow integrationRutul Shah
 

Similar a Adobe Http Service Specification Update (20)

From Open Source to Open API with Restlet
From Open Source to Open API with RestletFrom Open Source to Open API with Restlet
From Open Source to Open API with Restlet
 
Servlet
Servlet Servlet
Servlet
 
Oracle API Gateway
Oracle API GatewayOracle API Gateway
Oracle API Gateway
 
TY.BSc.IT Java QB U3
TY.BSc.IT Java QB U3TY.BSc.IT Java QB U3
TY.BSc.IT Java QB U3
 
Webservices in SalesForce (part 1)
Webservices in SalesForce (part 1)Webservices in SalesForce (part 1)
Webservices in SalesForce (part 1)
 
Java servlet technology
Java servlet technologyJava servlet technology
Java servlet technology
 
What's New in CA Service Virtualization 8.0 - CA World Pre-Conference Session
What's New in CA Service Virtualization 8.0 - CA World Pre-Conference SessionWhat's New in CA Service Virtualization 8.0 - CA World Pre-Conference Session
What's New in CA Service Virtualization 8.0 - CA World Pre-Conference Session
 
Exploring the Salesforce REST API
Exploring the Salesforce REST APIExploring the Salesforce REST API
Exploring the Salesforce REST API
 
Java servlets
Java servletsJava servlets
Java servlets
 
Xamarin Workshop Noob to Master – Week 5
Xamarin Workshop Noob to Master – Week 5Xamarin Workshop Noob to Master – Week 5
Xamarin Workshop Noob to Master – Week 5
 
REST API 20.2 - Appworks Gateway Integration.pptx
REST API 20.2 - Appworks Gateway Integration.pptxREST API 20.2 - Appworks Gateway Integration.pptx
REST API 20.2 - Appworks Gateway Integration.pptx
 
Java API for XML Web Services (JAX-WS)
Java API for XML Web Services (JAX-WS)Java API for XML Web Services (JAX-WS)
Java API for XML Web Services (JAX-WS)
 
Lotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & ArchitectureLotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & Architecture
 
Lotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & ArchitectureLotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & Architecture
 
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptxTransform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx
 
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx (3).ppt
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx (3).pptTransform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx (3).ppt
Transform-to-Smart-ERP-using-Custom-Mobile-Apps.pptx (3).ppt
 
(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...
(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...
(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...
 
java Servlet technology
java Servlet technologyjava Servlet technology
java Servlet technology
 
February 2020 Salesforce API Review
February 2020 Salesforce API ReviewFebruary 2020 Salesforce API Review
February 2020 Salesforce API Review
 
Create Home Directories on Storage Using WFA and ServiceNow integration
Create Home Directories on Storage Using WFA and ServiceNow integrationCreate Home Directories on Storage Using WFA and ServiceNow integration
Create Home Directories on Storage Using WFA and ServiceNow integration
 

Más de mfrancis

Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...mfrancis
 
OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)mfrancis
 
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)mfrancis
 
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank LyaruuOSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruumfrancis
 
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...mfrancis
 
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...mfrancis
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...mfrancis
 
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)mfrancis
 
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...mfrancis
 
OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)mfrancis
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...mfrancis
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...mfrancis
 
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...mfrancis
 
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)mfrancis
 
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)mfrancis
 
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)mfrancis
 
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...mfrancis
 
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)mfrancis
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...mfrancis
 
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)mfrancis
 

Más de mfrancis (20)

Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
 
OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)
 
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
 
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank LyaruuOSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
 
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
 
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
 
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
 
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
 
OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
 
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
 
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
 
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
 
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
 
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
 
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
 
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)
 

Último

Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
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
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
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
 

Último (20)

Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
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...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
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...
 

Adobe Http Service Specification Update

  • 1. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. What‘s new in Http Service Felix Meschberger, Adobe 1 1Dienstag, 26. März 13
  • 2. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Setting the Scope 2 Web Applications Specification Web Applications Support Http Service Specification Web Applications OSGi-style 2Dienstag, 26. März 13
  • 3. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Http Service 1.2 § More or less unmodified since OSGi R1 (May, 2000) § Resource Registration § Custom Authentication § Based on Servlet API 2.1 (November, 1998) § Error Pages (Servlet API 2.2) § Filters (Servlet API 2.3) § Application Events (Servlet API 2.3) § Limited Servlet Registration (path prefix only) § Complex registration: § Requires HttpService to register § Requires keeping state of successful registration § Requires Http Service to unregister 3 901 San Antonio Road Palo Alto, CA 94303 USA 415 960-1300 fax 415 969-9131 A Division of Sun Microsystems, Inc. Java™ Servlet API Specification Version 2.1a James Duncan Davidson with Suzanne Ahmed November 1998 Java Software Division OSGi Service Gateway Specification Release 1.0 May, 2000 Copyright © The Open Services Gateway Initiative (2000). All Rights Reserved. Implementation of certain elements of the Open Services Gateway Initiative (OSGI) Specification may be subject to third party intellectual property rights, including without limitation, patent rights (such a third party may or may not be a member of OSGi). OSGi is not responsible and shall not be held responsible in any manner for identifying or failing to identify any or all such third party intellectual property rights. This document and the information contained herein are provided on an "AS IS" basis and OSGI DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS AND ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL OSGI BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTIAL, PUNITIVE OR CONSEQUENTIAL DAMAGES OF ANY KIND IN CONNECTION WITH THIS DOCUMENT OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE. All Company, brand and product names may be trademarks that are the sole property of their respective owners. All rights reserved. OSGi Service Gateway Specification Release 1.0 http://curie.eng/OSGi/index.html (1 of 2) [4/27/2000 12:29:54 PM] 3Dienstag, 26. März 13
  • 4. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Where will Http Service Go ? § Servlet API Version § Web Application Descriptor Elements § Simpler Registration § Clarify Relationship between HttpContext and ServletContext § Diagnostic API (based on RFC 185 / Data Transfer Objects) 4 4Dienstag, 26. März 13
  • 5. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Requirements 1: Http Service Updates HS-1 The solution MUST define the relationship between the Http Service and Web Application specifications. HS-2 The solution MUST update the Http Service specification to refer to the latest Servlet API specification and define to what extend the Http Service provides support. HS-3 The solution MUST extend the HttpService service API to support Servlet registration with patterns as defined by the Servlet API specification (Section 12.2, Specification of Mappings, in the Servlet API 3.0 specification). This requirement aligns servlet registration to functionality provided by the Servlet API web application descriptor (web.xml). HS-4 The solution MUST extend the HttpService service API to support registration of Servlet API filters with patterns as defined by the Servlet API specification (Section 12.2, Specification of Mappings, in the Servlet API 3.0 specification) or referring to servlets by their names. This requirement aligns mapping filters to requests to functionality provided by the Servlet API web application descriptor (web.xml). HS-5 The solution MUST extend the HttpService service API to support registration of Servlet API listeners. HS-6 The solution MUST add support for error page configuration. HS-7 The solution MUST define how registered Servlets and Filters are named. HS-8 The solution MUST clarify ServletContext implementation in the HttpService for both standalone and bridged Http Service implementations. HS-9 The solution MUST clarify the ServletContext scope of Servlet API listeners registered through the HttpService. HS-10 The solution MAY specify support for scripted request processing. For example supporting JSP with Tag Libraries. HS-11 The solution MAY define how HttpService instances can be dynamically configured. HS-12 The solution MUST define service registration properties for the HttpService to reflect configuration of the service. 5 5Dienstag, 26. März 13
  • 6. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Requirements 2: Whiteboard Registration HS-13 The solution MUST define whiteboard registration of servlet services with the HttpService. HS-14 The solution MUST define whiteboard registration of filter services with the HttpService. HS-15 The solution MUST define whiteboard registration of servlet listener services with the HttpService. HS-16 The solution MUST define registration of OSGi HttpContext services used for Servlet and Filter registration. HS-17 The solution MUST define how servlets, filters, and servlet listener services are matched with HttpService services for registration. HS-18 The solution MUST support registration of static resources according to the extender pattern. HS-19 The solution MUST support registration of error pages according to the extender pattern. HS-20 The solution MUST define a capability for the osgi.extender namespace. Bundles providing resources and/or error pages can then require this capability. HS-21 The solution MUST define a capability for the whiteboard pattern registration in one of the standard namespaces (or a new namespace to be defined in the Chapter 135, Common Namespaces Specification). Bundles registering servlet, filter, and/or servlet listener services can then require this capability. 6 6Dienstag, 26. März 13
  • 7. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Servlet API Version § Which Servlet API to support/require ? § Servlet API 3.0 for the latest and greatest ? § Must not alienate Embedded Systems ! § Servlet API and the Platform § 2.4 requires Java 1.3 § 2.5 requires Java 5 § 3.0 requires Java 6 7 >= 2.4 7Dienstag, 26. März 13
  • 8. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Web Application Descriptor Elements 8 Servlet Filter Error Pages Event Listener EJB MIME mapping Replacements • EJB: Use Services • MIME mapping: Use HttpContext 8Dienstag, 26. März 13
  • 9. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Registration - Http Service 1.2 API 9 public interface HttpService { public void registerServlet(String alias, Servlet servlet, Dictionary initparams, HttpContext context) throws ServletException, NamespaceException; public void unregister(String alias); } Single path Prefix only Servlet or Resource ? Manage State Service Required Share ? 9Dienstag, 26. März 13
  • 10. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Registration - Http Service 1.2 Example 10 @Component(service = {}, property = "alias=/") public class SampleServletOld extends HttpServlet { private HttpService httpService; private String servletAlias; private boolean servletRegistered; @Activate private void activate(Map<String, Object> config) throws ServletException, NamespaceException { this.servletAlias = (String) config.get("alias"); this.httpService.registerServlet(this.servletAlias, this, null, null); this.servletRegistered = true; } @Deactivate private void deactivate() { if (this.servletRegistered) { this.httpService.unregister(servletAlias); } } @Reference(unbind = "unbindHttpService") private void bindHttpService(final HttpService httpService) { this.httpService = httpService; } private void unbindHttpService(final HttpService httpService) { if (this.httpService == httpService) { this.httpService = null; } } } Manage State Service Required 10Dienstag, 26. März 13
  • 11. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Registration - Whiteboard Pattern 11 @Component( service = Servlet.class, property = "osgi.http.whiteboard.pattern=/") public class SampleServletWhiteboard extends HttpServlet { } § No Http Service reference § No State Management 11Dienstag, 26. März 13
  • 12. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Http Context and Servlet Context 12 Common Servlet Context (e.g. from Servlet Container) Servlet Context 1 Servlet Context n Http Context 1 Http Context n Context Path Logging Version Attributes Resources HTTP Sessions Attributes Resources HTTP Sessions Authentication MIME Types Authentication MIME Types 12Dienstag, 26. März 13
  • 13. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Whiteboard Pattern Support Explained § Uses Servlet, Filter, HttpContext services § Registers with Http Service § Matches Servlet to HttpContext with context.name property 13 Servlet HttpContext Http Service context.name pattern Filter pattern 13Dienstag, 26. März 13
  • 14. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Http Service Whiteboard Properties 14 osgi.http.whiteboard. Servlet HttpContext Filter .pattern .context.name .context.shared .errorPage .service.target .prefix Registration Pattern n/a Registration Pattern Refers to HttpContext Identifies Refers to HttpContext n/a Shared across Bundles ? n/a Status Code Exception Type n/a n/a HttpService Selection n/a HttpService Selection Resource Prefix n/a n/a 14Dienstag, 26. März 13
  • 15. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Alias vs. Pattern 15 Http Service Servlet API Match Type /alias /prefix/* Prefix Match *.ext Extension Match „“ (empty) Context Root Match / Default Servlet /exact/match Exact Match § osgi.http.whiteboard.pattern Service Registration Property § String+: String, String[], Collection<String> 15Dienstag, 26. März 13
  • 16. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Application Events § Listeners are Services § Listener interface is Service Name § Supported Listeners depending on Servlet API Support § Whiteboard Registration § All Events from Http Service § Exception: ServletContextListener 16 16Dienstag, 26. März 13
  • 17. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Diagnostic API § ServletDTO[] getServlets(); § Map<String, String> getResources(); § FilterDTO[] getFilters(); § Map<Object, String> getErrorLocations(); 17 FilterDTO - String name; - String[] patterns; - ServletContextDTO servletContext; ServletDTO - String name; - String[] patterns; - String servletInfo; - ServletContextDTO servletContext; ServletContextDTO - String name; - String contextPath; - Map<String, Object> initParams; - Map<String, Object> attributes; 17Dienstag, 26. März 13
  • 18. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. What else ? § Resources § Replacement for HttpService.registerResources § org.osgi.service.http.Resource Servlet § osgi.http.whiteboard.pattern - String+ of URL patterns § osgi.http.whiteboard.prefix - String of name prefix § Http Service Registration Property § osgi.http.service.endpoints - String+ of endpoint URIs, e.g. http://127.0.0.1:4502 § Capability / Namespace § New namespace osgi.whiteboard § Whiteboard Capability: osgi.http 18 Provide-Capability: osgi.whiteboard; osgi.whiteboard="osgi.http"; uses:="javax.servlet"; version:Version="1.3" Require-Capability: osgi.whiteboard; filter:="(&(osgi.whiteboard=osgi.http)(version>=1.3))" 18Dienstag, 26. März 13
  • 19. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Good News 19 © 2013 OSGi Alliance All Rights Reserved. OSGi Early Draft 2013.03 4 March 2013 19Dienstag, 26. März 13
  • 20. © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Links § http://wiki.osgi.org/wiki/WebExperience § OSGi Early Access Draft 2013-03 § http://www.osgi.org/Download/File?url=/download/osgi-early-draft-2013-03.pdf § Discuss § mailto:osgi-dev@mail.osgi.org § OSGi Service Gateway Specification Releases 1.0 § http://www.osgi.org/Download/Release1 § OSGi Enterprise Release 5 § http://www.osgi.org/Download/Release5 20 20Dienstag, 26. März 13
  • 21. 1 Sign In: www.eclipsecon.org 2 Select Session Evaluate 3 Vote © 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Give Feedback on the Session 21 21Dienstag, 26. März 13