Class EJBProvider

  • All Implemented Interfaces:
    java.io.Serializable, Handler

    public class EJBProvider
    extends RPCProvider
    A basic EJB Provider
    Author:
    Carl Woolf (cwoolf@macromedia.com), Tom Jordahl (tomj@macromedia.com), C?dric Chabanois (cchabanois@ifrance.com)
    See Also:
    Serialized Form
    • Field Detail

      • log

        protected static org.apache.commons.logging.Log log
      • entLog

        protected static org.apache.commons.logging.Log entLog
      • OPTION_HOMEINTERFACENAME

        public static final java.lang.String OPTION_HOMEINTERFACENAME
        See Also:
        Constant Field Values
      • OPTION_REMOTEINTERFACENAME

        public static final java.lang.String OPTION_REMOTEINTERFACENAME
        See Also:
        Constant Field Values
      • OPTION_LOCALHOMEINTERFACENAME

        public static final java.lang.String OPTION_LOCALHOMEINTERFACENAME
        See Also:
        Constant Field Values
      • OPTION_LOCALINTERFACENAME

        public static final java.lang.String OPTION_LOCALINTERFACENAME
        See Also:
        Constant Field Values
      • jndiContextClass

        public static final java.lang.String jndiContextClass
        See Also:
        Constant Field Values
      • empty_class_array

        protected static final java.lang.Class[] empty_class_array
      • empty_object_array

        protected static final java.lang.Object[] empty_object_array
    • Constructor Detail

      • EJBProvider

        public EJBProvider()
    • Method Detail

      • makeNewServiceObject

        protected java.lang.Object makeNewServiceObject​(MessageContext msgContext,
                                                        java.lang.String clsName)
                                                 throws java.lang.Exception
        Return a object which implements the service.
        Overrides:
        makeNewServiceObject in class JavaProvider
        Parameters:
        msgContext - the message context
        clsName - The JNDI name of the EJB home class
        Returns:
        an object that implements the service
        Throws:
        java.lang.Exception
      • getServiceClassNameOptionName

        protected java.lang.String getServiceClassNameOptionName()
        Return the option in the configuration that contains the service class name. In the EJB case, it is the JNDI name of the bean.
        Overrides:
        getServiceClassNameOptionName in class JavaProvider
      • getStrOption

        protected java.lang.String getStrOption​(java.lang.String optionName,
                                                Handler service)
        Get a String option by looking first in the service options, and then at the Handler's options. This allows defaults to be specified at the provider level, and then overriden for particular services.
        Parameters:
        optionName - the option to retrieve
        Returns:
        String the value of the option or null if not found in either scope
      • getServiceClass

        protected java.lang.Class getServiceClass​(java.lang.String beanJndiName,
                                                  SOAPService service,
                                                  MessageContext msgContext)
                                           throws AxisFault
        Get the class description for the EJB Remote or Local Interface, which is what we are interested in exposing to the world (i.e. in WSDL).
        Overrides:
        getServiceClass in class JavaProvider
        Parameters:
        msgContext - the message context (can be null)
        beanJndiName - the JNDI name of the EJB
        Returns:
        the class info of the EJB remote or local interface
        Throws:
        AxisFault
      • getCachedContext

        protected javax.naming.InitialContext getCachedContext()
                                                        throws javax.naming.NamingException
        Throws:
        javax.naming.NamingException
      • getContext

        protected javax.naming.InitialContext getContext​(java.util.Properties properties)
                                                  throws AxisFault,
                                                         javax.naming.NamingException
        Throws:
        AxisFault
        javax.naming.NamingException
      • getEJBHome

        protected java.lang.Object getEJBHome​(javax.naming.InitialContext context,
                                              java.lang.String beanJndiName)
                                       throws AxisFault,
                                              javax.naming.NamingException
        Throws:
        AxisFault
        javax.naming.NamingException