SlideShare una empresa de Scribd logo
1 de 14
Descargar para leer sin conexión
+
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

Más contenido relacionado

La actualidad más candente

JBoss Enterprise Application Platform 6 Troubleshooting
JBoss Enterprise Application Platform 6 TroubleshootingJBoss Enterprise Application Platform 6 Troubleshooting
JBoss Enterprise Application Platform 6 TroubleshootingAlexandre Cavalcanti
 
Java Web services
Java Web servicesJava Web services
Java Web servicesvpulec
 
Maven introduction in Mule
Maven introduction in MuleMaven introduction in Mule
Maven introduction in MuleShahid Shaik
 
Instruction on creating a cluster on jboss eap environment
Instruction on creating a cluster on jboss eap environmentInstruction on creating a cluster on jboss eap environment
Instruction on creating a cluster on jboss eap environmentMadhusudan Pisipati
 
JBoss started guide
JBoss started guideJBoss started guide
JBoss started guidefranarayah
 
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3 Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3 Skills Matter
 
Global Scale ESB with Mule
Global Scale ESB with MuleGlobal Scale ESB with Mule
Global Scale ESB with MuleAndrew Kennedy
 
JBoss EAP / WildFly, State of the Union
JBoss EAP / WildFly, State of the UnionJBoss EAP / WildFly, State of the Union
JBoss EAP / WildFly, State of the UnionDimitris Andreadis
 
JBoss AS 7 따라잡기
JBoss AS 7 따라잡기JBoss AS 7 따라잡기
JBoss AS 7 따라잡기jbugkorea
 
RESTful web service with JBoss Fuse
RESTful web service with JBoss FuseRESTful web service with JBoss Fuse
RESTful web service with JBoss Fuseejlp12
 
Introduction to mule esb
Introduction to mule esbIntroduction to mule esb
Introduction to mule esbKhasim Cise
 
Introduction to mule Esbs
Introduction to mule EsbsIntroduction to mule Esbs
Introduction to mule EsbsPrabhat gangwar
 

La actualidad más candente (20)

JBoss Enterprise Application Platform 6 Troubleshooting
JBoss Enterprise Application Platform 6 TroubleshootingJBoss Enterprise Application Platform 6 Troubleshooting
JBoss Enterprise Application Platform 6 Troubleshooting
 
Java Web services
Java Web servicesJava Web services
Java Web services
 
J boss
J bossJ boss
J boss
 
Maven introduction in Mule
Maven introduction in MuleMaven introduction in Mule
Maven introduction in Mule
 
JBoss AS 7
JBoss AS 7JBoss AS 7
JBoss AS 7
 
Instruction on creating a cluster on jboss eap environment
Instruction on creating a cluster on jboss eap environmentInstruction on creating a cluster on jboss eap environment
Instruction on creating a cluster on jboss eap environment
 
JBoss started guide
JBoss started guideJBoss started guide
JBoss started guide
 
Mule esb introduction
Mule esb introductionMule esb introduction
Mule esb introduction
 
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3 Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
 
Global Scale ESB with Mule
Global Scale ESB with MuleGlobal Scale ESB with Mule
Global Scale ESB with Mule
 
JBoss EAP / WildFly, State of the Union
JBoss EAP / WildFly, State of the UnionJBoss EAP / WildFly, State of the Union
JBoss EAP / WildFly, State of the Union
 
JBoss AS / EAP and Java EE6
JBoss AS / EAP and Java EE6JBoss AS / EAP and Java EE6
JBoss AS / EAP and Java EE6
 
JBoss AS 7 따라잡기
JBoss AS 7 따라잡기JBoss AS 7 따라잡기
JBoss AS 7 따라잡기
 
RESTful web service with JBoss Fuse
RESTful web service with JBoss FuseRESTful web service with JBoss Fuse
RESTful web service with JBoss Fuse
 
Mule esb overview
Mule esb overviewMule esb overview
Mule esb overview
 
Codedaftarisi
CodedaftarisiCodedaftarisi
Codedaftarisi
 
JBoss Snowdrop
JBoss SnowdropJBoss Snowdrop
JBoss Snowdrop
 
Jboss Tutorial Basics
Jboss Tutorial BasicsJboss Tutorial Basics
Jboss Tutorial Basics
 
Introduction to mule esb
Introduction to mule esbIntroduction to mule esb
Introduction to mule esb
 
Introduction to mule Esbs
Introduction to mule EsbsIntroduction to mule Esbs
Introduction to mule Esbs
 

Destacado

HornetQ Presentation On JBoss World 2009
HornetQ Presentation On JBoss World 2009HornetQ Presentation On JBoss World 2009
HornetQ Presentation On JBoss World 2009jarfield
 
Interoperabilidad en android con APIs REST/JSON
Interoperabilidad en android con APIs REST/JSONInteroperabilidad en android con APIs REST/JSON
Interoperabilidad en android con APIs REST/JSONGDG Cali
 
JBoss Data Grid Tech Lab
JBoss Data Grid Tech LabJBoss Data Grid Tech Lab
JBoss Data Grid Tech LabUgo Landini
 
APIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API LanguagesAPIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API LanguagesJerome Louvel
 
CRUD Is Not REST! Hypermedia For Y'All!
CRUD Is Not REST! Hypermedia For Y'All!CRUD Is Not REST! Hypermedia For Y'All!
CRUD Is Not REST! Hypermedia For Y'All!apotonick
 
Faster & Greater Messaging System HornetQ zzz
Faster & Greater Messaging System HornetQ zzzFaster & Greater Messaging System HornetQ zzz
Faster & Greater Messaging System HornetQ zzzJBug Italy
 
Cv 2014 richard_gennaro_ eur_it
Cv 2014 richard_gennaro_ eur_itCv 2014 richard_gennaro_ eur_it
Cv 2014 richard_gennaro_ eur_itRichard Gennaro
 
Servicio y Consumo de Servicios REST en PHP
Servicio y Consumo de Servicios REST en PHPServicio y Consumo de Servicios REST en PHP
Servicio y Consumo de Servicios REST en PHPDavid J. Brenes
 
Rest api design by george reese
Rest api design by george reeseRest api design by george reese
Rest api design by george reesebuildacloud
 

Destacado (10)

HornetQ Presentation On JBoss World 2009
HornetQ Presentation On JBoss World 2009HornetQ Presentation On JBoss World 2009
HornetQ Presentation On JBoss World 2009
 
Interoperabilidad en android con APIs REST/JSON
Interoperabilidad en android con APIs REST/JSONInteroperabilidad en android con APIs REST/JSON
Interoperabilidad en android con APIs REST/JSON
 
JBoss Data Grid Tech Lab
JBoss Data Grid Tech LabJBoss Data Grid Tech Lab
JBoss Data Grid Tech Lab
 
APIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API LanguagesAPIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API Languages
 
CRUD Is Not REST! Hypermedia For Y'All!
CRUD Is Not REST! Hypermedia For Y'All!CRUD Is Not REST! Hypermedia For Y'All!
CRUD Is Not REST! Hypermedia For Y'All!
 
Faster & Greater Messaging System HornetQ zzz
Faster & Greater Messaging System HornetQ zzzFaster & Greater Messaging System HornetQ zzz
Faster & Greater Messaging System HornetQ zzz
 
Cv 2014 richard_gennaro_ eur_it
Cv 2014 richard_gennaro_ eur_itCv 2014 richard_gennaro_ eur_it
Cv 2014 richard_gennaro_ eur_it
 
Servicio y Consumo de Servicios REST en PHP
Servicio y Consumo de Servicios REST en PHPServicio y Consumo de Servicios REST en PHP
Servicio y Consumo de Servicios REST en PHP
 
Rest api design by george reese
Rest api design by george reeseRest api design by george reese
Rest api design by george reese
 
Pub/Sub Basics
Pub/Sub BasicsPub/Sub Basics
Pub/Sub Basics
 

Similar a JBoss AS7 web services

JBossWS Project by Alessio Soldano
JBossWS Project by Alessio SoldanoJBossWS Project by Alessio Soldano
JBossWS Project by Alessio SoldanoJava User Group Roma
 
WildFly AppServer - State of the Union
WildFly AppServer - State of the UnionWildFly AppServer - State of the Union
WildFly AppServer - State of the UnionDimitris Andreadis
 
JBoss AS Upgrade
JBoss AS UpgradeJBoss AS Upgrade
JBoss AS Upgradesharmami
 
Advance Java Topics (J2EE)
Advance Java Topics (J2EE)Advance Java Topics (J2EE)
Advance Java Topics (J2EE)slire
 
Shake Hooves With BeEF - OWASP AppSec APAC 2012
Shake Hooves With BeEF - OWASP AppSec APAC 2012Shake Hooves With BeEF - OWASP AppSec APAC 2012
Shake Hooves With BeEF - OWASP AppSec APAC 2012Christian Frichot
 
Integrating with SAP FIX and HL7
Integrating with SAP FIX and HL7Integrating with SAP FIX and HL7
Integrating with SAP FIX and HL7WSO2
 
Java EE 6 & GlassFish = Less Code + More Power at CEJUG
Java EE 6 & GlassFish = Less Code + More Power at CEJUGJava EE 6 & GlassFish = Less Code + More Power at CEJUG
Java EE 6 & GlassFish = Less Code + More Power at CEJUGArun Gupta
 
Introduction to jsf2
Introduction to jsf2Introduction to jsf2
Introduction to jsf2Rajiv Gupta
 
Java EE 6 & GlassFish = Less Code + More Power @ DevIgnition
Java EE 6 & GlassFish = Less Code + More Power @ DevIgnitionJava EE 6 & GlassFish = Less Code + More Power @ DevIgnition
Java EE 6 & GlassFish = Less Code + More Power @ DevIgnitionArun Gupta
 
Java EE 6 = Less Code + More Power
Java EE 6 = Less Code + More PowerJava EE 6 = Less Code + More Power
Java EE 6 = Less Code + More PowerArun Gupta
 
JBoss AS 7 - YaJUG - nov. 2012
JBoss AS 7 - YaJUG - nov. 2012JBoss AS 7 - YaJUG - nov. 2012
JBoss AS 7 - YaJUG - nov. 2012Alexis Hassler
 
Java on Windows Azure (Cloud Computing Expo 2010)
Java on Windows Azure (Cloud Computing Expo 2010)Java on Windows Azure (Cloud Computing Expo 2010)
Java on Windows Azure (Cloud Computing Expo 2010)David Chou
 
MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)
MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)
MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)Daniel Bryant
 
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...Arun Gupta
 
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)Arrow Consulting & Design
 

Similar a JBoss AS7 web services (20)

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

Último

CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
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
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
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
 

Último (20)

CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
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...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
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
 

JBoss AS7 web services

  • 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