123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- ~ JBoss, Home of Professional Open Source.
- ~ Copyright 2010, Red Hat, Inc., and individual contributors
- ~ as indicated by the @author tags. See the copyright.txt file in the
- ~ distribution for a full listing of individual contributors.
- ~
- ~ This is free software; you can redistribute it and/or modify it
- ~ under the terms of the GNU Lesser General Public License as
- ~ published by the Free Software Foundation; either version 2.1 of
- ~ the License, or (at your option) any later version.
- ~
- ~ This software is distributed in the hope that it will be useful,
- ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
- ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- ~ Lesser General Public License for more details.
- ~
- ~ You should have received a copy of the GNU Lesser General Public
- ~ License along with this software; if not, write to the Free
- ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- -->
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns="urn:jboss:domain:1.1"
- targetNamespace="urn:jboss:domain:1.1"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- >
- <xs:element name="domain">
- <xs:annotation>
- <xs:documentation>
- Root element for the master document specifying the core configuration
- for the servers in a domain. There should be one such master
- document per domain, available to the host controller that
- is configured to act as the domain controller.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="extensions" type="extensionsType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="system-properties" type="properties-with-boottime" minOccurs="0" maxOccurs="1"/>
- <xs:element name="paths" type="named-pathsType" minOccurs="0" maxOccurs="1" />
- <xs:element name="profiles" type="profilesType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="interfaces" type="named-interfacesType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="socket-binding-groups" type="socket-binding-groupsType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="deployments" type="domain-deploymentsType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="server-groups" type="server-groupsType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="management-client-content" type="management-client-contentType" minOccurs="0" maxOccurs="1"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="host">
- <xs:annotation>
- <xs:documentation>
- Root element for a document configuring a host controller and
- the group of servers under the control of that host controller.
- The standard usage would be for a domain to have one such host controller
- on each physical (or virtual) host machine. Emphasis in this
- document is on enumerating the servers, configuring items that
- are specific to the host environment (e.g. IP addresses), and
- on any server-specific configuration settings.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="system-properties" type="properties-with-boottime" minOccurs="0"/>
- <xs:element name="paths" type="specified-pathsType" minOccurs="0" maxOccurs="1" />
- <xs:element name="vault" type="vaultType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="management" type="host-managementType" minOccurs="1" maxOccurs="1"/>
- <xs:element name="domain-controller" type="domain-controllerType"/>
- <xs:element name="interfaces" type="specified-interfacesType" minOccurs="0"/>
- <xs:element name="jvms" type="jvmsType" minOccurs="0"/>
- <xs:element name="servers" type="serversType" minOccurs="0"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The name to use for this host's host controller. Must be unique across the domain.
- If not set, defaults to the runtime value "HOSTNAME" or "COMPUTERNAME" environment variables,
- or, if neither environment variable is present, to the value of InetAddress.getLocalHost().getHostName().
- If the special value "jboss.domain.uuid" is used, a java.util.UUID will be created
- and used, based on the value of InetAddress.getLocalHost().
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- <xs:element name="server">
- <xs:annotation>
- <xs:documentation>
- Root element for a document specifying the configuration
- of a single "standalone" server that does not operate
- as part of a domain.
- Note that this element is distinct from the 'serverType'
- specified in this schema. The latter type forms part of the
- configuration of a server that operates as part of a domain.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="extensions" type="extensionsType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="system-properties" type="properties" minOccurs="0" maxOccurs="1"/>
- <xs:element name="paths" type="specified-pathsType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="vault" type="vaultType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="management" type="server-managementType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="profile" type="standalone-profileType" minOccurs="0"/>
- <xs:element name="interfaces" type="specified-interfacesType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="socket-binding-group" type="standalone-socket-binding-groupType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="deployments" type="server-deploymentsType" minOccurs="0" maxOccurs="1"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The name to use for this server.
- If not set, defaults to the runtime value "HOSTNAME" or "COMPUTERNAME" environment variables,
- or, if neither environment variable is present, to the value of InetAddress.getLocalHost().getHostName().
- If the special value "jboss.domain.uuid" is used, a java.util.UUID will be created
- and used, based on the value of InetAddress.getLocalHost().
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- <xs:complexType name="domain-managementType">
- <xs:annotation>
- <xs:documentation>
- Domain-wide default configuration settings for the management of standalone servers and a Host Controller.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="security-realms" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="security-realm" type="security-realmType" minOccurs="1"
- maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="outbound-connections" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="ldap" type="ldapType" minOccurs="1" /> <!-- TODO minOccurs only while ldap is only supported connection. -->
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="host-managementType">
- <xs:annotation>
- <xs:documentation>
- The centralized configuration for the management of a Host Controller.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="domain-managementType">
- <xs:sequence>
- <xs:element name="management-interfaces" type="host-management-interfacesType" minOccurs="1"/>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="server-managementType">
- <xs:annotation>
- <xs:documentation>
- The centralized configuration for the management of standalone server.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="domain-managementType">
- <xs:sequence>
- <xs:element name="management-interfaces" type="server-management-interfacesType" minOccurs="0"/>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="ldapType">
- <xs:annotation>
- <xs:documentation>
- The LDAP connection definition.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of this connection.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="url" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The URL to connect to ldap.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <!-- TODO - Later will be optional if we support GSSAPI to connect to LDAP -->
- <xs:attribute name="search-dn" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The distinguished name to use when connecting to LDAP to perform searches.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="search-credential" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The credential to use when connecting to perform a search.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="initial-context-factory" type="xs:string" default="com.sun.jndi.ldap.LdapCtxFactory">
- <xs:annotation>
- <xs:documentation>
- The initial context factory to establish the LdapContext.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="security-realmType">
- <xs:annotation>
- <xs:documentation>
- Configuration of a security realm for securing access to the management interfaces.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="server-identities" type="server-identitiesType" minOccurs="0" />
- <xs:element name="authentication" type="authenticationType" minOccurs="0" />
- <xs:element name="authorization" type="authorizationType" minOccurs="0" />
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of this security-realm, each security-realm must be assigned a unique name.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="authorizationType">
- <xs:annotation>
- <xs:documentation>
- Configuration defining how to load the authorization information for the authenticated user.
- After a user has been authenticated additional information such as roles can be loaded and
- associated with the user for subsequent authorization checks, this type is used to define
- how the roles are loaded.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="properties" type="propertiesFileType" minOccurs="1" /> <!-- minOccurs="1" while this is the only mech -->
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="server-identitiesType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the identities that represent the server.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="ssl" type="sslType" minOccurs="0" />
- <xs:element name="secret" type="secretType" minOccurs="0" />
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="secretType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the secret/password-based identity of this server.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="value" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The secret / password - Base64 Encoded
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="sslType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the SSL identity of this server.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="keystore" type="keystoreType" />
- </xs:sequence>
- <xs:attribute name="protocol" type="xs:string" default="TLS">
- <xs:annotation>
- <xs:documentation>
- The protocol to use when creating the SSLContext.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="keystoreType">
- <xs:annotation>
- <xs:documentation>
- The keystore configuration for the server.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="path" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The path of the keystore.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="relative-to" use="optional" type="xs:string">
- <xs:annotation>
- <xs:documentation>
- The name of another previously named path, or of one of the
- standard paths provided by the system. If 'relative-to' is
- provided, the value of the 'path' attribute is treated as
- relative to the path specified by this attribute.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="password" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The password to open the keystore.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="authenticationType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the server side authentication mechanisms.
- Optionally one truststore can be defined and one username/password based store can be defined.
- Authentication will first attempt to use the truststore and if this is not available will fall back
- to the username/password authentication.
- If none of these are specified the only available mechanism will be the local mechanism for the
- Native interface and the HTTP interface will not be accessible.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="truststore" type="keystoreType" minOccurs="0">
- <xs:annotation>
- <xs:documentation>
- Configuration of a keystore to use to create a trust manager to verify clients.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- <xs:choice minOccurs="0">
- <xs:element name="jaas" type="jaasAuthenticationType" minOccurs="0" />
- <xs:element name="ldap" type="ldapAuthenticationType" minOccurs="0" />
- <xs:element name="properties" type="propertiesAuthenticationType" minOccurs="0" />
- <xs:element name="users" type="usersAuthenticationType" minOccurs="0" />
- </xs:choice>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="jaasAuthenticationType">
- <xs:annotation>
- <xs:documentation>
- Definition to use a JAAS based configuration for authentication.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name identifying the jaas configuration of LoginModules.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="ldapAuthenticationType">
- <xs:annotation>
- <xs:documentation>
- Definition to use LDAP as the user repository.
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="username-filter">
- <xs:complexType>
- <xs:attribute name="attribute" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of the attribute to search for the user, this filter will then perform
- a simple search where the username entered by the user matches the attribute
- specified here.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- <xs:element name="advanced-filter">
- <xs:complexType>
- <xs:attribute name="filter" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The fully defined filter to be used to search for the user based on their entered
- user ID. The filter should contain a variable in the form {0} - this will be
- replaced with the username supplied by the user.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- </xs:choice>
- <xs:attribute name="connection" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of the connection to use to connect to LDAP.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="base-dn" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The base distinguished name to commence the search for the user.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="recursive" type="xs:boolean" default="false">
- <xs:annotation>
- <xs:documentation>
- Should the search be recursive.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="user-dn" type="xs:string" default="dn">
- <xs:annotation>
- <xs:documentation>
- The name of the attribute which is the users distinguished name.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="usersAuthenticationType">
- <xs:annotation>
- <xs:documentation>
- A set of users
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="user" type="userType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="userType">
- <xs:annotation>
- <xs:documentation>
- A single user.
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="password" type="xs:string" />
- </xs:choice>
- <xs:attribute name="username" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The users username.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="propertiesFileType">
- <xs:annotation>
- <xs:documentation>
- Declaration of a location of a properties file.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="relative-to" use="optional" type="xs:string">
- <xs:annotation>
- <xs:documentation>
- The name of another previously named path, or of one of the
- standard paths provided by the system. If 'relative-to' is
- provided, the value of the 'path' attribute is treated as
- relative to the path specified by this attribute.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="path" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The path of the properties file.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="propertiesAuthenticationType">
- <xs:annotation>
- <xs:documentation>
- Declaration of users stored within properties files.
- The entries within the properties file are username={credentials} with each user
- being specified on it's own line.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="propertiesFileType">
- <xs:attribute name="plain-text" type="xs:boolean" default="false">
- <xs:annotation>
- <xs:documentation>
- Are the credentials within the properties file stored in plain text, if not
- the {credential} is expected to be the hex encoded Digest hash
- of 'username : realm : password'.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="host-management-interfacesType">
- <xs:sequence>
- <xs:element name="native-interface" type="host-native-management-interfaceType"/>
- <xs:element name="http-interface" type="host-http-management-interfaceType" minOccurs="0"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="management-interfaceType">
- <xs:attribute name="security-realm" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The security realm to use for this management interface, the capabilities
- of the security realm will be queried to identify the authentication mechanism(s) to
- offer.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="host-native-management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of a host's exposed native management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-interfaceType">
- <xs:sequence>
- <xs:element name="socket" type="native-management-socketType"/>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="management-socketType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket used by host or standalone server's exposed management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="interface" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Network interface on which the host's socket for
- management communication should be opened.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="native-management-socketType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket used by host or standalone server's exposed HTTP management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-socketType">
- <xs:attribute name="port" type="xs:int" use="required">
- <xs:annotation>
- <xs:documentation>
- Port on which the host's socket for native
- management communication should be opened.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="host-http-management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of a host's exposed HTTP management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-interfaceType">
- <xs:sequence>
- <xs:element name="socket" type="http-management-socketType"/>
- </xs:sequence>
- <xs:attribute name="console-enabled" type="xs:boolean" use="optional" default="true"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="http-management-socketType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket used by host or standalone server's exposed HTTP management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-socketType">
- <xs:attribute name="port" type="xs:int" use="optional">
- <xs:annotation>
- <xs:documentation>
- Port on which the host's socket for
- management communication should be opened.
- If not specified the port will not be opened.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="secure-port" type="xs:int" use="optional">
- <xs:annotation>
- <xs:documentation>
- Port on which the host's socket for HTTPS
- management communication should be opened.
- If not specified the port will not be opened.
- If specified the security-realm will be required to obtain
- the SSL configuration.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="server-management-interfacesType">
- <xs:sequence>
- <xs:element name="native-remoting-interface" type="management-remoting-interfaceType" minOccurs="0"/>
- <xs:element name="native-interface" type="server-native-management-interfaceType" minOccurs="0"/>
- <xs:element name="http-interface" type="server-http-management-interfaceType" minOccurs="0"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="server-native-management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket used by host or standalone server's exposed HTTP management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket to use for the native management interface is a choice
- between a direct configuration of the address and port, or a reference to a socket-binding
- configuration in the server's socket-binding-group element. The latter is the recommended
- approach is it makes it easier to avoid port conflicts by taking advantage of the
- socket-binding-group's port-offset configuration. Direct configuration of the address and
- ports is provided to preserve backward compatibility.
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="socket" type="native-management-socketType"/>
- <xs:element name="socket-binding" type="native-management-socket-binding-refType"/>
- </xs:choice>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="native-management-socket-binding-refType">
- <xs:annotation>
- <xs:documentation>
- Reference to the configuration of the socket to be used by a standalone server's exposed native management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="native" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Name of a socket-binding configuration declared in the server's socket-binding-group.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="server-http-management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of a standalone server's exposed HTTP/HTTPS management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket to use for the HTTP/HTTPS management interface is a choice
- between a direct configuration of the address and ports, or a reference to socket-binding
- configurations in the server's socket-binding-group element. The latter is the recommended
- approach is it makes it easier to avoid port conflicts by taking advantage of the
- socket-binding-group's port-offset configuration. Direct configuration of the address and
- ports is provided to preserve backward compatibility.
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="socket" type="http-management-socketType"/>
- <xs:element name="socket-binding" type="http-management-socket-binding-refType"/>
- </xs:choice>
- <xs:attribute name="console-enabled" type="xs:boolean" use="optional" default="true"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="http-management-socket-binding-refType">
- <xs:annotation>
- <xs:documentation>
- Reference to the configurations of the sockets to be used by a standalone server's exposed HTTP and HTTPS management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="http" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Name of a socket-binding configuration declared in the server's socket-binding-group to use for a HTTP socket.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="https" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Name of a socket-binding configuration declared in the server's socket-binding-group to use for a HTTPS socket.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="management-remoting-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Makes the native management interface available via the connectors set up in the remoting subsystem,
- using the remoting subsystem's endpoint. This should only be used for a server not for a HC/DC.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="domain-controllerType">
- <xs:choice>
- <xs:element name="local" type="domain-controller-localType"/>
- <xs:element name="remote" type="domain-controller-remoteType"/>
- </xs:choice>
- </xs:complexType>
- <xs:complexType name="domain-controller-localType" />
- <xs:complexType name="domain-controller-remoteType">
- <xs:sequence>
- <xs:element name="ignored-resources" type="ignored-resourcesType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="host" type="xs:string" use="required" />
- <xs:attribute name="port" type="xs:integer" use="required" />
- <xs:attribute name="security-realm" type="xs:string" use="optional" />
- </xs:complexType>
- <xs:complexType name="ignored-resourcesType">
- <xs:annotation>
- <xs:documentation>
- Provides names of direct child resources of the domain root resource requests for which the
- Host Controller should ignore. Only relevant on a slave Host Controller. Configuring such
- "ignored resources" may help allow a Host Controller from an earlier release to function as a
- slave to a master Host Controller running a later release, by letting the slave ignore portions
- of the configuration its version of the software cannot understand. This strategy can only be
- successful if the servers managed by the slave Host Controller do not reference any of the
- ignored configuration.
- Supports the following attributes:
- type -- the type of resource (e.g. 'profile' or 'socket-binding-group') certain instances of which
- should be ignored. The value corresponds to the 'key' portion of the first element in the
- resource's address (e.g. 'profile' in the address /profile=ha/subsystem=web)
- wildcard -- if 'true', all resources of the given type should be ignored.
- Child elements list the names of specific instances of the given type of resource
- that should be ignored. Each element in the list corresponds to the 'value' portion of
- the first element in the resource's address (e.g. 'ha' in the address /profile=ha/subsystem=web.)
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="instance" type="ignored-resource-instanceType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="type" type="xs:string" use="required" />
- <xs:attribute name="wildcard" type="xs:boolean" use="optional" default="false" />
- <xs:attribute name="names" type="xs:string" use="optional" />
- </xs:complexType>
- <xs:complexType name="ignored-resource-instanceType">
- <xs:annotation>
- <xs:documentation>
- The name of a specific instances of a particular type of resource that should be ignored.
- The 'name' attribute corresponds to the 'value' portion of the first element in the resource's address
- (e.g. 'ha' in the address /profile=ha/subsystem=web.)
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required" />
- </xs:complexType>
- <xs:complexType name="serversType">
- <xs:sequence>
- <xs:element name="server" type="serverType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="serverType">
- <xs:all>
- <xs:element name="paths" type="specified-pathsType" minOccurs="0" maxOccurs="1" />
- <xs:element name="interfaces" type="specified-interfacesType" minOccurs="0"/>
- <xs:element name="socket-bindings" type="server-socket-bindingsType" minOccurs="0"/>
- <!--<xs:element name="loggers" type="loggersType" minOccurs="0"/>-->
- <xs:element name="system-properties" type="properties-with-boottime" minOccurs="0"/>
- <xs:element name="jvm" minOccurs="0" type="serverJvmType"/>
- </xs:all>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="group" type="xs:string" use="required"/>
- <xs:attribute name="auto-start" type="xs:boolean" default="true"/>
- </xs:complexType>
- <xs:complexType name="server-socket-bindingsType">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- Server-specific overrides to the default socket binding configuration inherited from the server group.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="socket-binding-group" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- The socket binding group to use for the server. If undefined, the socket binding group
- specified for the server group is used.
- ]]>
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port-offset" type="xs:int" default="0">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- Increment to apply to the base port values defined in the
- referenced socket binding group to derive the values to use on this
- server.
- ]]>
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="extensionsType">
- <xs:annotation>
- <xs:documentation>Contains a list of extension modules.</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="extension" type="extensionType" minOccurs="1" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="extensionType">
- <xs:annotation>
- <xs:documentation>
- A module that extends the standard capabilities of a domain
- or a standalone server.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="module" use="required" type="xs:string">
- <xs:annotation>
- <xs:documentation>The name of the module</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="server-groupsType">
- <xs:sequence>
- <xs:element name="server-group" type="server-groupType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="server-groupType">
- <xs:sequence>
- <xs:element name="jvm" type="namedJvmType" minOccurs="0"/>
- <xs:element name="socket-binding-group" type="socket-binding-group-refType" minOccurs="1"/>
- <xs:element name="deployments" type="server-groupDeploymentsType" minOccurs="0"/>
- <xs:element name="system-properties" minOccurs="0" type="properties-with-boottime"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string">
- <xs:annotation>
- <xs:documentation>
- The name of the server group
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="profile" type="xs:string">
- <xs:annotation>
- <xs:documentation>
- The name of the profile this server is running.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="management-subsystem-endpoint" type="xs:boolean" default="false">
- <xs:annotation>
- <xs:documentation>
- Set to true to have servers belonging to the server group connect back to the host controller using the
- endpoint from their remoting subsystem. The subsystem must be preset for this to
- work.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="server-groupDeploymentsType">
- <xs:annotation>
- <xs:documentation>Contains a list of deployments that have been mapped to a server-group.</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="deployment" type="base-deploymentType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="server-groupDeploymentType">
- <xs:annotation>
- <xs:documentation>A deployment that has been mapped to a server group.</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="base-deploymentType">
- <!-- TODO clarify what a value of 'false' means -->
- <xs:attribute name="enabled" use="optional" type="xs:boolean" default="true">
- <xs:annotation>
- <xs:documentation>Whether the deployment deploy automatically when the server starts up.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="base-deploymentType">
- <xs:attribute name="name" use="required">
- <xs:annotation>
- <xs:documentation>Unique identifier of the deployment. Must be unique across all deployments.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="runtime-name" use="required">
- <xs:annotation>
- <xs:documentation>Name by which the deployment will be known within a running server.of the deployment.
- Does not need to be unique across all deployments in the domain, although it must be unique within
- an individual server. For example, two different deployments running on different servers in
- the domain could both have a 'runtime-name' of 'example.war', with one having a 'name'
- of 'example.war_v1' and another with an 'name' of 'example.war_v2'.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="server-deploymentsType">
- <xs:annotation>
- <xs:documentation>Contains a list of deployments that have been mapped to a server.</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="deployment" type="server-deploymentType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="server-deploymentType">
- <xs:annotation>
- <xs:documentation>A deployment that has been mapped to a server.</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="base-deploymentType">
- <xs:sequence>
- <!-- TODO: maxOccurs should be unbounded once overlays are in place -->
- <xs:choice maxOccurs="1">
- <xs:element name="content" type="contentType"/>
- <xs:element name="fs-archive" type="fs-archiveType"/>
- <xs:element name="fs-exploded" type="fs-explodedType"/>
- </xs:choice>
- </xs:sequence>
- <!-- TODO clarify what a value of 'false' means -->
- <xs:attribute name="enabled" use="optional" type="xs:boolean" default="true">
- <xs:annotation>
- <xs:documentation>Whether the deployment deploy automatically when the server starts up.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="contentType">
- <xs:attribute name="sha1" use="required">
- <xs:annotation>
- <xs:documentation>The checksum of the content</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="fs-archiveType">
- <xs:annotation>
- <xs:documentation>Archived content found on the filesystem</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="fs-baseType"/>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="fs-baseType">
- <xs:complexContent>
- <xs:extension base="pathType"/>
- </xs:complexContent>
- <!-- TODO: make path required
- <xs:complexContent>
- <xs:restriction base="pathType">
- <xs:attribute name="path" use="required"/>
- </xs:restriction>
- </xs:complexContent>
- -->
- </xs:complexType>
- <xs:complexType name="fs-explodedType">
- <xs:annotation>
- <xs:documentation>Exploded content found on the filesystem</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="fs-baseType"/>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="domain-deploymentsType">
- <xs:annotation>
- <xs:documentation>Contains a list of domain-level deployments</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="deployment" type="domain-deploymentType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="domain-deploymentType">
- <xs:annotation>
- <xs:documentation>Deployment represents anything that can be deployed (e.g. an application such as EJB-JAR,
- WAR, EAR,
- any kind of standard archive such as RAR or JBoss-specific deployment),
- which can be enabled or disabled on a domain level.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="base-deploymentType">
- <xs:sequence>
- <!-- TODO: maxOccurs should be unbounded once overlays are in place -->
- <xs:choice maxOccurs="1">
- <xs:element name="content" type="contentType"/>
- <xs:element name="fs-archive" type="fs-archiveType"/>
- <xs:element name="fs-exploded" type="fs-explodedType"/>
- </xs:choice>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <!-- TODO this is not used anywhere yet -->
- <xs:complexType name="clustersType">
- <xs:complexContent>
- <xs:extension base="server-groupType">
- <xs:sequence>
- <xs:element name="partition-name" type="xs:string"/>
- <xs:element name="state-transfer-timeout" type="xs:integer"/>
- <xs:element name="method-call-timeout" type="xs:integer"/>
- </xs:sequence>
- <xs:attribute name="category" type="xs:string" use="required"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <!-- domain-configuration related definitions -->
- <xs:complexType name="domain-configurationType">
- <xs:annotation>
- <xs:documentation>The domain controller/server bootstrap configuration</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element ref="bootstrapURI"/>
- </xs:sequence>
- </xs:complexType>
- <xs:element name="bootstrapURI" type="xs:string">
- <xs:annotation>
- <xs:documentation>The URI for bootstrapping a domain server</xs:documentation>
- </xs:annotation>
- </xs:element>
- <xs:complexType name="profilesType">
- <xs:annotation>
- <xs:documentation>Contains a list of profiles available for use in the domain</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="profile" type="domain-profileType" minOccurs="1" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="domain-profileType">
- <xs:annotation>
- <xs:documentation>Contains a list of subsystems</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded">
- <xs:annotation>
- <xs:documentation>A profile declaration may include configuration
- elements from other namespaces for the subsystems that make up the profile.
- </xs:documentation>
- </xs:annotation>
- </xs:any>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>Name of the profile</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="standalone-profileType">
- <xs:annotation>
- <xs:documentation>Contains a list of subsystems</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:choice minOccurs="1" maxOccurs="unbounded">
- <xs:any namespace="##other">
- <xs:annotation>
- <xs:documentation>A profile declaration may include configuration
- elements from other namespaces for the subsystems that make up the profile.
- </xs:documentation>
- </xs:annotation>
- </xs:any>
- </xs:choice>
- </xs:sequence>
- </xs:complexType>
- <!-- general socket definition -->
- <xs:complexType name="socket-binding-groupsType">
- <xs:annotation>
- <xs:documentation>Contains a list of socket binding groups</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="socket-binding-group" type="socket-binding-groupType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="socket-binding-groupType">
- <xs:annotation>
- <xs:documentation>Contains a list of socket configurations</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="socket-binding" type="socket-bindingType" maxOccurs="unbounded"/>
- <xs:element name="outbound-socket-binding" type="outbound-socket-bindingType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="default-interface" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Name of an interface that should be used as the interface for
- any sockets that do not explicitly declare one.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="standalone-socket-binding-groupType">
- <xs:annotation>
- <xs:documentation>Contains a list of socket configurations</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="socket-binding" type="socket-bindingType" maxOccurs="unbounded"/>
- <xs:element name="outbound-socket-binding" type="outbound-socket-bindingType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="default-interface" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Name of an interface that should be used as the interface for
- any sockets that do not explicitly declare one.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port-offset" type="xs:int" use="optional" default="0">
- <xs:annotation>
- <xs:documentation>
- Increment to apply to the base port values defined in the
- socket group to derive the values to use on this
- server.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="socket-bindingType">
- <xs:annotation>
- <xs:documentation>Configuration information for a socket.</xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="client-mapping" type="socket-binding-client-mappingType"
- minOccurs="0" maxOccurs="unbounded">
- <xs:annotation>
- <xs:documentation>
- Specifies zero or more client mappings for this socket binding.
- A client connecting to this socket should use the destination address
- specified in the mapping that matches its desired outbound interface.
- This allows for advanced network topologies that use either network
- address translation, or have bindings on multiple network interfaces
- to function.
- Each mapping should be evaluated in declared order, with the first successful
- match used to determine the destination.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- </xs:choice>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="interface" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Name of the interface to which the socket should be bound, or, for multicast
- sockets, the interface on which it should listen. This should
- be one of the declared interfaces.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port" type="xs:unsignedShort" use="optional" default="0">
- <xs:annotation>
- <xs:documentation>
- Number of the port to which the socket should be bound.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="fixed-port" type="xs:boolean" use="optional" default="false">
- <xs:annotation>
- <xs:documentation>
- Whether the port value should remain fixed even if numerically offsets
- are applied to the other sockets in the socket group..
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="multicast-address" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Multicast address on which the socket should receive multicast
- traffic. If unspecified, the socket will not be configured
- to receive multicast.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="multicast-port" type="xs:positiveInteger" use="optional">
- <xs:annotation>
- <xs:documentation>
- Port on which the socket should receive multicast
- traffic. Must be configured if 'multicast-address' is configured.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="socket-binding-client-mappingType">
- <xs:annotation>
- <xs:documentation>
- Type definition for a client mapping on a socket binding. A client
- mapping specifies how external clients should connect to this
- socket's port, provided that the client's outbound interface
- match the specified source network value.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="source-network" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Source network the client connection binds on. This value is in
- the form of ip/netmask. A client should match this value against
- the desired client host network interface, and if matched the
- client should connect to the corresponding destination values.
- If omitted this mapping should match any interface.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="destination-address" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The destination address that a client should connect to if the
- source-network matches. This value can either be a hostname or
- an ip address.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="destination-port" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The destination port that a client should connect to if the
- source-network matches.
- If omitted this mapping will reuse the effective socket binding
- port.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="outbound-socket-bindingType">
- <xs:annotation>
- <xs:documentation>Configuration information for a outbound socket.</xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="remote-destination" type="remote-destinationType" maxOccurs="1"/>
- <xs:element name="local-destination" type="local-destinationType" maxOccurs="1"/>
- </xs:choice>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of the outbound socket binding
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="source-interface" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The name of the interface that should be used for setting up the source address of the
- outbound socket. This should be one of the declared interfaces.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="source-port" type="xs:positiveInteger" use="optional">
- <xs:annotation>
- <xs:documentation>
- The port number that will be used for setting the source addresss of the outbound socket. If the
- source-interface attribute has been specified and the source-port attribute is absent,
- then the system uses a ephemeral port while binding the socket to a source address.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="fixed-source-port" type="xs:boolean" use="optional" default="false">
- <xs:annotation>
- <xs:documentation>
- Whether the source-port value should remain fixed even if the socket binding group specifies
- a port offset
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="remote-destinationType">
- <xs:attribute name="host" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The remote server address to which the outbound socket has to be connect.
- The address can be either a IP address of the host server of the hostname of the server
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port" type="xs:positiveInteger" use="required">
- <xs:annotation>
- <xs:documentation>
- The remote port to which the outbound socket has to connect.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="local-destinationType">
- <xs:attribute name="socket-binding-ref" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The reference to a socket binding that has to be used as the destination for the outbound
- socket binding. This socket binding name should belong to the same socket binding group
- to which this local destination client socket belongs.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="socket-binding-group-refType">
- <xs:attribute name="ref" type="xs:string">
- <xs:annotation>
- <xs:documentation>
- The socket group to use for the server group or server.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port-offset" type="xs:int" default="0">
- <xs:annotation>
- <xs:documentation>
- Increment to apply to the base port values defined in the
- referenced socket group to derive the values to use on this
- server.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="named-interfacesType">
- <xs:annotation>
- <xs:documentation>
- A list of named network interfaces. The interfaces may or may
- not be fully specified (i.e. include criteria on how to determine
- their IP address.)
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="interface" type="named-interfaceType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <!-- TODO make this and specified-interfaceType the same except for interface-criteriaGroup minOccurs -->
- <xs:complexType name="named-interfaceType">
- <xs:annotation>
- <xs:documentation>
- A named network interface, but without any criteria
- for determining the IP address to associate with that interface.
- Acts as a placeholder in the model (e.g. at the domain level)
- until a fully specified interface definition is applied at a
- lower level (e.g. at the server level, where available addresses
- are known.)
- </xs:documentation>
- </xs:annotation>
- <xs:group ref="interface-criteriaGroup" minOccurs="0"/>
- <xs:attribute name="name" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:complexType name="specified-interfacesType">
- <xs:annotation>
- <xs:documentation>
- A list of fully specified named network interfaces.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="interface" type="specified-interfaceType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="specified-interfaceType">
- <xs:annotation>
- <xs:documentation>
- A named network interface, along with required criteria
- for determining the IP address to associate with that interface.
- </xs:documentation>
- </xs:annotation>
- <xs:group ref="interface-criteriaGroup" minOccurs="1"/>
- <xs:attribute name="name" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:group name="interface-criteriaGroup">
- <xs:annotation>
- <xs:documentation>
- A set of criteria that can be used at runtime to determine
- what IP address to use for an interface.
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="any-address" type="any-addressType"/>
- <xs:element name="any-ipv6-address" type="any-ipv6-addressType"/>
- <xs:element name="any-ipv4-address" type="any-ipv4-addressType"/>
- <xs:choice maxOccurs="unbounded">
- <xs:element name="inet-address" type="inet-addressType"/>
- <xs:element name="loopback" type="loopbackType"/>
- <xs:element name="loopback-address" type="loopback-addressType"/>
- <xs:element name="multicast" type="multicastType"/>
- <xs:element name="point-to-point" type="point-to-pointType"/>
- <xs:element name="virtual" type="interface-virtualType"/>
- <xs:element name="up" type="interface-upType"/>
- <xs:element name="public-address" type="public-addressType"/>
- <xs:element name="link-local-address" type="link-local-addressType"/>
- <xs:element name="site-local-address" type="site-local-addressType"/>
- <xs:element name="nic" type="nicType"/>
- <xs:element name="nic-match" type="nic-matchType"/>
- <xs:element name="subnet-match" type="subnet-matchType"/>
- <xs:element name="not" type="address-exclusionType"/>
- <xs:element name="any" type="address-exclusionType"/>
- </xs:choice>
- </xs:choice>
- </xs:group>
- <xs:complexType name="inet-addressType">
- <xs:attribute name="value" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Either a IP address in IPv6 or IPv4 dotted decimal notation,
- or a hostname that can be resolved to an IP address.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="nicType">
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of a network interface (e.g. eth0, eth1, lo).
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="nic-matchType">
- <xs:attribute name="pattern" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- A regular expression against which the names of the network
- interfaces available on the machine can be matched to find
- an acceptable interface.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="subnet-matchType">
- <xs:attribute name="value" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- A network IP address and the number of bits in the
- address' network prefix, written in "slash notation";
- e.g. "192.168.0.0/16".
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="address-exclusionType">
- <xs:choice>
- <xs:element name="inet-address" type="inet-addressType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="loopback" type="loopbackType"/>
- <xs:element name="loopback-address" type="loopback-addressType"/>
- <xs:element name="multicast" type="multicastType"/>
- <xs:element name="point-to-point" type="point-to-pointType"/>
- <xs:element name="virtual" type="interface-virtualType"/>
- <xs:element name="up" type="interface-upType"/>
- <xs:element name="public-address" type="public-addressType"/>
- <xs:element name="link-local-address" type="link-local-addressType"/>
- <xs:element name="site-local-address" type="site-local-addressType"/>
- <xs:element name="nic" type="nicType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="nic-match" type="nic-matchType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="subnet-match" type="subnet-matchType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:choice>
- </xs:complexType>
- <xs:complexType name="loopbackType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it is a loopback
- interface.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="loopback-addressType">
- <xs:annotation>
- <xs:documentation>
- A loopback address that may not actually be configured on the machine's loopback interface.
- Differs from inet-addressType in that the given value will be used even if no NIC can
- be found that has the IP address associated with it.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="value" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- An IP address in IPv6 or IPv4 dotted decimal notation.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="multicastType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it supports
- multicast.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="point-to-pointType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it is a point-to-point
- interface.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="interface-upType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it is currently up.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="interface-virtualType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it is a virtual
- interface.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="public-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it has a publicly
- routable address.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="site-local-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not an address associated
- with it is site-local.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="link-local-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not an address associated
- with it is link-local.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="any-ipv6-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that sockets using this interface
- should be bound to the IPv6 wildcard address (::).
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="any-ipv4-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that sockets using this interface
- should be bound to the IPv4 wildcard address (0.0.0.0).
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="any-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that sockets using this interface
- should be bound to a wildcard address. The IPv6 wildcard
- address (::) will be used unless the java.net.preferIpV4Stack
- system property is set to true, in which case the IPv4
- wildcard address (0.0.0.0) will be used. If a socket is
- bound to an IPv6 anylocal address on a dual-stack machine,
- it can accept both IPv6 and IPv4 traffic; if it is bound to
- an IPv4 (IPv4-mapped) anylocal address, it can only accept
- IPv4 traffic.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="socketType">
- <xs:annotation>
- <xs:documentation>Configuration information for a socket.</xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="interface" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Name of the interface to which the socket should be bound, or, for multicast
- sockets, the interface on which it should listen. This should
- be one of the declared interfaces.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port" type="xs:unsignedShort" use="optional" default="0">
- <xs:annotation>
- <xs:documentation>
- Number of the port to which the socket should be bound.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="fixed-port" type="xs:boolean" use="optional" default="false">
- <xs:annotation>
- <xs:documentation>
- Whether the port value should remain fixed even if numerically offsets
- are applied to the other sockets in the socket group..
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="multicast-address" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Multicast address on which the socket should receive multicast
- traffic. If unspecified, the socket will not be configured
- to receive multicast.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="multicast-port" type="xs:positiveInteger" use="optional">
- <xs:annotation>
- <xs:documentation>
- Port on which the socket should receive multicast
- traffic. If unspecified, the socket will not be configured
- to receive multicast.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <!-- Path configurations -->
- <xs:complexType name="named-pathsType">
- <xs:annotation>
- <xs:documentation>
- A list of named filesystem paths. The paths may or may
- not be fully specified (i.e. include the actual paths.)
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="path" type="named-pathType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="named-pathType">
- <xs:annotation>
- <xs:documentation>
- A named filesystem path, but without a requirement to specify
- the actual path. If no actual path is specified, acts as a
- as a placeholder in the model (e.g. at the domain level)
- until a fully specified path definition is applied at a
- lower level (e.g. at the host level, where available addresses
- are known.)
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="pathType">
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of the path. Cannot be one of the standard fixed paths
- provided by the system:
- jboss.home - the root directory of the JBoss AS distribution
- user.home - user's home directory
- user.dir - user's current working directory
- java.home - java installation directory
- jboss.server.base.dir - root directory for an individual server
- instance
- Note that the system provides other standard paths that can be
- overridden by declaring them in the configuration file. See
- the 'relative-to' attribute documentation for a complete
- list of standard paths.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="pathType">
- <xs:attribute name="path">
- <xs:annotation>
- <xs:documentation>
- The actual filesystem path. Treated as an absolute path, unless the
- 'relative-to' attribute is specified, in which case the value
- is treated as relative to that path.
- If treated as an absolute path, the actual runtime pathname specified
- by the value of this attribute will be determined as follows:
- If this value is already absolute, then the value is directly
- used. Otherwise the runtime pathname is resolved in a
- system-dependent way. On UNIX systems, a relative pathname is
- made absolute by resolving it against the current user directory.
- On Microsoft Windows systems, a relative pathname is made absolute
- by resolving it against the current directory of the drive named by the
- pathname, if any; if not, it is resolved against the current user
- directory.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:minLength value="1"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="relative-to" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The name of another previously named path, or of one of the
- standard paths provided by the system. If 'relative-to' is
- provided, the value of the 'path' attribute is treated as
- relative to the path specified by this attribute. The standard
- paths provided by the system include:
- jboss.home - the root directory of the JBoss AS distribution
- user.home - user's home directory
- user.dir - user's current working directory
- java.home - java installation directory
- jboss.server.base.dir - root directory for an individual server
- instance
- jboss.server.config.dir - directory in which server configuration
- files are stored.
- jboss.server.data.dir - directory the server will use for persistent
- data file storage
- jboss.server.log.dir - directory the server will use for
- log file storage
- jboss.server.temp.dir - directory the server will use for
- temporary file storage
- jboss.domain.servers.dir - directory under which a host controller
- will create the working area for
- individual server instances
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="specified-pathsType">
- <xs:annotation>
- <xs:documentation>
- A list of named filesystem paths.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="path" type="specified-pathType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="specified-pathType">
- <xs:annotation>
- <xs:documentation>
- A named filesystem path.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of the path. Cannot be one of the standard fixed paths
- provided by the system:
- jboss.home.dir - the root directory of the JBoss AS distribution
- user.home - user's home directory
- user.dir - user's current working directory
- java.home - java installation directory
- jboss.server.base.dir - root directory for an individual server
- instance
- Note that the system provides other standard paths that can be
- overridden by declaring them in the configuration file. See
- the 'relative-to' attribute documentation for a complete
- list of standard paths.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="path" use="required">
- <xs:annotation>
- <xs:documentation>
- The actual filesystem path. Treated as an absolute path, unless the
- 'relative-to' attribute is specified, in which case the value
- is treated as relative to that path.
- If treated as an absolute path, the actual runtime pathname specified
- by the value of this attribute will be determined as follows:
- If this value is already absolute, then the value is directly
- used. Otherwise the runtime pathname is resolved in a
- system-dependent way. On UNIX systems, a relative pathname is
- made absolute by resolving it against the current user directory.
- On Microsoft Windows systems, a relative pathname is made absolute
- by resolving it against the current directory of the drive named by the
- pathname, if any; if not, it is resolved against the current user
- directory.
- Note relative path declarations have to use '/' as file separator.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:minLength value="1"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="relative-to" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The name of another previously named path, or of one of the
- standard paths provided by the system. If 'relative-to' is
- provided, the value of the 'path' attribute is treated as
- relative to the path specified by this attribute. The standard
- paths provided by the system include:
- jboss.home.dir - the root directory of the JBoss AS distribution
- user.home - user's home directory
- user.dir - user's current working directory
- java.home - java installation directory
- jboss.server.base.dir - root directory for an individual server
- instance
- jboss.server.config.dir - directory in which server configuration
- files are stored.
- jboss.server.data.dir - directory the server will use for persistent
- data file storage
- jboss.server.log.dir - directory the server will use for
- log file storage
- jboss.server.temp.dir - directory the server will use for
- temporary file storage
- jboss.domain.servers.dir - directory under which a host controller
- will create the working area for
- individual server instances
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <!-- JVM configurations -->
- <xs:complexType name="jvmsType">
- <xs:sequence>
- <xs:element name="jvm" type="namedJvmType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="jvmType">
- <xs:all minOccurs="0" maxOccurs="1">
- <xs:element name="heap" type="heapType" minOccurs="0"/>
- <!-- XX:PermSize, XX:MaxPermSize -->
- <xs:element name="permgen" type="bounded-memory-sizeType" minOccurs="0"/>
- <!-- Xss -->
- <xs:element name="stack" type="memory-sizeType" minOccurs="0"/>
- <xs:element name="agent-lib" type="jvm-agentLibType" minOccurs="0"/>
- <xs:element name="agent-path" type="jvm-agentPathType" minOccurs="0"/>
- <xs:element name="java-agent" type="jvm-javaagentType" minOccurs="0"/>
- <xs:element name="jvm-options" type="jvm-optionsType" minOccurs="0"/>
- <xs:element name="environment-variables" type="environmentVariablesType" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="java-home" type="xs:string"/>
- <xs:attribute name="type" default="SUN">
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="SUN">
- <xs:annotation>
- <xs:documentation>Allows the full set of JVM options to be set via the jvm schema elements</xs:documentation>
- </xs:annotation>
- </xs:enumeration>
- <xs:enumeration value="IBM">
- <xs:annotation>
- <xs:documentation>Sets a subset of the JVM options via the jvm schema elements</xs:documentation>
- </xs:annotation>
- </xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="env-classpath-ignored" default="true" type="xs:boolean"/>
- </xs:complexType>
- <xs:complexType name="namedJvmType">
- <xs:complexContent>
- <xs:extension base="jvmType">
- <xs:attribute name="name" type="xs:string"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="serverJvmType">
- <xs:complexContent>
- <xs:extension base="namedJvmType">
- <xs:attribute name="debug-enabled" type="xs:boolean" default="false"/>
- <xs:attribute name="debug-options" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="heapType">
- <xs:attribute name="size" use="optional">
- <xs:annotation>
- <xs:documentation>Initial JVM heap size</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="max-size" use="optional">
- <xs:annotation>
- <xs:documentation>Maximum JVM heap size</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="jvm-optionsType">
- <xs:sequence>
- <xs:element name="option" type="jvm-optionType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="jvm-optionType">
- <xs:attribute name="value" use="required">
- <xs:annotation>
- <xs:documentation>JVM option value</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="jvm-agentLibType">
- <xs:attribute name="value" use="required">
- <xs:annotation>
- <xs:documentation>JVM agent lib value </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="jvm-agentPathType">
- <xs:attribute name="value" use="required">
- <xs:annotation>
- <xs:documentation>JVM agent path value </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="jvm-javaagentType">
- <xs:attribute name="value" use="required">
- <xs:annotation>
- <xs:documentation>JVM javaagent value </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="bounded-memory-sizeType">
- <xs:attribute name="size" type="xs:string"/>
- <xs:attribute name="max-size" type="xs:string"/>
- </xs:complexType>
- <xs:complexType name="memory-sizeType">
- <xs:attribute name="size" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:complexType name="properties-with-boottime">
- <xs:sequence>
- <xs:element name="property" type="boottimePropertyType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="properties">
- <xs:sequence>
- <xs:element name="property" type="propertyType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="environmentVariablesType">
- <xs:sequence>
- <xs:element name="variable" type="propertyType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="propertyType">
- <xs:attribute name="name" use="required"/>
- <xs:attribute name="value" use="optional"/>
- </xs:complexType>
- <xs:complexType name="boottimePropertyType">
- <xs:complexContent>
- <xs:extension base="propertyType">
- <xs:attribute name="boot-time" type="xs:boolean" default="true"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="vaultType">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- Vault Configuration.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="vault-option" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="code" type="xs:string" use="optional"/>
- </xs:complexType>
- <xs:complexType name="management-client-contentType">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- Storage information about re-usable chunks of data useful to management clients that are stored
- in the domain content repository.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="rollout-plans" type="contentType" minOccurs="0" maxOccurs="1">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- Storage information about a set of named management update rollout plans useful to management
- clients that are stored in the domain content repository. The management API exposed by the domain
- controller provides access to these plans to management clients, allowing clients to use the plans
- by referencing them by name, avoiding the need to recreate them for each use.
- ]]>
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- </xs:schema>
|