Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

Geronimo 2.0 Web Services support

This table will be below is used to track the progress of the Apache Geronimo Java EE 5.0 Web Services implementation.  This table is needed in addition to the Java EE 5 Report card Card as this table shows the current status of the detailed functions. The function items are obtained from JSR 109 only and don't cover any other JSRs needed for web services. The assumption is based on the assumption that we only need to implment implement JSR 109 for to integrate either Axis2 or CXF into Geronimo. excerpt

JAX-WS

Web Service Support Function Items

Axis2

CXF

Supports WSDL 1.1

(plus) (tick) (plus)

(tick)

Supports SOAP 1.1 over HTTP

(plus) (tick) Default (plus)

(tick) Default

Supports SOAP 1.2 over HTTP

 (warning) G2985  

(warning) G2985

Supports XML over HTTP

 (warning) G2985  

(warning) G2985

Supports HTTPS SOAP binding

 

 

Supports SOAP 1.1 over HTTP with MTOM enabled

 (warning) G2985  

(warning) G2985

Supports SOAP 1.2 over HTTP with MTOM enabled

(warning) G2985

(warning) G2985

 

 

 

POJO support - JAX-WS 2.0

 

 

Supports web service deployment (new deployment)

(plus) (tick)(plus)

(tick)

Supports web service deployment (expose existing deployed Java EE components as a web service)

  Jarek

 

Jarek

Supports optional web.xml file

(plus) G2986

(plus)

Optional web.xml - ServiceName attribute of the webservice annotation prefixed with "/" maps to <url-pattern> element in Supports web.xml is optional

 (tick) 

(tick)

Supports optional wsdl is optional

(plus)

file

Axis2 (question) G2988

(tick) (plus)

Supports javax.jws.WebService annotation

(plus)(warning)

(plus)(warning)

Supports javax.xml.ws.WebServiceProvider annotation

 (warning) G2987  

(warning) G2987

Supports web service annotation without web service descriptor file

 (tick) 

(tick)

Supports web service descriptor file without annotation  

Lin - need to check spec on this

 

Supports web service annotation with web service descriptor file - web service deployment descriptor file overide override or enhance web service annotations

(plus)(warning)

 (tick)

SEI is not required

 

 

For servlet based endpoints using web service annotation, enforce full qualified name of the service implmentation bean class must be used as <servlet-link> element in web.xml

 

 

ServiceName attribute of the webservice annotation prefixed with "/" maps to <url-pattern> element in web.xml

 

 

deployment a webservice without SEI

(tick)

(tick)

webservice doesn't not have to implement SEI when there is one.

G2987

G2987

No more than 1 servlet mapping should be specified and the url-pattern must be an exact match pattern.

 

 

Only methods annotated with @WebMethod in the service implmentation implementation bean are exposed to the client

 G2987 

(tick)

Supports optional @PostConstruct or , @PreDestroy annotation annotations for lifecycle event callbacks. (p44)

 (tick) 

(tick)

Supports @Resource annotation to access message context and security info WebServiceContext (p44)

 

(tick)

(tick)

Injects @EJB, @WebServiceRef, and other @Resource annotations

(tick)

(tick)  

Allows a developer able to specify protocol binding on a web service endpoint by using javax.xml.ws.BindingType annotation

 

axis2.GeronimoHandlerChainBuilder needs update

(plus)  

Able to ignore JAX-RPC mapping file for JAX-WS projects (p47)

 

 

Annotated JAX-WS components may be mixed with deployment descriptor based JAX-RPC components in a module (p47)

 

 

(tick)

(tick)

Supports OASIS XML Cataglos Catalogs 1.1 specification to be used to resolve web service description document (wsdl/xsd) (p47)

 G2990 

(plus)

Supports HandlerChian HandlerChain (both logical and protocol types)

  Axis2 (question)AXIS2-2218

 

  - handlers must be able to transform the SOAP header

 

Axis2 (question)AXIS2-2218

(warning)  

  - handlers must be able to transform just parts of the body

 

Axis2 (question)AXIS2-2218

(warning)  

  - handlers must be able to just read a message where no additions/modifications to the message is made

 

are made

Axis2 (question)AXIS2-2218

(warning)

  - handler chains must be properly filtered by service name, port name or protocol binding information

Axis2 (question)AXIS2-2218

(tick) #cxf1  

  - Supports jacaxjavax.jws.HandlerChain annotation

(question) AXIS2-2218

(tick) #cxf2

  - The handler-chain element in deployment descriptor overwrites the @HandlerChain annotation

 

and the order of the handlers is maintained

(question) AXIS2-2218

(tick)  

  - Supports handler run after the container has performed the security constraint checks or method level authorization

 

Axis2 (question)AXIS2-2218

 

  - Supports optional @PostConstruct, @PreDestroy annotations for lifecycle event callbacks

(tick)

(tick)  

  - a handler may access the env-entry-names and env-entrys of the component by JNDI lookup .

 

 

  -the handler-chain in DD can be processed and the ordering of the handler must be maintained.

 

 

or @Resource injection

Axis2 (question)AXIS2-2218

(tick)

Publish the service-ref WSDL (getWsdlLocation method is available for use.)

(plus) G2987

(plus) G2987

supports service-ref overwrite

G2991

(tick)

Publish the service-ref WSDL

 

 

Publish the deployed WSDL

(plus) G2988 (plus)

(tick)

Make the required service interface implmentation avail implementation available at the JNDI namespace location java:comp/env/service-ref-name. (p135)

 (plus) 

(plus)

Deployment time binding info (for example, bind port-component with port-component-link)

  ask Jeff

 

Security - basic auth

 (plus) G2987 

(plus) G2987

Security - symmetric HTTPS

 

 

 

 

 

POJO support - JAX-RPC 1.1

 

 

(plus) G2987

(plus) G2987 JAX-RPC 1.1 based web service apps should continue work and routed to Axis1

 

 

 

 

 

EJB Support

 

 

Supports javax.ejb.stateless Stateless annotation

 G2992 

(plus)

Supports optional deployment descriptor file (ejb-jar.xml)

 (plus) 

(plus)

Supports optional wsdl is optional file

 (tick) 

(tick)

Supports javax.jws.WebService annotation

 (tick) 

(tick)

Supports javax.xml.ws.WebServiceProvider annotation

  

(warning)

Supports web service annotation without web service descriptor file

  

(tick)

Supports web service descriptor file without annotation

 

 

Supports web service annotation with web service descriptor file - web service deployment descriptor file overide override or enhance web service annotations

 (plus) 

(plus)

Supports optional @PostConstruct or @PreDestroy annotation for lifecycle event callbacks. (p44)

 

 

Supports @Resource annotation to access message context and security info (p44)

 

 

Allows a developer able to specify protocol binding on a web service endpoint by using javax.xml.ws.BindingType annotation

 

 

Supports HandlerChian (both logical and protocol types)

  Axis2 AXIS2-2218

 

  -handlers must be able to transform the SOAP header

  Axis2 (question)

 

  -handlers must be able to transform just parts of the body

  Axis2 (question)

 

  -handlers must be able to just read a message where no additions/modifications to the message is made

  Axis2 (question)

 

  -Supports jacaxjavax.jws.HandlerChain annotation

  Axis2 (question)

 

  -Supports handler run after the container has performed the security constraint checks or method level authorization

  Axis2 (question)

 

  -a handler may access the env-entry-names and env-entrys by JNDI lookup.

  Axis2 (question)

 

  -the handler-chain in DD can be processed and the ordering of the handler must be maintained .

Axis2 (question)

 

Publish the service-ref WSDL

 

 

Publish the deployed WSDL

 (plus)

 

Make the required service interface implmentation implementation avail at the JNDI namespace location java:comp/env/service-ref-name. (p135)

 

 

Seployment Deployment time binding info (for example, bind port-component with port-component-link)

 

 

Security - basic auth

 

 

Security - symmetric HTTPS

 

 

 

 

 

Client support  

AXIS2-2452

 

May reside in a Java EE container (e.g. an EJB that uses a web service)

 (plus) 

(plus)

May reside in a Java EE client container

 

 

Could use J2SE or J2ME

 

 

(plus) AXIS2-2353

(plus)

Allows the client to locate a service interface by using JNDI APIs

(plus)

(plus)

 

 

 

JAX-RPC

Web Service Support Function Items

Axis2

CXF

POJO support

 

 

JAX-RPC 1.1 based web service applications should continue to work (handled by Axis1)

(plus)

(plus)

 

Allows the client to call any SOAP 1.1, 1.2 based web services via HTTP 1.1 or HTTPS SOAP binding

 

 

 

EJB Support

 

  Packaging - CXF or Axis2

JAX-RPC 1.1 based web service applications should continue to work (handled by Axis1)

 

 

Provide CXF and Axis2 as geronimo plugins?

 

 

...

titleNotes

...

  • cxf1 CXF1: Handler chain filtering ignores namespaces for service or port name.
  • cxf2 CXF2: The file specified by the @HandlerChain annotation can only be read from within a classloader of the module.
  • cxf3 CXF3: Automatic @WebServiceRef/@WebServiceRefs dependency injection is not yet supported in Geronimo but user can specify the Web Service reference via service-ref element in the deployment descriptor.

...

(tick) Developed and tested.
(plus) Developed but needs more testing.
(warning) Not tested but JAX-WS engine support it.
(question) Incomplete functionality.