Skip to main content

Deploying Axis2 web service as ROOT application on Tomcat

By default Axis2 services are available on http://host:8080/axis2/services/*. If you want to remove axis2/services part from the service endpoint and access your service by http://host:8080/serviceName/*

1. Overide default Axis2 servlet mapping services in web.xml file.

 AxisServlet
 /serviceName/*

2. Remove an application name value by deploying axis2 implementation (from war distribution axis2-1.X.X-war.zip) as ROOT application.

Info: War distribution contains application with above structure:
axis2-web
META-INF
org
WEB-INF
    classes
    conf
    lib
    modules
    services
        put here *.aar files to deploy WS
    web.xml (manually created)

web.xml file







    Apache-Axis2
    
        AxisServlet
        Apache-Axis Servlet
        org.apache.axis2.transport.http.AxisServlet
        
        
        
        
        
        
        
        
        
        
        1
    
    
        AxisAdminServlet
        Apache-Axis AxisAdmin Servlet (Web Admin)
        
            org.apache.axis2.webapp.AxisAdminServlet
    
    
    
    
    
        AxisServlet
        /servlet/AxisServlet
    

    
        AxisServlet
        *.jws
    

    
        AxisServlet
        /serviceName/*
     
 
    
        AxisAdminServlet
        /axis2-admin/*
    

    
    
    
        inc
        text/plain
    

   
      index.jsp
      index.html
      /axis2-web/index.jsp
    

    
      404
      /axis2-web/Error/error404.jsp
    

    
        500
        /axis2-web/Error/error500.jsp
    

Comments

Popular posts from this blog

Convert Source to String

import java.io.BufferedReader; import java.io.IOException; import java.io.Reader; import java.io.StringReader; import javax.xml.transform.Source; import javax.xml.transform.sax.SAXSource; import org.xml.sax.InputSource; public class DataSourceTest { public static void main(String[] args) throws IOException { // created Source InputSource inputSource = new InputSource(new StringReader( " \n \n \n ")); Source source = new SAXSource(inputSource); // read Source SAXSource saxSource = (SAXSource) source; InputSource inputSourceReader = saxSource.getInputSource(); Reader reader = inputSourceReader.getCharacterStream(); BufferedReader buffereRreader = new BufferedReader(reader); String read = null; while ((read = buffereRreader.readLine()) != null) { System.out.println(read); } } }

scala Hello World

The code below prints Hello World! Hello.scala file (a name of file doesn't matter) object HelloWorld { def main(args: Array[String]) { println("Hello World!") } } Key word object is used to create a singleton object. To run this script use scala interpretor (check scala command line tools ).

JAXB marshall and unmarshall

write xsd schema file(s) use xjc tool to compile xsd schema file(s) into java classes create a java object marshall the object into a file unmarshall the object from a file 1. drink.xsd schema file <xs:element name="drink"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string" /> <xs:element name="alcohol" type="AlcoholEnum" minOccurs="0" maxOccurs="10" /> <xs:element name="ice" type="xs:boolean" /> </xs:sequence> </xs:complexType> </xs:element> <xs:simpleType name="AlcoholEnum"> <xs:restriction base="xs:string"> <xs:enumeration value="vodka" /> <xs:enumeration value="rum" /> <xs:enumeration value="whiskey" /> <xs:enume