SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Downloaden Sie, um offline zu lesen
+
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

Weitere ähnliche Inhalte

Was ist angesagt?

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
 

Was ist angesagt? (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
 

Andere mochten auch

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
 

Andere mochten auch (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
 

Ähnlich wie 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
 

Ähnlich wie 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)
 

Kürzlich hochgeladen

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 

Kürzlich hochgeladen (20)

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 

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