org.mule.providers.soap.axis
Class AxisServiceComponent

java.lang.Object
  extended byorg.mule.providers.soap.axis.AxisServiceComponent
All Implemented Interfaces:
Callable, Initialisable, UMOEventListener

public class AxisServiceComponent
extends Object
implements Initialisable, Callable

AxisServiceComponent is a Mule component implementation of the Axis servlet. This component supports all the features of the Axis servlet except -

  1. Jws class services are not supported as they don't add any value to the Mule model
  2. Currently there is no HttpSession support. This will be fixed when Session support is added to the Http Connector


Field Summary
static String DEFAULT_AXIS_HOME
           
static String INIT_PROPERTY_ENABLE_LIST
           
static String INIT_PROPERTY_TRANSPORT_NAME
           
static String INIT_PROPERTY_USE_SECURITY
           
protected static Log logger
           
 
Constructor Summary
AxisServiceComponent()
           
 
Method Summary
 void doGet(UMOEventContext context, WriterMessageAdapter response)
           
protected  void doPost(UMOEventContext context, WriterMessageAdapter response)
           
 org.apache.axis.server.AxisServer getAxisServer()
           
 String getHomeDir()
           
protected  int getHttpResponseStatus(org.apache.axis.AxisFault af)
           
protected  String getServiceName(UMOEventContext context, UMOEndpointURI endpointUri)
           
 String getTransportName()
           
 void initialise()
          Method used to perform any initialisation work.
protected  void invokeEndpointFromGet(org.apache.axis.MessageContext msgContext, WriterMessageAdapter response, String method, String args)
           
 boolean isEnableList()
           
 Object onCall(UMOEventContext context)
          Passes the context to the listener
protected  void processAxisFault(org.apache.axis.AxisFault fault)
           
protected  void processListRequest(WriterMessageAdapter response)
           
protected  void processMethodRequest(org.apache.axis.MessageContext msgContext, UMOEventContext context, WriterMessageAdapter response, UMOEndpointURI endpointUri)
           
protected  void processWsdlRequest(org.apache.axis.MessageContext msgContext, WriterMessageAdapter response)
           
protected  void reportAvailableServices(UMOEventContext context, WriterMessageAdapter response)
           
protected  void reportCantGetAxisService(UMOEventContext context, WriterMessageAdapter response)
           
protected  void reportServiceInfo(WriterMessageAdapter response, org.apache.axis.handlers.soap.SOAPService service, String serviceName)
           
 void setAxisServer(org.apache.axis.server.AxisServer axisServer)
           
 void setEnableList(boolean enableList)
           
 void setHomeDir(String homeDir)
           
 void setTransportName(String transportName)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected static final Log logger

INIT_PROPERTY_TRANSPORT_NAME

public static final String INIT_PROPERTY_TRANSPORT_NAME
See Also:
Constant Field Values

INIT_PROPERTY_USE_SECURITY

public static final String INIT_PROPERTY_USE_SECURITY
See Also:
Constant Field Values

INIT_PROPERTY_ENABLE_LIST

public static final String INIT_PROPERTY_ENABLE_LIST
See Also:
Constant Field Values

DEFAULT_AXIS_HOME

public static final String DEFAULT_AXIS_HOME
See Also:
Constant Field Values
Constructor Detail

AxisServiceComponent

public AxisServiceComponent()
Method Detail

onCall

public Object onCall(UMOEventContext context)
              throws Exception
Passes the context to the listener

Specified by:
onCall in interface Callable
Parameters:
context - the context to process
Returns:
Object this object can be anything. When the UMOLifecycleAdapter for the component receives this object it will first see if the Object is an UMOEvent if not and the Object is not null a new context will be created using the returned object as the payload. This new context will then get published to the configured outbound endpoint if-
  1. One has been configured for the UMO.
  2. the setStopFurtherProcessing(true) wasn't called on the previous context.
Throws:
Exception - if the context fails to process properly. If exceptions aren't handled by the implementation they will be handled by the exceptionListener associated with the component

initialise

public void initialise()
                throws InitialisationException
Description copied from interface: Initialisable
Method used to perform any initialisation work. If a fatal error occurs during initialisation an InitialisationException should be thrown, causing the Mule instance to shutdown. If the error is recoverable, say by retrying to connect, a RecoverableException should be thrown. There is no guarantee that by throwing a Recoverable exception that the Mule instance will not shut down.

Specified by:
initialise in interface Initialisable
Throws:
InitialisationException - if a fatal error occurs causing the Mule instance to shutdown

doGet

public void doGet(UMOEventContext context,
                  WriterMessageAdapter response)
           throws UMOException,
                  IOException
Throws:
UMOException
IOException

processAxisFault

protected void processAxisFault(org.apache.axis.AxisFault fault)

processMethodRequest

protected void processMethodRequest(org.apache.axis.MessageContext msgContext,
                                    UMOEventContext context,
                                    WriterMessageAdapter response,
                                    UMOEndpointURI endpointUri)
                             throws org.apache.axis.AxisFault
Throws:
org.apache.axis.AxisFault

processWsdlRequest

protected void processWsdlRequest(org.apache.axis.MessageContext msgContext,
                                  WriterMessageAdapter response)
                           throws org.apache.axis.AxisFault
Throws:
org.apache.axis.AxisFault

invokeEndpointFromGet

protected void invokeEndpointFromGet(org.apache.axis.MessageContext msgContext,
                                     WriterMessageAdapter response,
                                     String method,
                                     String args)
                              throws org.apache.axis.AxisFault
Throws:
org.apache.axis.AxisFault

reportServiceInfo

protected void reportServiceInfo(WriterMessageAdapter response,
                                 org.apache.axis.handlers.soap.SOAPService service,
                                 String serviceName)

processListRequest

protected void processListRequest(WriterMessageAdapter response)
                           throws org.apache.axis.AxisFault
Throws:
org.apache.axis.AxisFault

reportAvailableServices

protected void reportAvailableServices(UMOEventContext context,
                                       WriterMessageAdapter response)
                                throws org.apache.axis.ConfigurationException,
                                       org.apache.axis.AxisFault
Throws:
org.apache.axis.ConfigurationException
org.apache.axis.AxisFault

reportCantGetAxisService

protected void reportCantGetAxisService(UMOEventContext context,
                                        WriterMessageAdapter response)

doPost

protected void doPost(UMOEventContext context,
                      WriterMessageAdapter response)
               throws Exception
Throws:
Exception

getHttpResponseStatus

protected int getHttpResponseStatus(org.apache.axis.AxisFault af)

getServiceName

protected String getServiceName(UMOEventContext context,
                                UMOEndpointURI endpointUri)
                         throws org.apache.axis.AxisFault
Throws:
org.apache.axis.AxisFault

getTransportName

public String getTransportName()

setTransportName

public void setTransportName(String transportName)

isEnableList

public boolean isEnableList()

setEnableList

public void setEnableList(boolean enableList)

getHomeDir

public String getHomeDir()

setHomeDir

public void setHomeDir(String homeDir)

getAxisServer

public org.apache.axis.server.AxisServer getAxisServer()

setAxisServer

public void setAxisServer(org.apache.axis.server.AxisServer axisServer)


Copyright © 2003-2008 MuleSource, Inc.. All Rights Reserved.