WildFly Paths: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
No edit summary
No edit summary
Line 10: Line 10:
WildFly uses logical names for filesystem paths. All top-level configuration files <tt>standalone.xml</tt>, <tt>domain.xml</tt> and <tt>host.xml</tt> include a <tt><paths></tt> section for declaring paths. Closer declaration to the server take precedence.
WildFly uses logical names for filesystem paths. All top-level configuration files <tt>standalone.xml</tt>, <tt>domain.xml</tt> and <tt>host.xml</tt> include a <tt><paths></tt> section for declaring paths. Closer declaration to the server take precedence.


=WildFly Standard Paths=


<blockquote style="background-color: #f9f9f9; border: solid thin lightgrey;">
:[[WildFly Standard Paths]]
</blockquote>





Revision as of 06:24, 28 February 2016

External

Internal

Overview

WildFly uses logical names for filesystem paths. All top-level configuration files standalone.xml, domain.xml and host.xml include a <paths> section for declaring paths. Closer declaration to the server take precedence.

WildFly Standard Paths

WildFly Standard Paths


Example:

{{{ }}}

"relative-to" attribute references a global path name in the domain model. If "relative-to" is not explicitly specified ...

Available "relative-to" roots - they are referred to as "path names":

  • "jboss.home.dir" (ex: C:/runtime/jboss-eap-6.0)
  • "jboss.server.base.dir" (ex: C:/runtime/jboss-eap-6.0/profiles/hornetq-live-1)
  • "jboss.server.config.dir" (ex: C:/runtime/jboss-eap-6.0/profiles/hornetq-live-1/configuraton)
  • "jboss.server.data.dir" (ex: C:/runtime/jboss-eap-6.0/profiles/hornetq-live-1/data)
  • "jboss.server.log.dir" (ex: C:/runtime/jboss-eap-6.0/profiles/hornetq-live-1/log)
  • "jboss.server.temp.dir" (ex: C:/runtime/jboss-eap-6.0/profiles/hornetq-live-1/tmp)
  • "jboss.controller.temp.dir" (ex: C:/runtime/jboss-eap-6.0/profiles/hornetq-live-1/tmp)
  • "user.home"
  • "user.dir"
  • "java.home"

!!!Adding more named paths

We can add more named paths, so we can use them as "relative-to". They are added as follows:

{{{

<server xmlns="urn:jboss:domain:1.3">

   <extensions>
       ...
   </extensions>
   <paths>
       <path name="hornetq.shared.dir" path="C:/tmp/hqd"/>
   </paths>
  ...

}}}

In the above example, "hornetq.shared.dir" can be used as path name for "relative-to" used in HornetQ configuration.


!!!PathManagerService and HornetQ


PathManagerService is used to resolve configuration entries specified in the format:

{{{

  ... 
  <bindings-directory path="./bindings" relative-to="jboss.server.base.dir"/>
  ...

}}}

or


{{{

  ... 
  <bindings-directory path="./bindings" relative-to="hornetq.shared.dir"/>
  ...

}}}


HornetQ configuration does its own path processing, and supplies default values for "relative-to" if that is not specified. That default value is "jboss.server.data.dir" (HornetQServerAdd.DEFAULT_RELATIVE_TO). It does not really matter if the "path" attribute value is relative or absolute, it will be always be considered relative to "relative-to".

!!!PathManagerService Implementation

The path roots are added at boot within ServerPathManagerService (that extends PathManagerService). This is where the "path names" and their absolute values are added.


__Referenced by:__\\ [{INSERT com.ecyrd.jspwiki.plugin.ReferringPagesPlugin WHERE max=20, maxwidth=50}]