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 and view the source code, design documents, or content of the product. The open source model is a decentrali ...
,
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing data. It defines a set of rules for encoding electronic document, documents in a format that is both human-readable and Machine-r ...
based
Web service A web service (WS) is either: * a service offered by an electronic device to another electronic device, communicating with each other via the Internet, or * a server running on a computer device, listening for requests at a particular port over a n ...
framework. It consists of a
Java Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
and a C++ implementation of the
SOAP Soap is a salt (chemistry), salt of a fatty acid (sometimes other carboxylic acids) used for cleaning and lubricating products as well as other applications. In a domestic setting, soaps, specifically "toilet soaps", are surfactants usually u ...
server, and various utilities and
API An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
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 Distributed computing is a field of computer science that studies distributed systems, defined as computer systems whose inter-communicating components are located on different networked computers. The components of a distributed system commu ...
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 ...
.


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 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. Axis2 provides the capabi ...
.


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 or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
and not compiled class files. 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 armed conflict between the armed forces of states, or between governmental forces and armed groups that are organized under a certain command structure and have the capacity to sustain military operations, or between such organi ...
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 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 RPC may refer to: Science and technology * Rational polynomial coefficient * Reactive Plastic Curtain, a carbon-dioxide-absorbing device used in some rebreather breathing sets * Regional Playback Control, a regional lockout technology for DVDs ...
services * EJB - stateless ( Enterprise Java Bean)


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 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. Axis2 provides the capabi ...
- 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 components ...
- 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 the now defunct host CodeHaus in 2006. These two ...
- other Apache web services framework (old XFire & 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 appro ...
- RPC/web services framework *
Web Services Invocation Framework The Web Services Invocation Framework (WSIF) supports a simple and flexible Java API (Application Programming Interface) for invoking any Web Services Description Language (WSDL)-described service. Using WSIF, WSDL can become the centerpiece of a ...
- Java API for invoking Web services * webMethods Glue - commercial web services enabling product


References


External links

* /axis.apache.org/ Apache Axis Homepageat the Apache Software Foundation {{Apache Software Foundation
Axis An axis (: axes) may refer to: Mathematics *A specific line (often a directed line) that plays an important role in some contexts. In particular: ** Coordinate axis of a coordinate system *** ''x''-axis, ''y''-axis, ''z''-axis, common names ...
Web services Web service specifications