Apache Axis
   HOME

TheInfoList



OR:

Apache Axis (Apache eXtensible Interaction System) is an
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
,
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. T ...
based Web service framework. It consists of a
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
and a
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
implementation of the
SOAP Soap is a salt of a fatty acid used in a variety of cleansing and lubricating products. In a domestic setting, soaps are surfactants usually used for washing, bathing, and other types of housekeeping. In industrial settings, soaps are use ...
server, and various utilities and
API An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software Interface (computing), interface, offering a service to other pieces of software. A document or standa ...
s for generating and deploying
Web Web most often refers to: * Spider web, a silken structure created by the animal * World Wide Web or the Web, an Internet-based hypertext system Web, WEB, or the Web may also refer to: Computing * WEB, a literate programming system created by ...
service applications. Using Apache Axis, developers can create interoperable,
distributed computing A distributed system is a system whose components are located on different computer network, networked computers, which communicate and coordinate their actions by message passing, passing messages to one another from any system. Distributed com ...
applications. Axis development takes place under the auspices of the
Apache Software Foundation The Apache Software Foundation (ASF) is an American nonprofit corporation (classified as a 501(c)(3) organization in the United States) to support a number of open source software projects. The ASF was formed from a group of developers of the A ...
.


Axis for Java

When using the Java version of Axis there are two ways to expose Java code as Web service. The easiest one is to use Axis native JWS (Java Web Service) files. Another way is to use custom deployment. Custom deployment enables you to customize resources that should be exposed as Web services. See also
Apache Axis2 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 ...
.


JWS Web service creation

JWS files contain Java class source code that should be exposed as Web service. The main difference between an ordinary java file and jws file is the file extension. Another difference is that jws files are deployed as
source code In computing, source code, or simply code, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the wo ...
and not compiled
class file A Java class file is a file (with the filename extension) containing Java bytecode that can be executed on the Java Virtual Machine (JVM). A Java class file is usually produced by a Java compiler from Java programming language source files ( fi ...
s. The following example will expose methods ''add'' and ''subtract'' of class Calculator. public class Calculator


JWS Web service deployment

Once the Axis servlet is deployed, you need only to copy the jws file to the Axis directory on the server. This will work if you are using an
Apache Tomcat Apache Tomcat (called "Tomcat" for short) is a free and open-source implementation of the Jakarta Servlet, Jakarta Expression Language, and WebSocket technologies. It provides a "pure Java" HTTP web server environment in which Java code can also ...
container. In the case that you are using another web container, custom
WAR War is an intense armed conflict between states, governments, societies, or paramilitary groups such as mercenaries, insurgents, and militias. It is generally characterized by extreme violence, destruction, and mortality, using regular o ...
archive creation will be required .


JWS Web service access

JWS Web service is accessible using the URL http://localhost:8080/axis/Calculator.jws . If you are running a custom configuration of
Apache Tomcat Apache Tomcat (called "Tomcat" for short) is a free and open-source implementation of the Jakarta Servlet, Jakarta Expression Language, and WebSocket technologies. It provides a "pure Java" HTTP web server environment in which Java code can also ...
or a different container, the URL might be different.


Custom deployed Web service

Custom Web service
deployment Deployment may refer to: Engineering and software Concepts * Blue-green deployment, a method of installing changes to a web, app, or database server by swapping alternating production and staging servers * Continuous deployment, a software en ...
requires a specific deployment descriptor called WSDD (Web Service Deployment Descriptor) syntax. It can be used to specify resources that should be exposed as Web services. Current version (1.3) supports * RPC services * EJB - stateless (
Enterprise Java Bean Jakarta Enterprise Beans (EJB; formerly Enterprise JavaBeans) is one of several Java APIs for modular construction of enterprise software. EJB is a server-side software component that encapsulates business logic of an application. An EJB web co ...
)


Automated generation of WSDL

When a Web service is exposed using Axis it will generate a
WSDL The Web Services Description Language (WSDL ) is an XML-based interface description language that is used for describing the functionality offered by a web service. The acronym is also used for any specific WSDL description of a web service (also ...
file automatically when accessing the Web service URL with ''?WSDL'' appended to it.


Related technologies

*
Apache Axis2 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 ...
- re-design/write of Axis *
Java Web Services Development Pack The Java Web Services Development Pack (JWSDP) is a free software development kit (SDK) for developing Web Services, Web applications and Java applications with the newest technologies for Java. Oracle replaced JWSDP with GlassFish. All component ...
- web services framework *
Apache CXF Apache CXF is an open source software project developing a Web services framework. It originated as the combination of Celtix developed by IONA Technologies and XFire developed by a team hosted at Codehaus in 2006. These two projects were combin ...
- other Apache web services framework (old
XFire Xfire (pronounced "X-Fire") was a proprietary freeware instant messaging service for gamers that also served as a game server browser with various other features. It was available for Microsoft Windows. Xfire was originally developed by Ult ...
& Celtix) *
XML Interface for Network Services XML Interface for Network Services (XINS) is an open-source technology for definition and implementation of internet applications, which enforces a specification-oriented approach. Specification-oriented approach The specification-oriented appr ...
- RPC/web services framework *
Web Services Invocation Framework The Web Services Invocation Framework (WSIF) supports a simple and flexible Java API for invoking any Web Services Description Language (WSDL)-described service. Using WSIF, WSDL can become the centerpiece of an integration framework for accessing ...
- Java API for invoking Web services *
webMethods Glue webMethods Glue is an enterprise web services platform from webMethods. It provides web services/SOAP capabilities to existing Java and C/C++ applications. Developers use the Java-based product to add enterprise web services integration to legac ...
- commercial web services enabling product


References


External links

* /axis.apache.org/ Apache Axis Homepageat the Apache Software Foundation {{Apache Software Foundation
Axis An axis (plural ''axes'') is an imaginary line around which an object rotates or is symmetrical. Axis may also refer to: Mathematics * Axis of rotation: see rotation around a fixed axis *Axis (mathematics), a designator for a Cartesian-coordinate ...
Web services Web service specifications