Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

what's the difference between folders 'installedApps' and 'applications' in websphere application server?

Tags:

websphere

Normally, after we create profiles both DMGR and Node, we have folder applications under path $DMGRPROFILE_HOME/config/cells/$cellName and installedApps under path $NODEPROFILE_HOME/. All the applications to be deployed will be put into folder installedApps. And we can also see the same contents under the folder applications above. So my question is what's the difference between them? why does the websphere application server put such apps into folder applications besides installedApps? what's more, for example, if i need to update one file named web.xml of my deployed application war file, do i have to update file under both path above?

Thanks in advance

like image 203
wing2ofsky Avatar asked Jun 01 '12 13:06

wing2ofsky


People also ask

What is application Client for IBM WebSphere application?

Application Client for WebSphere® Application Server is the package that you can use to install a variety of clients. Application Client also forms the runtime for Java™ EE clients and Java thin clients on a system that does not have the Application Server installed.

What is Data_source in WebSphere application server?

4.2. Configuring JDBC data sources in IBM WebSphere Application Server. A data source is an object that enables a Java Database Connectivity (JDBC) client, such as an application server, to establish a connection with a database.

What is liberty application server?

IBM WebSphere® Liberty is a Java™ EE application server with a low-overhead Java runtime environment designed for cloud-native applications and microservices. WebSphere Liberty was created to be highly composable, start fast, use less memory, and scale easily.


1 Answers

The applications path under the Dmgr profile contains the files that have been deployed in the admin console.

The installedApps path under the Node profile contains those files after they've been synchronized out to each node. In most cases, this will be immediately after the deployment as well.

Deploying a single file

The safest practice would be to deploy a single file using the admin console, rather than editing it in-place on the filesystem:

enter image description here

The downside is that you have to enter the entire path to the server-deployed file name. e.g. webapp.war/WEB-INF/classes/com/yourcompany/project/package1/YourClass.class.

If you have a typo, it will deploy, but not where you wanted, and you might not notice it until your expected changes didn't take effect.

Direct edit on the filesystem

That said, it is faster to edit on the filesystem, so we do that at times especially for like JSPs. To do that, you need to edit the copy under the Node's installedApps directory. (The location is controlled by WebSphere variable APP_INSTALL_ROOT, which defaults to ${USER_INSTALL_ROOT}/installedApps.)

web.xml

web.xml, however, is different. If you edit that in installedApps, the changes won't take effect. Instead, you'll need to edit the one in a path something like:

$NODEPROFILE_HOME/config/cells/cellName/applications/earName.ear/deployments/applicationName/warName.war/WEB-INF

Or do it in the $DMGRPROFILE_HOME and then synchronize the node (either through syncNode.sh or through the admin console).

Either way, you'll then need to restart the enterprise application.

like image 149
dbreaux Avatar answered Oct 04 '22 15:10

dbreaux