JBoss.orgCommunity Documentation
The configuration for the IronJacamar container is located in the config/ directory.
The IronJacamar container uses JBoss Logging framework as the implementation.
The configuration is done in the
config/logging.properties
file.
Consult the JBoss Logging documentation on how the service can be configured.
The IronJacamar container uses the JBoss Transaction Manager as its transaction implementation.
The configuration is done in the
config/transaction.xml
file.
Consult the JBoss Transaction documentation on how the service can be configured.
The IronJacamar deployer is configured in the
config/bootstrap/jca.xml
file.
The configuration of the resource adapter deployer chain is handled
by a org.jboss.jca.deployers.fungal.RAConfiguration bean.
<bean name="RAConfiguration"
class="org.jboss.jca.deployers.fungal.RAConfiguration">
<property name="ArchiveValidation">true</property>
<property name="ArchiveValidationFailOnWarn">false</property>
<property name="ArchiveValidationFailOnError">true</property>
<property name="BeanValidation">true</property>
<property name="PrintStream">
<inject bean="JBossStdioContext" property="Out"/>
</property>
<property name="DefaultBootstrapContext">
<inject bean="DefaultBootstrapContext"/>
</property>
<property name="JndiStrategy"><inject bean="JndiStrategy"/></property>
<property name="TransactionManager">
<inject bean="RealTransactionManager"/>
</property>
<property name="MetadataRepository"><inject bean="MDR"/></property>
</bean>
Table 4.1. Resource adapter deployer configuration
| Property | Type | Description |
|---|---|---|
ArchiveValidation | boolean |
Toggle archive validation for the deployment units.
Default: |
ArchiveValidationFailOnWarn | boolean |
Should an archive validation warning report fail the deployment.
Default: |
ArchiveValidationFailOnError | boolean |
Should an archive validation error report fail the deployment.
Default: |
BeanValidation | boolean |
Toggle bean validation (JSR-303) for the deployment units.
Default: |
DefaultBootstrapContext | org.jboss.jca.core.api.bootstrap.CloneableBootstrapContext | Specifies the default bootstrap context for resource adapters |
BootstrapContexts | Map<String, org.jboss.jca.core.api.bootstrap.CloneableBootstrapContext> |
Bootstrap context map (unique name to a cloneable bootstrap context) which allows
developers to bind (through ironjacamar.xml) their resource adapter to
a specific bootstrap context instance.
|
PrintStream | java.io.PrintStream |
Specifies which print stream that should be used to handle the LogWriters
|
MetadataRepository | org.jboss.jca.core.spi.mdr.MetadataRepository | The metadata repository |
ResourceAdapterRepository | org.jboss.jca.core.spi.rar.ResourceAdapterRepository | The resource adapter repository |
ScopeDeployment | boolean |
Should each deployment be scoped (isolated) from the container. This feature allows
deployment of libraries of a different version than used in the container environment.
Default: |
JndiStrategy | org.jboss.jca.core.spi.naming.JndiStrategy |
Specifies the JNDI strategy policy for binding the connection factories into
the naming environment
The JNDI strategies are located in the
|
The initial deployer for resource adapter archives is handled
by a org.jboss.jca.deployers.fungal.RADeployer bean.
<bean name="RADeployer"
interface="com.github.fungal.spi.deployers.Deployer"
class="org.jboss.jca.deployers.fungal.RADeployer">
<property name="Configuration"><inject bean="RAConfiguration"/></property>
<depends>BeanValidation</depends>
<depends>JBossStdioContextSelector</depends>
</bean>
This deployer will register the resource adapters with the metadata repository in the system.
Table 4.2. Resource adapter deployer
| Property | Type | Description |
|---|---|---|
Configuration | org.jboss.jca.deployers.fungal.RAConfiguration | The configuration for the deployer |
The deployer for deploying our -ra.xml deployment descriptor is handled
by a org.jboss.jca.deployers.fungal.RaXmlDeployer bean.
The deployment descriptor is defined by the resource-adapters-1_0.xsd schema.
<bean name="RaXmlDeployer"
interface="com.github.fungal.spi.deployers.Deployer"
class="org.jboss.jca.deployers.fungal.RaXmlDeployer">
<property name="Configuration"><inject bean="DeployerConfiguration"/></property>
<property name="Kernel"><inject bean="Kernel"/></property>
<depends>BeanValidation</depends>
<depends>JBossStdioContextSelector</depends>
</bean>
This deployer will activate resource adapters based on the deployment information.
Table 4.3. Resource adapter metadata deployer
| Property | Type | Description |
|---|---|---|
Configuration | org.jboss.jca.deployers.fungal.RAConfiguration | The configuration for the deployer |
The deployer chain features an activator for resource adapter archives is handled
by the org.jboss.jca.deployers.fungal.RAActivator bean.
<bean name="RAActivator"
class="org.jboss.jca.deployers.fungal.RAActivator">
<property name="Configuration"><inject bean="RAConfiguration"/></property>
<property name="Kernel"><inject bean="Kernel"/></property>
<property name="ExcludeArchives">
<set elementClass="java.lang.String">
<value>jdbc-local.rar</value>
<value>jdbc-xa.rar</value>
</set>
</property>
<depends>BeanValidation</depends>
<depends>JBossStdioContextSelector</depends>
</bean>
This activator will activate any resource adapters which hasn't been activated yet unless they are in the excluded list.
Table 4.4. Resource adapter activator
| Property | Type | Description |
|---|---|---|
Configuration | org.jboss.jca.deployers.fungal.RAConfiguration | The configuration for the deployer |
Enabled | boolean |
Should the activator be enabled. Default is true
|
Kernel | com.github.fungal.api.Kernel | The kernel instance |
ExcludeArchives | java.util.Set | A set of resource adapter archives which should be excluded from activation |
The Java EE Connector Architecture 1.6 specification allows units of
javax.resource.spi.Work to be executed in a specific security context.
This is done through the use of Java Authentication Service Provider Interface for Containers (JSR-196)
call backs using the javax.security.auth.callback.Callback interface.
The support is activated by letting the work instance implement the
javax.resource.spi.work.WorkContextProvider
interface and returning an instance of javax.resource.spi.work.SecurityContext.
There is currently support for injecting a callback setup based on the file
config/callback.properties
The format of the callback.properties file is described in the file.
The callback setup can be configured through the Callback bean in the
config/bootstrap/jca.xml file.
<!-- Callback -->
<bean name="Callback"
interface="org.jboss.jca.core.spi.security.Callback"
class="org.jboss.jca.core.security.DefaultCallback">
<property name="File">${iron.jacamar.home}/config/callback.properties</property>
</bean>
There is support for creating a basic security domain which can provide
a javax.security.auth.Subject instance to deployments that
are using <security-domain> or
<security-domain-and-application> in their setup.
A security domain can be configured through
<!-- SubjectFactory -->
<bean name="DefaultSecurityDomain"
interface="org.jboss.security.SubjectFactory"
class="org.jboss.jca.core.security.DefaultSubjectFactory">
<property name="SecurityDomain">DefaultSecurityDomain</property>
<property name="UserName">user</property>
<property name="Password">password</property>
</bean>
beans.
The IronJacamar project can deploy datasources using the datasources-1_0.xsd or
datasources-1_1.xsd schemas.
The configuration is done in the
config/bootstrap/ds.xml
file.
Table 4.5. DsXmlDeployer
| Property | Type | Description |
|---|---|---|
JDBCLocal | String |
The name of the jdbc-local.rar deployment
|
JDBCXA | String |
The name of the jdbc-xa.rar deployment
|
TransactionManager | javax.transaction.TransactionManager | The transaction manager |
MetadataRepository | org.jboss.jca.core.spi.mdr.MetadataRepository | The metadata repository |
Kernel | com.github.fungal.api.Kernel | The kernel |
The datasource deployer can be removed from the environment by removing the ds.xml
file in
config/bootstrap/
as well as the reference in config/bootstrap/bootstrap.xml to the file.
Furthermore all jdbc-*.rar files in the system/ directory should be removed too.
The IronJacamar project features a web server which is used to serve web archive deployments. More information about Jetty can be found at the homepage.
The configuration is done in the
system/web.xml
file.
<bean name="WebServer" class="org.jboss.jca.web.WebServer">
<property name="Host">${iron.jacamar.bindaddress:localhost}</property>
<property name="Port">8080</property>
<property name="ExecutorService"><inject bean="Kernel" property="ExecutorService"/></property>
</bean>
Table 4.6. Web server
| Property | Type | Description |
|---|---|---|
Host | String |
Set the bind address for the web server
Default: |
Port | int |
Set the port for the web server
Default: |
AcceptQueueSize | int |
Set the accept queue size for the Jetty connector
Default: |
ExecutorService | java.util.concurrent.ExecutorService |
The thread pool for the web server
Default: The kernel thread pool |
The web server can be removed from the environment by removing the web.xml
file in
system/
Furthermore all .war files in the same directory should be removed too.
All the Jetty libraries can be removed by deleting the
lib/jetty
directory.