The WSO2 SOA Enablement Server ported on one of supported application servers is able to expose EJBs which it finds in the JNDI namespace as a regular Web service. The URL of such a Web service depends on type of the EJB. For a Stateless Session JavaBean, the URL is [WASP_URL]/internal/ejb/session/stateless/ and the WSDL returned reflects the remote interface of the JavaBean. In case of an Entity JavaBean or Stateful Session JavaBean, the URL is /internal/ejb/ and the WSDL reflects the home interface of the JavaBean. In both cases, the URL takes three parameters:
jndiName references the home interface of the JavaBean.
sbs sets the SOAP binding style as either rpc or document.
ses sets the SOAP encoding style as either encoded or literal.
This feature is deprecated for the following reasons :
The Web services were not manageable. It was not possible to manage them using the administration console.
The Web services were not persistent. Serializers, header processors and interceptors could not be set in the configuration file. They had no deployment descriptors.
The Web services were not secure. Only default security settings could be set for them.
Nevertheless, we are preserving this feature for backward compatibility. If you need this functionality, you can simply uncomment the Web service endpoints EJBHomeWSDLService (location /internal/ejb/) and EJBRemoteWSDLService (location /internal/ejb/session/stateless/) and the service instances in the deployment descriptor of the j2ee_ejb_webservice package. To apply these changes, you must redeploy the package.
![]() | Note |
---|---|
You can prohibit the exposure of individual EJBs with specified JNDI names in the configuration stored in the deployment descriptor of the WASP_HOME/dist/j2ee_ejb_webservice.jar |