Jump to content

Apache Axis2: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
m Ambas palavras tem o mesmo significado.
Fraliuc2 (talk | contribs)
addition of citiation, remotion of promotional content, briefly updating
Line 2: Line 2:
{{Advert|date=October 2019}}
{{Advert|date=October 2019}}
{{Update||24 January 2016|date=January 2016}}
{{Update||24 January 2016|date=January 2016}}
{{Infobox software
{{Infobox software
| name = Apache Axis2
| name = Apache Axis2
| logo = [[Image:Apache Axis2 Logo.jpg|150px|Apache Axis2 Logo]]
| logo = [[Image:Apache Axis2 Logo.jpg|150px|Apache Axis2 Logo]]
| screenshot =
| screenshot =
| caption = Apache Axis2 Logo
| caption = Apache Axis2 Logo
| developer = [[Apache Software Foundation]]
| developer = [[Apache Software Foundation]]
| latest release version = 1.8.2
| latest release version = 1.8.2
| latest release date = {{release date|2022|07|21}}
| latest release date = {{release date|2022|07|14}}
| operating system = [[Cross-platform]]
| operating system = [[Cross-platform]]
| programming language = [[C (programming language)|C]], [[Java (programming language)|Java]]
| programming language = [[C (programming language)|C]], [[Java (programming language)|Java]]
| genre = [[Web service]]
| genre = [[Web service]]
| license = [[Apache License 2.0]]
| license = [[Apache License 2.0]]
| website = {{URL|http://axis.apache.org/axis2/java/core/}}
| website = {{URL|http://axis.apache.org/axis2/java/core/}}
}}
}}
'''Apache Axis2''' is a [[web service]] engine. It is a complete redesign and re-write of the widely used [[Apache Axis]] [[SOAP]] stack. Implementations of Axis2 are available in [[Java (programming language)|Java]] and [[C (programming language)|C]].
'''Apache Axis2''' is a [[web service]] engine. It is a complete redesign and re-write of the widely used [[Apache Axis]] [[SOAP]] stack. Implementations of Axis2 are available in [[Java (programming language)|Java]] and [[C (programming language)|C]].
Line 21: Line 21:


==Why Apache Axis2==
==Why Apache Axis2==
A new architecture for Axis2 was introduced during the August 2004 Axis2 Summit in Colombo, Sri Lanka. The new architecture on which Axis2 is based is more flexible, efficient and configurable in comparison to Axis1.x architecture. Some well-established concepts from Axis 1.x, like handlers etc., have been preserved in the new architecture.
A new architecture for Axis2 was introduced during the August 2004 Axis2 Summit in Colombo, Sri Lanka. Some concepts from Axis 1.x, like handlers etc., have been preserved in the new architecture.<ref>{{Cite web |title=axis apache |url=https://axis.apache.org/axis2/java/core/download.cgi}}</ref>


Apache Axis2 supports SOAP 1.1 and SOAP 1.2, and it has integrated support for the widely popular [[Representational state transfer|REST]] style of Web services. The same business-logic implementation can offer both a WS-* style interface as well as a [[REST]]/[[Plain Old XML|POX]] style interface simultaneously.
Apache Axis2 supports SOAP 1.1 and SOAP 1.2, and it has integrated support for the [[Representational state transfer|REST]] style of Web services. The same business-logic implementation can offer both a WS-* style interface as well as a [[REST]]/[[Plain Old XML|POX]] style interface simultaneously.


Axis2/Java has support for [[Spring Framework]].
Axis2/Java has support for [[Spring Framework]].
Line 34: Line 34:
==Axis2 Features==
==Axis2 Features==
Apache Axis2 includes support for following standards:
Apache Axis2 includes support for following standards:
*[[WS-ReliableMessaging|WS - ReliableMessaging]] - Via [[Apache Sandesha2]]
*[[WS-ReliableMessaging|WS - ReliableMessaging]] -<ref>{{Cite web |title=axis apache |url=https://axis.apache.org/axis2/c/sandesha/}}</ref>
*[[WS-Coordination|WS - Coordination]] - Via [[Apache Kandula2]]
*[[WS-Coordination|WS - Coordination]] - Via Apache Kandula2
*[[WS-AtomicTransaction|WS - AtomicTransaction]] - Via Apache Kandula2
*[[WS-AtomicTransaction|WS - AtomicTransaction]] - Via Apache Kandula2
*[[WS-SecurityPolicy|WS - SecurityPolicy]] - Via [[Apache Rampart]]
*[[WS-SecurityPolicy|WS - SecurityPolicy]] - Via [[Apache Rampart]]
Line 46: Line 46:


Below a list of features and selling points cited from the Apache axis site:
Below a list of features and selling points cited from the Apache axis site:
*'''Speed''' - Axis2 uses its own object model and [[StAX|StAX (Streaming API for XML)]] parsing to achieve significantly greater speed than earlier versions of Apache Axis.
*'''Speed''' - Axis2 uses its own object model and [[StAX|StAX (Streaming API for XML)]]
*'''Low memory foot print''' - Axis2 was designed ground-up keeping low memory foot print in mind.
*'''Low memory foot print''' - Axis2 was designed ground-up keeping low memory foot print in mind.
*'''AXIOM''' {{Anchor|Axiom}} - Axis2 comes with its own light-weight object model, [https://ws.apache.org/axiom/ AXIOM], for message processing which is extensible, optimized for performance, and simplified for developers.
*'''AXIOM''' {{Anchor|Axiom}} - Axis2 comes with its own light-weight object model, [https://ws.apache.org/axiom/ AXIOM]
*'''Hot Deployment''' - Axis2 is equipped with the capability of deploying Web services and handlers while the system is up and running. In other words, new services can be added to the system without having to shut down the server. Simply drop the required Web service archive into the services directory in the repository, and the deployment model will automatically deploy the service and make it available for use.
*'''Hot Deployment''' - Axis2 is equipped with the capability of deploying Web services and handlers while the system is up and running.
*'''Asynchronous Web services''' - Axis2 now supports asynchronous Web services and asynchronous Web services invocation using non-blocking clients and transports.
*'''Asynchronous Web services''' - Axis2 now supports asynchronous Web services and asynchronous Web services invocation using non-blocking clients and transports.
*'''MEP Support''' - Axis2 now comes handy with the flexibility to support Message Exchange Patterns (MEPs) with in-built support for basic MEPs defined in [[Web Services Description Language|WSDL]] 2.0.
*'''MEP Support''' - Axis2 now comes handy with the flexibility to support Message Exchange Patterns (MEPs) with in-built support for basic MEPs defined in [[Web Services Description Language|WSDL]] 2.0.
*'''Flexibility''' - The Axis2 architecture gives the developer complete freedom to insert extensions into the engine for custom header processing, system management, and anything else you can imagine.
*'''Flexibility''' - The Axis2 architecture gives the developer complete freedom to insert extensions into the engine for custom header processing, system management, and anything else you can imagine.
*'''Stability''' - Axis2 defines a set of published interfaces which change relatively slowly compared to the rest of Axis.
*'''Stability''' - Axis2 defines a set of published interfaces
*'''Component-oriented Deployment''' - You can easily define reusable networks of Handlers to implement common patterns of processing for your applications, or to distribute to partners.
*'''Component-oriented Deployment''' - You can define reusable networks of Handlers to implement common patterns of processing for your applications, or to distribute to partners.
*'''Transport Framework''' - We have a clean and simple abstraction for integrating and using Transports (i.e., senders and listeners for SOAP over various protocols such as SMTP, FTP, [[message-oriented middleware]], etc.), and the core of the engine is completely transport-independent.
*'''Transport Framework''' - We have a clean and simple abstraction for integrating and using Transports (i.e., senders and listeners for SOAP over various protocols such as SMTP, FTP, [[message-oriented middleware]], etc.), and the core of the engine is completely transport-independent.
*'''WSDL support''' - Axis2 supports the [[Web Services Description Language]], version 1.1 and 2.0, which allows you to easily build stubs to access remote services, and also to automatically export machine-readable descriptions of your deployed services from Axis2.
*'''WSDL support''' - Axis2 supports the [[Web Services Description Language]], version 1.1 and 2.0, which allows you to easily build stubs to access remote services, and also to automatically export machine-readable descriptions of your deployed services from Axis2.
Line 74: Line 74:


==Axis2 Books==
==Axis2 Books==
*Axis 2 knowledge base<ref>{{Cite web |title=axis apache |url=https://axis.apache.org/axis2/java/core/articles.html}}</ref>
*Quickstart Apache Axis2.


==External links==
==External links==

Revision as of 16:15, 16 November 2022

Apache Axis2
Developer(s)Apache Software Foundation
Stable release
1.8.2 / July 14, 2022 (2022-07-14)
Repository
Written inC, Java
Operating systemCross-platform
TypeWeb service
LicenseApache License 2.0
Websiteaxis.apache.org/axis2/java/core/

Apache Axis2 is a web service engine. It is a complete redesign and re-write of the widely used Apache Axis SOAP stack. Implementations of Axis2 are available in Java and C.

Axis2 provides the capability to add Web services interfaces to Web applications. It can also function as a standalone application server.

Why Apache Axis2

A new architecture for Axis2 was introduced during the August 2004 Axis2 Summit in Colombo, Sri Lanka. Some concepts from Axis 1.x, like handlers etc., have been preserved in the new architecture.[1]

Apache Axis2 supports SOAP 1.1 and SOAP 1.2, and it has integrated support for the REST style of Web services. The same business-logic implementation can offer both a WS-* style interface as well as a REST/POX style interface simultaneously.

Axis2/Java has support for Spring Framework.

Axis2/C is a high-performance Web services implementation. It has been implemented with portability and ability to be embedded or hosted in Apache Httpd, Microsoft IIS or Axis Http Server. See article about Apache Axis2/C Performance (2008). Latest release occurred on 2009 .

Axis2 came with many new features, enhancements and industry specification implementations. Key features offered include:

Axis2 Features

Apache Axis2 includes support for following standards:

Below a list of features and selling points cited from the Apache axis site:

  • Speed - Axis2 uses its own object model and StAX (Streaming API for XML)
  • Low memory foot print - Axis2 was designed ground-up keeping low memory foot print in mind.
  • AXIOM - Axis2 comes with its own light-weight object model, AXIOM
  • Hot Deployment - Axis2 is equipped with the capability of deploying Web services and handlers while the system is up and running.
  • Asynchronous Web services - Axis2 now supports asynchronous Web services and asynchronous Web services invocation using non-blocking clients and transports.
  • MEP Support - Axis2 now comes handy with the flexibility to support Message Exchange Patterns (MEPs) with in-built support for basic MEPs defined in WSDL 2.0.
  • Flexibility - The Axis2 architecture gives the developer complete freedom to insert extensions into the engine for custom header processing, system management, and anything else you can imagine.
  • Stability - Axis2 defines a set of published interfaces
  • Component-oriented Deployment - You can define reusable networks of Handlers to implement common patterns of processing for your applications, or to distribute to partners.
  • Transport Framework - We have a clean and simple abstraction for integrating and using Transports (i.e., senders and listeners for SOAP over various protocols such as SMTP, FTP, message-oriented middleware, etc.), and the core of the engine is completely transport-independent.
  • WSDL support - Axis2 supports the Web Services Description Language, version 1.1 and 2.0, which allows you to easily build stubs to access remote services, and also to automatically export machine-readable descriptions of your deployed services from Axis2.
  • Add-ons - Several Web services specifications have been incorporated including WSS4J for security (Apache Rampart), Sandesha for reliable messaging, Kandula which is an encapsulation of WS-Coordination, WS-AtomicTransaction and WS-BusinessActivity.
  • Composition and Extensibility - Modules and phases improve support for composability and extensibility. Modules support composability and can also support new WS-* specifications in a simple and clean manner. They are however not hot deployable as they change the overall behavior of the system.

Axis2 Modules

Axis2 modules provide QoS features like security, reliable messaging, etc.

Axis2 Books

  • Axis 2 knowledge base[3]
  • Apache Axis Homepage at the Apache Software Foundation
  • Apache Axis2/Java at the Apache Software Foundation
  • Apache Axis2/C at the Apache Software Foundation
  • Apache Axis2 Module Page
  • Web services using Apache Axis2
  • How to run an Axis2 client running against a Windows Web Server - Rob Austin
  • "Axis2, Middleware for Next Generation Web Services". Proceedings of the IEEE International Conference on Web Services. ICWS '06. CiteSeerX 10.1.1.62.1740.
  • Axis2 Tutorial