Set Parent_Last on websphere 9

769 views Asked by At

While using Websphere 7, I had in my EAR a nice little file called deployment.xml which told my WAS server to configure the deployment to PARENT_LAST. I had this file at

/MyEAR/META-INF/ibmconfig/cells/defaultCell/applications/defaultApp/deployments/defaultApp/deployment.xml

When moving to Websphere 9, it appears it is no longer honoring this directive. I go to the admin console and can see it thinks the EAR is deployed with PARENT_FIRST under "Class loading and update detection"

here is the text of the xml

<?xml version="1.0" encoding="UTF-8"?>
<appdeployment:Deployment xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:appdeployment="http://www.ibm.com/websphere/appserver/schemas/5.0/appdeployment.xmi">
  <deployedObject startingWeight="10" warClassLoaderPolicy="SINGLE"  xmi:type="appdeployment:ApplicationDeployment">
    <modules startingWeight="10000" uri="Provider_lfcPractice_ImplWeb.war" classloaderMode="PARENT_LAST" xmi:type="appdeployment:WebModuleDeployment"/>
    <classloader mode="PARENT_LAST"/>
  </deployedObject>
</appdeployment:Deployment>

Is there still a way to configure the EAR to deploy the war with PARENT_LAST in websphere 9?

2

There are 2 answers

0
Gas On BEST ANSWER

This should still work. Check this Select installation options settings, it talks about the deployment.xml

Process embedded configuration

Specifies whether the embedded configuration should be processed. An embedded configuration consists of files such as resource.xml, variables.xml, and deployment.xml.

So make sure that that checkbox is selected, as it is off by default. Also if you are deploying via wsadmin script, make sure that you are using that option.

The other way, would be to select all the options after installation that you require, export that ear and compare it to the one that you are installing.

0
user2051552 On

With Gas's comment it was clear it should work. What happened to me is that I had added maven nature to the EAR at one point. Bad idea. Even though I had already removed the maven nature, it corrupted the file

org.eclipse.wst.common.component

It was missing the line

<wb-resource deploy-path="/" source-path="/"/>

When I added that line back, my deployment.xml file began working as expected