None of the available containers recognized the components

[] [] [] [] [] [] [] []

Symptom

Upgrade or deployment of a NetWeaver 6.40 or 7.0 system fails with the following error message:
Caught exception during application deployment from SAP J2EE Engine’s deploy service:
java.rmi.RemoteException: Error occurred while deploying ear file. .
Reason: None of the available containers recognized the components of application ; it is not possible to make deploy.
Other terms

deploy, upgrade, online, container
Reason and Prerequisites

Depending on the modules contained in an application bundle, each application has specific requirements for containers, which must be active in order to support the functionality provided by the application.
During deployment the application components are provided to the registered containers for deploy or update. Such containers are for example EJB container for EJB applications, Web container for Web applications, WebDynpro container for WebDynpro applications.
The containers supporting specific functionality are typically service modules deployed on the SAP J2EE Engine(e.g. EJB service, Servlet_JSP service, WebDynpro service).
If none of the registered containers recognizes the component to be deployed, the above error message is thrown and the deployment is aborted.
Usually the error is thrown when:
The container is stopped.The container is not deployed and does not exist on the systemThe container cannot be started.Solution

In general all required containers must be running before trying to deploy an application.
Make sure that all usage types required for the deployment of the application are installed and the version of the components is consistent.
Here are the steps, which might be used in troubleshooting the error.
1. Determine the container, which is responsible for the deployment.
The names of the required containers can be found in META-INF/application-j2ee-engine.xml inside the component’s SDA archive. For example:
webdynpro< /container-type>
If there is no such entry in the deployment descriptor, it either means that the components in the application are J2EE standard – servlets, jsps, ejbs, etc. or there is an error in the deployment descriptor and the application provider must be informed.
If it is not possible to determine the responsible container, contact the application development team, responsible for the application component.2. Once the responsible container is determined:Check the available containers on the systemconnect to the J2EE server via telnet by using J2EE Engine admin account.jump to a server node:jump 0add deploy command group:add deployget a list of all available containers:container_info -acheck the service, which provides the container:
container_info -c
If the required container is not listed in the available containers, contact the providers of the service/container for further analysis.3. Once the service, which provides the container is determined.check if the service is started:lss | grep if the service is not startedcheck its startup mode, which is the second column in thelssoutput. If the startup mode is set tomanual, try to start the service and consider changing the mode of the service toalwaysafter the successful startup.check the default traces for entries related to the startup of the service showing problems during startup.try to start the service:startservice .Collect the default traces and send them to the service provider for further analysis of the startup problem.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Leave a Comment