SlideShare a Scribd company logo
+
JBoss Web Services


   Alessio Soldano
alessio.soldano@jboss.com

  Principal Software Eng.
      JBoss - Red Hat

  September 20th, 2011
Who is Alessio?

●   JBoss WS[1] committer since early 2007
●   JBoss / Red Hat employee since end of 2007
●   JBoss Web Service Lead, 2008
●   JBoss AS[2], JBoss Wise[3] contributor
●   Current Red Hat representative at JSR-224 EG
    and W3C WS-ResourceAccess WG
●   Apache CXF[4] committer and PMC member

    [1] http://www.jboss.org/jbossws   [2] http://www.jboss.org/jbossas

    [3] http://www.jboss.org/wise      [4] http://cxf.apache.org
●   AS7 services

●   AS7 subsystems

                                 JBoss Web Services
JBoss WS
●

 ● Apache CXF integration

 ● Features




AS 7 Web Services extension
●

    ●   Model
    ●   Modules & classloading
Services

●   Almost everything is a service
●   Services are objects that can be started and stopped
●   Services can have dependencies on other services
●   Services can't start before their dependencies are
    not satisfied
●   Before stopping all dependent services will be
    stopped
●   Services can inject dependent services
Service examples

●   Of course core services, but also
        –   EJBs
        –   JNDI bindings
        –   Servlets
        –   Deployments
        –   Registries
●   Individually shutdown and restart with all
    dependencies being maintained
        –   e.g. XTS endpoints
Subsystems

●   A subsystem implements a “logical” area of the
    server
        –   subsystem:datasources
        –   subsystem:messaging
        –   subsystem:ejb3
        –   subsystem:webservices
●   The subsystem can provide user visible
    configuration
        –   datasource definitions
        –   web connector configurations
Subsystems

●   Custom subsystems can be implemented for
    functionality outside of the application server
●   The subsystem consist of an extension
        –   org.jboss.as.controller.Extension
●   Other components
        –   Schema
        –   Parsers
        –   OperationHandlers

●   Example: org.jboss.as.webservices extension
        –   Model
        –   Modules
What is JBoss WS?

●   “Just” a feature-rich JAX-WS compatible ws
    stack till early 2008...
        –   AS 4.x, AS 5.x target containers

●   ... a web services framework providing
    integration layers for 3rd party ws stacks on top
    of multiple JBoss AS versions
        –   CXF, Native and Metro stack
        –   AS 5.x, AS 6.x target containers

●   ... the interface and integration point of Apache
    CXF in JBoss application server
        –   AS 6.x, AS 7.x target containers
Apache CXF integration

●   Standards & specifications
●   NIH syndrome & wider community
●   Added value
●   Home-brew solutions for running CXF on JBossAS
    might work for specific usecases, but you...
        –   need to embed the stack in your apps
        –   will suffer from classloading issues
        –   can just use pojo endpoints
        –   have no webserviceref injection in ejb3
        –   loose additional Web Service Framework
              features ;-)
        –   ...
How it works - runtime

                                     Request flow



                                       WS-*         ...
 Endpoint servlet



                    RequestHandler




                                                          Invoker
                                                                    JBoss
                                         Apache CXF                  AS

                                               JAX-WS
                                        ...    handlers




                                     Response flow
How it works - deployment

●   POJO endpoint
    @WebService(...)               <web-app ...>
                                    <servlet>
    public class MyEndpoint {        <servlet-name>TestService</servlet-name>
      public String sayHello() {     <servlet-class>org.jboss.test.ws.jaxws.samples.MyEndpoint</servlet-class>
        return "Hello World!";      </servlet>
      }                             <servlet-mapping>
    }                                <servlet-name>TestService</servlet-name>
                                     <url-pattern>/*</url-pattern>
                                    </servlet-mapping>
                                   </web-app>



●   EJB3 endpoint                                                         ● Create metadata to
                                                                          deploy jboss-web app
    @WebService(...)                                                      ● Create CXF bus

    @Stateless                                                            ● Customize CXF bus

    public class MyEndpoint {                                             ● Start web app for

      public String sayHello() {                                            published endpoints
        return "Hello World!";
      }
    }
Demo

●   Basic WS endpoint deployment
        –   AS7 console
●   WS-Security UT Profile JAAS integration
        –   Policy driven approach
        –   AS7 / CXF security integration
            <subsystem xmlns="urn:jboss:domain:security:1.1">
              <security-domains>
                 <!-- ... other security domains ... -->
                 <security-domain name="JBossWS">
                    <authentication>
                         <login-module code="UsersRoles" flag="required">
                           <module-option name="usersProperties" value="jbossws-users.properties"/>
                           <module-option name="unauthenticatedIdentity" value="anonymous"/>
                           <module-option name="rolesProperties" value="jbossws-roles.properties"/>
                        </login-module>
                     </authentication>
                 </security-domain>
              </security-domains>
            </subsystem>
Links

●   WS documentation for AS7
        –   https://docs.jboss.org/author/display/JBWS
●   http://www.jboss.org/jbossws
●   http://jbossws.blogspot.com/
Thanks!




          Q&A

More Related Content

PDF
As7 web services - JUG Milan April 2012
PDF
April 2010 - JBoss Web Services
PPTX
Introduction to Wildfly 8 - Marchioni
PDF
JBoss at Work: Using JBoss AS 6
PPTX
Windows Azure Infrastructure as a Service (IaaS) Avançado
PDF
EAP6 performance Tuning
PPTX
Jboss App Server
PDF
WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.
As7 web services - JUG Milan April 2012
April 2010 - JBoss Web Services
Introduction to Wildfly 8 - Marchioni
JBoss at Work: Using JBoss AS 6
Windows Azure Infrastructure as a Service (IaaS) Avançado
EAP6 performance Tuning
Jboss App Server
WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.

What's hot (20)

PDF
JBoss Enterprise Application Platform 6 Troubleshooting
PPTX
Java Web services
PPT
J boss
PPT
Maven introduction in Mule
PPTX
JBoss AS 7
DOCX
Instruction on creating a cluster on jboss eap environment
PDF
JBoss started guide
PPT
Mule esb introduction
PDF
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
PDF
Global Scale ESB with Mule
PDF
JBoss EAP / WildFly, State of the Union
PDF
JBoss AS / EAP and Java EE6
PDF
JBoss AS 7 따라잡기
PDF
RESTful web service with JBoss Fuse
PPTX
Mule esb overview
TXT
Codedaftarisi
PDF
JBoss Snowdrop
PPTX
Jboss Tutorial Basics
PPTX
Introduction to mule esb
PPT
Introduction to mule Esbs
JBoss Enterprise Application Platform 6 Troubleshooting
Java Web services
J boss
Maven introduction in Mule
JBoss AS 7
Instruction on creating a cluster on jboss eap environment
JBoss started guide
Mule esb introduction
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
Global Scale ESB with Mule
JBoss EAP / WildFly, State of the Union
JBoss AS / EAP and Java EE6
JBoss AS 7 따라잡기
RESTful web service with JBoss Fuse
Mule esb overview
Codedaftarisi
JBoss Snowdrop
Jboss Tutorial Basics
Introduction to mule esb
Introduction to mule Esbs
Ad

Similar to JBoss AS7 Webservices (20)

PDF
JBossWS Project by Alessio Soldano
PDF
WildFly AppServer - State of the Union
PPTX
JBoss AS Upgrade
PPTX
Advance Java Topics (J2EE)
PPTX
AJppt.pptx
PDF
Shake Hooves With BeEF - OWASP AppSec APAC 2012
PDF
Integrating with SAP FIX and HL7
PDF
Java EE 6 & GlassFish = Less Code + More Power at CEJUG
PDF
Introduction to jsf2
PDF
jsf2 Notes
PDF
Java EE 6 & GlassFish = Less Code + More Power @ DevIgnition
PDF
Java EE 6 = Less Code + More Power
PDF
JBoss AS 7 - YaJUG - nov. 2012
PPTX
Java on Windows Azure (Cloud Computing Expo 2010)
PPTX
Enterprise service bus part 2
PDF
JavaEE6 my way
PDF
Play framework
PDF
MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)
PDF
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...
PDF
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
JBossWS Project by Alessio Soldano
WildFly AppServer - State of the Union
JBoss AS Upgrade
Advance Java Topics (J2EE)
AJppt.pptx
Shake Hooves With BeEF - OWASP AppSec APAC 2012
Integrating with SAP FIX and HL7
Java EE 6 & GlassFish = Less Code + More Power at CEJUG
Introduction to jsf2
jsf2 Notes
Java EE 6 & GlassFish = Less Code + More Power @ DevIgnition
Java EE 6 = Less Code + More Power
JBoss AS 7 - YaJUG - nov. 2012
Java on Windows Azure (Cloud Computing Expo 2010)
Enterprise service bus part 2
JavaEE6 my way
Play framework
MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Ad

More from JBug Italy (20)

PDF
JBoss Wise: breaking barriers to WS testing
PDF
Camel and JBoss
PDF
AS7 and CLI
PDF
Intro jbug milano_26_set2012
PDF
Faster & Greater Messaging System HornetQ zzz
PDF
Infinispan,Lucene,Hibername OGM
PDF
ODP
JBoss BRMS - The enterprise platform for business logic
KEY
JBoss AS7 Overview
PDF
Intro JBug Milano - January 2012
PDF
JBoss AS7
PDF
Intro JBug Milano - September 2011
ODP
All the cool stuff of JBoss BRMS
ODP
Infinispan and Enterprise Data Grid
PDF
Drools Introduction
PDF
September 2010 - Arquillian
PDF
September 2010 - Gatein
PDF
May 2010 - Infinispan
PDF
May 2010 - RestEasy
PDF
May 2010 - Drools flow
JBoss Wise: breaking barriers to WS testing
Camel and JBoss
AS7 and CLI
Intro jbug milano_26_set2012
Faster & Greater Messaging System HornetQ zzz
Infinispan,Lucene,Hibername OGM
JBoss BRMS - The enterprise platform for business logic
JBoss AS7 Overview
Intro JBug Milano - January 2012
JBoss AS7
Intro JBug Milano - September 2011
All the cool stuff of JBoss BRMS
Infinispan and Enterprise Data Grid
Drools Introduction
September 2010 - Arquillian
September 2010 - Gatein
May 2010 - Infinispan
May 2010 - RestEasy
May 2010 - Drools flow

Recently uploaded (20)

PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Modernizing your data center with Dell and AMD
PPTX
Cloud computing and distributed systems.
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
Big Data Technologies - Introduction.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
KodekX | Application Modernization Development
NewMind AI Weekly Chronicles - August'25 Week I
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Digital-Transformation-Roadmap-for-Companies.pptx
Unlocking AI with Model Context Protocol (MCP)
Modernizing your data center with Dell and AMD
Cloud computing and distributed systems.
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Mobile App Security Testing_ A Comprehensive Guide.pdf
The AUB Centre for AI in Media Proposal.docx
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Big Data Technologies - Introduction.pptx
Building Integrated photovoltaic BIPV_UPV.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
KodekX | Application Modernization Development

JBoss AS7 Webservices

  • 1. + JBoss Web Services Alessio Soldano alessio.soldano@jboss.com Principal Software Eng. JBoss - Red Hat September 20th, 2011
  • 2. Who is Alessio? ● JBoss WS[1] committer since early 2007 ● JBoss / Red Hat employee since end of 2007 ● JBoss Web Service Lead, 2008 ● JBoss AS[2], JBoss Wise[3] contributor ● Current Red Hat representative at JSR-224 EG and W3C WS-ResourceAccess WG ● Apache CXF[4] committer and PMC member [1] http://www.jboss.org/jbossws [2] http://www.jboss.org/jbossas [3] http://www.jboss.org/wise [4] http://cxf.apache.org
  • 3. AS7 services ● AS7 subsystems JBoss Web Services JBoss WS ● ● Apache CXF integration ● Features AS 7 Web Services extension ● ● Model ● Modules & classloading
  • 4. Services ● Almost everything is a service ● Services are objects that can be started and stopped ● Services can have dependencies on other services ● Services can't start before their dependencies are not satisfied ● Before stopping all dependent services will be stopped ● Services can inject dependent services
  • 5. Service examples ● Of course core services, but also – EJBs – JNDI bindings – Servlets – Deployments – Registries ● Individually shutdown and restart with all dependencies being maintained – e.g. XTS endpoints
  • 6. Subsystems ● A subsystem implements a “logical” area of the server – subsystem:datasources – subsystem:messaging – subsystem:ejb3 – subsystem:webservices ● The subsystem can provide user visible configuration – datasource definitions – web connector configurations
  • 7. Subsystems ● Custom subsystems can be implemented for functionality outside of the application server ● The subsystem consist of an extension – org.jboss.as.controller.Extension ● Other components – Schema – Parsers – OperationHandlers ● Example: org.jboss.as.webservices extension – Model – Modules
  • 8. What is JBoss WS? ● “Just” a feature-rich JAX-WS compatible ws stack till early 2008... – AS 4.x, AS 5.x target containers ● ... a web services framework providing integration layers for 3rd party ws stacks on top of multiple JBoss AS versions – CXF, Native and Metro stack – AS 5.x, AS 6.x target containers ● ... the interface and integration point of Apache CXF in JBoss application server – AS 6.x, AS 7.x target containers
  • 9. Apache CXF integration ● Standards & specifications ● NIH syndrome & wider community ● Added value ● Home-brew solutions for running CXF on JBossAS might work for specific usecases, but you... – need to embed the stack in your apps – will suffer from classloading issues – can just use pojo endpoints – have no webserviceref injection in ejb3 – loose additional Web Service Framework features ;-) – ...
  • 10. How it works - runtime Request flow WS-* ... Endpoint servlet RequestHandler Invoker JBoss Apache CXF AS JAX-WS ... handlers Response flow
  • 11. How it works - deployment ● POJO endpoint @WebService(...) <web-app ...> <servlet> public class MyEndpoint { <servlet-name>TestService</servlet-name> public String sayHello() { <servlet-class>org.jboss.test.ws.jaxws.samples.MyEndpoint</servlet-class> return "Hello World!"; </servlet> } <servlet-mapping> } <servlet-name>TestService</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping> </web-app> ● EJB3 endpoint ● Create metadata to deploy jboss-web app @WebService(...) ● Create CXF bus @Stateless ● Customize CXF bus public class MyEndpoint { ● Start web app for public String sayHello() { published endpoints return "Hello World!"; } }
  • 12. Demo ● Basic WS endpoint deployment – AS7 console ● WS-Security UT Profile JAAS integration – Policy driven approach – AS7 / CXF security integration <subsystem xmlns="urn:jboss:domain:security:1.1"> <security-domains> <!-- ... other security domains ... --> <security-domain name="JBossWS"> <authentication> <login-module code="UsersRoles" flag="required"> <module-option name="usersProperties" value="jbossws-users.properties"/> <module-option name="unauthenticatedIdentity" value="anonymous"/> <module-option name="rolesProperties" value="jbossws-roles.properties"/> </login-module> </authentication> </security-domain> </security-domains> </subsystem>
  • 13. Links ● WS documentation for AS7 – https://docs.jboss.org/author/display/JBWS ● http://www.jboss.org/jbossws ● http://jbossws.blogspot.com/
  • 14. Thanks! Q&A