|
||||||||||
PREV CLASS (src) NEXT CLASS (src) | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jboss.axis.handlers.BasicHandler (src)
org.jboss.axis.providers.BasicProvider (src)
org.jboss.axis.providers.java.JavaProvider (src)
org.jboss.axis.providers.java.RPCProvider (src)
org.jboss.axis.providers.java.EJBProvider (src)
org.jboss.net.axis.server.EJBProvider
A JBoss-compatible EJB Provider that exposes the methods of any session bean as a web service endpoint.
Basically it is a slimmed downed derivative of the Axis-EJBProvider without the usual, corba-related configuration mumbo-jumbo that is operating under the presumption that the right classloader has already been set by the request flow chain (@see org.jboss.net.axis.SetClassLoaderHandler).
Since Version 1.5 and thanks to Kevin Conner, we now also support
stateful beans that are tied to the service scope (you should reasonably
choose scope="session" in the
EJBProvider is able to recognize an WsdlAwareHttpActionHandler
(src) in its
transport chain such that it will set the soap-action headers in the wsdl.
Nested Class Summary | |
protected static class |
EJBProvider.EJBServiceLifeCycle (src)
This is the lifecycle object that is registered in the message scope and that shields the proper bean reference |
Field Summary | |
protected java.lang.reflect.Method |
ejbCreateMethod
we are caching the create method for perfomance purposes |
protected java.lang.Object |
ejbHome
we are caching the home for perfomance purposes |
protected java.lang.Class |
remoteClass
the real remote class we are shielding |
Fields inherited from class org.jboss.axis.providers.java.EJBProvider (src) |
empty_class_array, empty_object_array, jndiContextClass, jndiPassword, jndiURL, jndiUsername, OPTION_BEANNAME, OPTION_HOMEINTERFACENAME, OPTION_LOCALHOMEINTERFACENAME, OPTION_LOCALINTERFACENAME, OPTION_REMOTEINTERFACENAME |
Fields inherited from class org.jboss.axis.providers.java.RPCProvider (src) |
RPC_INVOCATION |
Fields inherited from class org.jboss.axis.providers.java.JavaProvider (src) |
OPTION_ALLOWEDMETHODS, OPTION_CLASSNAME, OPTION_CLASSPATH, OPTION_IS_STATIC, OPTION_SCOPE, OPTION_WSDL_INPUTSCHEMA, OPTION_WSDL_PORTTYPE, OPTION_WSDL_SERVICEELEMENT, OPTION_WSDL_SERVICEPORT, OPTION_WSDL_TARGETNAMESPACE |
Fields inherited from class org.jboss.axis.handlers.BasicHandler (src) |
makeLockable, name, options |
Constructor Summary | |
EJBProvider()
Creates new EJBProvider |
Method Summary | |
void |
generateWSDL(MessageContext (src) msgContext)
Generate the WSDL for this service. |
protected java.lang.reflect.Method |
getEJBCreateMethod(java.lang.String jndiName)
access home factory via jndi if reference is not yet cached |
protected java.lang.Object |
getEJBHome(java.lang.String jndiName)
access home factory via jndi if reference is not yet cached |
protected java.lang.Class |
getServiceClass(java.lang.String beanJndiName,
SOAPService (src) service,
MessageContext (src) msgContext)
Return the class name of the service, note that this could be called outside the correct chain, e.g., by the url mapper. |
void |
initServiceDesc(SOAPService (src) service,
MessageContext (src) msgContext)
Fill in a service description with the correct impl class and typemapping set. |
protected java.lang.Object |
makeNewServiceObject(MessageContext (src) msgContext,
java.lang.String clsName)
Return the object which implements the service lifecycle. |
void |
processMessage(MessageContext (src) msgContext,
SOAPEnvelopeAxisImpl (src) reqEnv,
SOAPEnvelopeAxisImpl (src) resEnv,
java.lang.Object obj)
Override processMessage of super class in order to unpack the service object from the lifecycle |
Methods inherited from class org.jboss.axis.providers.java.EJBProvider (src) |
getCachedContext, getContext, getEJBHome, getServiceClassNameOptionName, getStrOption |
Methods inherited from class org.jboss.axis.providers.java.RPCProvider (src) |
checkMethodName, createRPCInvocation, invokeMethod, invokeTarget |
Methods inherited from class org.jboss.axis.providers.java.JavaProvider (src) |
getServiceClassName, getServiceObject, invoke, processException |
Methods inherited from class org.jboss.axis.providers.BasicProvider (src) |
addOperation, getOperationName, getOperationNames, getOperationQNames |
Methods inherited from class org.jboss.axis.handlers.BasicHandler (src) |
canHandleBlock, cleanup, getDeploymentData, getName, getOption, getOptions, getUnderstoodHeaders, init, initHashtable, onFault, setName, setOption, setOptionDefault, setOptions, setOptionsLockable |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected java.lang.Class remoteClass
protected java.lang.Object ejbHome
protected java.lang.reflect.Method ejbCreateMethod
Constructor Detail |
public EJBProvider()
Method Detail |
protected java.lang.Object getEJBHome(java.lang.String jndiName) throws javax.naming.NamingException
javax.naming.NamingException
protected java.lang.reflect.Method getEJBCreateMethod(java.lang.String jndiName) throws javax.naming.NamingException, java.lang.NoSuchMethodException
javax.naming.NamingException
java.lang.NoSuchMethodException
protected java.lang.Object makeNewServiceObject(MessageContext (src) msgContext, java.lang.String clsName) throws java.lang.Exception
makeNewServiceObject
in class EJBProvider (src)
msgContext
- the message contextclsName
- The JNDI name of the EJB home class
java.lang.Exception
protected java.lang.Class getServiceClass(java.lang.String beanJndiName, SOAPService (src) service, MessageContext (src) msgContext) throws AxisFault (src)
getServiceClass
in class EJBProvider (src)
msgContext
- the message context (can be null)beanJndiName
- the JNDI name of the EJB
AxisFault (src)
public void generateWSDL(MessageContext (src) msgContext) throws AxisFault (src)
generateWSDL
in interface Handler (src)
generateWSDL
in class JavaProvider (src)
AxisFault (src)
public void processMessage(MessageContext (src) msgContext, SOAPEnvelopeAxisImpl (src) reqEnv, SOAPEnvelopeAxisImpl (src) resEnv, java.lang.Object obj) throws java.lang.Exception
processMessage
in class RPCProvider (src)
msgContext
- self-explanatoryreqEnv
- the request enveloperesEnv
- the response envelopeobj
- the service object itself
java.lang.Exception
public void initServiceDesc(SOAPService (src) service, MessageContext (src) msgContext) throws AxisFault (src)
JavaProvider (src)
initServiceDesc
in class JavaProvider (src)
AxisFault (src)
|
||||||||||
PREV CLASS (src) NEXT CLASS (src) | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |