Commit e13fd096 authored by Nicolas Tachker's avatar Nicolas Tachker

Joram JCA connector for ironjacamar.

parent a5695eef
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>joram-jca-ironjacamar</artifactId>
<packaging>rar</packaging>
<name>JORAM :: joram :: jca :: ironjacamar</name>
<description>Builds the Joram jca ironjacamar project.</description>
<parent>
<groupId>org.ow2.joram</groupId>
<artifactId>joram-jca</artifactId>
<version>5.13.0-SNAPSHOT</version>
</parent>
<build>
<plugins>
<plugin>
<groupId>org.jboss.ironjacamar</groupId>
<artifactId>ironjacamar-validator-maven</artifactId>
<!-- The version of the plugin you want to use -->
<version>1.2.7.Final</version>
<executions>
<execution>
<goals>
<goal>validate</goal>
</goals>
</execution>
</executions>
<configuration>
<!-- output directory -->
<outputDir>${project.build.directory}</outputDir>
<!-- rar filename -->
<rarFile>${project.build.directory}/${project.artifactId}-${project.version}.rar</rarFile>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.ow2.joram</groupId>
<artifactId>joram-client-jca</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.ow2.joram</groupId>
<artifactId>jndi-client</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.ow2.jonas.osgi</groupId>
<artifactId>monolog</artifactId>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.core</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Deploy joram-jca-ironjacamar-XXX.rar
- Collocated Joram server (default):
------------------------------------
This resource adapter start a Joram server.
You must add the a3servers.xml and a3debug.cfg files in the config directory (see ra.xml: PlatformConfigDir)
a3servers.xml:
<?xml version="1.0"?>
<config>
<server id="0" name="S0" hostname="localhost">
<service class="org.objectweb.joram.mom.proxies.ConnectionManager"
args="root root"/>
<service class="org.objectweb.joram.mom.proxies.tcp.TcpProxyService"
args="16010"/>
</server>
</config>
a3debug.cfg:
monolog.classname org.objectweb.util.monolog.wrapper.javaLog.LoggerFactory
# tty : console handler
handler.tty.type Console
handler.tty.output System.out
handler.tty.pattern %d : %O{1}.%M : %m%n
# logf : rolling file handler
handler.logf.type RollingFile
handler.logf.output ../log/server.log
handler.logf.pattern %h %l %d, %m%n
handler.logf.fileNumber 2
handler.logf.maxSize 1000000
# logger definitions
logger.root.handler.0 tty
logger.root.handler.1 logf
logger.root.level WARN
#------
# JORAM
#-------
logger.fr.dyade.aaa.level WARN
#logger.fr.dyade.aaa.agent.Agent.level DEBUG
#logger.fr.dyade.aaa.agent.Engine.level DEBUG
#logger.fr.dyade.aaa.util.Transaction.level DEBUG
#logger.fr.dyade.aaa.util.Network.level DEBUG
#logger.fr.dyade.aaa.agent.Service.level DEBUG
#logger.fr.dyade.aaa.jndi2.client.level DEBUG
#logger.fr.dyade.aaa.jndi2.server.level DEBUG
#logger.org.objectweb.joram.level DEBUG
#logger.org.objectweb.joram.mom.level DEBUG
#logger.org.objectweb.joram.client.jms.level DEBUG
logger.org.objectweb.joram.client.connector.level INFO
#logger.org.objectweb.joram.shared.level DEBUG
ra.xml:
...
<!-- start JoramServer -->
<config-property>
<config-property-name>StartJoramServer</config-property-name>
<config-property-type>java.lang.Boolean</config-property-type>
<config-property-value>true</config-property-value>
</config-property>
<config-property>
<config-property-name>PlatformConfigDir</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>../config</config-property-value>
</config-property>
<config-property>
<config-property-name>ServerId</config-property-name>
<config-property-type>java.lang.Short</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>Storage</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>../tmp/s0</config-property-value>
</config-property>
...
- Remote Joram server:
----------------------
This resource adapter connect to a remote Joram server.
Rename the ra-remote.xml to ra.xml and configure the host/port values, by default localhost/16010.
Start the remote Joram server before deploying the resource adapter.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<ironjacamar>
<connection-definitions> <connection-definition class-name="org.objectweb.joram.client.connector.ManagedConnectionFactoryImpl" connectable="false" enabled="true" enlistment="true" jndi-name="java:jboss/eis/Connection" pool-name="Connection" sharable="true" use-ccm="true" use-java-context="true"> <xa-pool> <min-pool-size>0</min-pool-size> <max-pool-size>10</max-pool-size> <prefill>false</prefill> <use-strict-min>false</use-strict-min> <flush-strategy>FailingConnectionOnly</flush-strategy> <pad-xid>false</pad-xid> <wrap-xa-resource>true</wrap-xa-resource> </xa-pool> <recovery no-recovery="false" /> </connection-definition>
<connection-definition
class-name="org.objectweb.joram.client.connector.ManagedQueueConnectionFactoryImpl"
connectable="false" enabled="true" enlistment="true"
jndi-name="java:jboss/eis/QueueConnection" pool-name="QueueConnection"
sharable="true" use-ccm="true" use-java-context="true"> <xa-pool> <min-pool-size>0</min-pool-size> <max-pool-size>10</max-pool-size> <prefill>false</prefill> <use-strict-min>false</use-strict-min> <flush-strategy>FailingConnectionOnly</flush-strategy> <pad-xid>false</pad-xid> <wrap-xa-resource>true</wrap-xa-resource> </xa-pool> <recovery no-recovery="false" /> </connection-definition>
<connection-definition
class-name="org.objectweb.joram.client.connector.ManagedTopicConnectionFactoryImpl"
connectable="false" enabled="true" enlistment="true"
jndi-name="java:jboss/eis/TopicConnection" pool-name="TopicConnection"
sharable="true" use-ccm="true" use-java-context="true"> <xa-pool> <min-pool-size>0</min-pool-size> <max-pool-size>10</max-pool-size> <prefill>false</prefill> <use-strict-min>false</use-strict-min> <flush-strategy>FailingConnectionOnly</flush-strategy> <pad-xid>false</pad-xid> <wrap-xa-resource>true</wrap-xa-resource> </xa-pool> <recovery no-recovery="false" /> </connection-definition> </connection-definitions>
</ironjacamar>
<?xml version="1.0" encoding="UTF-8"?>
<!--
JORAM: Java(TM) Open Reliable Asynchronous Messaging
Copyright (C) 2012 ScalAgent Distributed Technologies
This library 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 any later version.
This library 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 library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA.
-->
<connector
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd"
version="1.5">
<description>J2EE 1.4 Resource Adapter for the JORAM JMS messaging platform</description>
<display-name>JORAM Resource Adapter</display-name>
<vendor-name>OW2 Consortium</vendor-name>
<eis-type>Java Message Service v 1.1</eis-type>
<resourceadapter-version>1.0</resourceadapter-version>
<resourceadapter>
<!-- RESOURCE ADAPTER -->
<resourceadapter-class>org.objectweb.joram.client.connector.JoramAdapter</resourceadapter-class>
<config-property>
<config-property-name>Name</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>joram_ra</config-property-value>
</config-property>
<!-- <config-property>-->
<!-- <config-property-name>JndiName</config-property-name>-->
<!-- <config-property-type>java.lang.String</config-property-type>-->
<!-- <config-property-value>scn:comp/resourceAdapter1</config-property-value>-->
<!-- </config-property>-->
<config-property>
<config-property-name>Collocated</config-property-name>
<config-property-type>java.lang.Boolean</config-property-type>
<config-property-value>true</config-property-value>
</config-property>
<!-- if Collocated = false set host and port value -->
<!-- <config-property> -->
<!-- <config-property-name>HostName</config-property-name> -->
<!-- <config-property-type>java.lang.String</config-property-type> -->
<!-- <config-property-value>localhost</config-property-value> -->
<!-- </config-property> -->
<!-- <config-property> -->
<!-- <config-property-name>ServerPort</config-property-name> -->
<!-- <config-property-type>java.lang.Integer</config-property-type> -->
<!-- <config-property-value>16010</config-property-value> -->
<!-- </config-property> -->
<config-property>
<config-property-name>RootName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>root</config-property-value>
</config-property>
<config-property>
<config-property-name>RootPasswd</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>root</config-property-value>
</config-property>
<config-property>
<config-property-name>IdentityClass</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>org.objectweb.joram.shared.security.SimpleIdentity</config-property-value>
</config-property>
<config-property>
<config-property-name>ConnectingTimer</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>60</config-property-value>
</config-property>
<!-- start JoramServer -->
<config-property>
<config-property-name>StartJoramServer</config-property-name>
<config-property-type>java.lang.Boolean</config-property-type>
<config-property-value>true</config-property-value>
</config-property>
<config-property>
<config-property-name>PlatformConfigDir</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>../config</config-property-value>
</config-property>
<config-property>
<config-property-name>ServerId</config-property-name>
<config-property-type>java.lang.Short</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>Storage</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>../tmp/s0</config-property-value>
</config-property>
<!-- administered the Joram server with the joramAdmin.xml -->
<config-property>
<config-property-name>AdminFileXML</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>joramAdmin.xml</config-property-value>
</config-property>
<!-- OutBound -->
<outbound-resourceadapter>
<!-- OutBound : managed connection factory -->
<connection-definition>
<managedconnectionfactory-class>org.objectweb.joram.client.connector.ManagedConnectionFactoryImpl</managedconnectionfactory-class>
<config-property>
<config-property-name>UserName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>anonymous</config-property-value>
</config-property>
<config-property>
<config-property-name>Password</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>anonymous</config-property-value>
</config-property>
<config-property>
<config-property-name>IdentityClass</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>org.objectweb.joram.shared.security.SimpleIdentity</config-property-value>
</config-property>
<config-property>
<config-property-name>Collocated</config-property-name>
<config-property-type>java.lang.Boolean</config-property-type>
<config-property-value>true</config-property-value>
</config-property>
<!-- if Collocated = false set host and port value -->
<!-- <config-property>-->
<!-- <config-property-name>HostName</config-property-name>-->
<!-- <config-property-type>java.lang.String</config-property-type>-->
<!-- <config-property-value>localhost</config-property-value>-->
<!-- </config-property>-->
<!-- <config-property>-->
<!-- <config-property-name>ServerPort</config-property-name>-->
<!-- <config-property-type>java.lang.Integer</config-property-type>-->
<!-- <config-property-value>16010</config-property-value>-->
<!-- </config-property>-->
<config-property>
<config-property-name>OutInterceptors</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value></config-property-value>
</config-property>
<config-property>
<config-property-name>InInterceptors</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value></config-property-value>
</config-property>
<config-property>
<config-property-name>outLocalAddress</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<!-- Empty value corresponds to INADDRANY (wildcard address) -->
<config-property-value></config-property-value>
</config-property>
<config-property>
<config-property-name>outLocalPort</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>ConnectingTimer</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>CnxPendingTimer</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>TxPendingTimer</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>multiThreadSync</config-property-name>
<config-property-type>java.lang.Boolean</config-property-type>
<config-property-value>false</config-property-value>
</config-property>
<config-property>
<config-property-name>multiThreadSyncDelay</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>1</config-property-value>
</config-property>
<connectionfactory-interface>javax.jms.ConnectionFactory</connectionfactory-interface>
<connectionfactory-impl-class>org.objectweb.joram.client.connector.OutboundConnectionFactory</connectionfactory-impl-class>
<connection-interface>javax.jms.Connection</connection-interface>
<connection-impl-class>org.objectweb.joram.client.connector.OutboundConnection</connection-impl-class>
</connection-definition>
<!-- OutBound : managed Queue connection factory -->
<connection-definition>
<managedconnectionfactory-class>org.objectweb.joram.client.connector.ManagedQueueConnectionFactoryImpl</managedconnectionfactory-class>
<config-property>
<config-property-name>UserName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>anonymous</config-property-value>
</config-property>
<config-property>
<config-property-name>Password</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>anonymous</config-property-value>
</config-property>
<config-property>
<config-property-name>IdentityClass</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>org.objectweb.joram.shared.security.SimpleIdentity</config-property-value>
</config-property>
<config-property>
<config-property-name>Collocated</config-property-name>
<config-property-type>java.lang.Boolean</config-property-type>
<config-property-value>true</config-property-value>
</config-property>
<!-- if Collocated = false set host and port value -->
<!-- <config-property>-->
<!-- <config-property-name>HostName</config-property-name>-->
<!-- <config-property-type>java.lang.String</config-property-type>-->
<!-- <config-property-value>localhost</config-property-value>-->
<!-- </config-property>-->
<!-- <config-property>-->
<!-- <config-property-name>ServerPort</config-property-name>-->
<!-- <config-property-type>java.lang.Integer</config-property-type>-->
<!-- <config-property-value>16010</config-property-value>-->
<!-- </config-property>-->
<config-property>
<config-property-name>OutInterceptors</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value></config-property-value>
</config-property>
<config-property>
<config-property-name>InInterceptors</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value></config-property-value>
</config-property>
<config-property>
<config-property-name>ConnectingTimer</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>CnxPendingTimer</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>TxPendingTimer</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>multiThreadSync</config-property-name>
<config-property-type>java.lang.Boolean</config-property-type>
<config-property-value>false</config-property-value>
</config-property>
<config-property>
<config-property-name>multiThreadSyncDelay</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>1</config-property-value>
</config-property>
<connectionfactory-interface>javax.jms.QueueConnectionFactory</connectionfactory-interface>
<connectionfactory-impl-class>org.objectweb.joram.client.connector.OutboundQueueConnectionFactory</connectionfactory-impl-class>
<connection-interface>javax.jms.QueueConnection</connection-interface>
<connection-impl-class>org.objectweb.joram.client.connector.OutboundQueueConnection</connection-impl-class>
</connection-definition>
<!-- OutBound : managed Topic connection factory -->
<connection-definition>
<managedconnectionfactory-class>org.objectweb.joram.client.connector.ManagedTopicConnectionFactoryImpl</managedconnectionfactory-class>
<config-property>
<config-property-name>UserName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>anonymous</config-property-value>
</config-property>
<config-property>
<config-property-name>Password</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>anonymous</config-property-value>
</config-property>
<config-property>
<config-property-name>IdentityClass</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>org.objectweb.joram.shared.security.SimpleIdentity</config-property-value>
</config-property>
<config-property>
<config-property-name>Collocated</config-property-name>
<config-property-type>java.lang.Boolean</config-property-type>
<config-property-value>true</config-property-value>
</config-property>
<!-- if Collocated = false set host and port value -->
<!-- <config-property>-->
<!-- <config-property-name>HostName</config-property-name>-->
<!-- <config-property-type>java.lang.String</config-property-type>-->
<!-- <config-property-value>localhost</config-property-value>-->
<!-- </config-property>-->
<!-- <config-property>-->
<!-- <config-property-name>ServerPort</config-property-name>-->
<!-- <config-property-type>java.lang.Integer</config-property-type>-->
<!-- <config-property-value>16010</config-property-value>-->
<!-- </config-property>-->
<config-property>
<config-property-name>OutInterceptors</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value></config-property-value>
</config-property>
<config-property>
<config-property-name>InInterceptors</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value></config-property-value>
</config-property>
<config-property>
<config-property-name>ConnectingTimer</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>CnxPendingTimer</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>TxPendingTimer</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>0</config-property-value>
</config-property>
<config-property>
<config-property-name>multiThreadSync</config-property-name>
<config-property-type>java.lang.Boolean</config-property-type>
<config-property-value>false</config-property-value>
</config-property>
<config-property>
<config-property-name>multiThreadSyncDelay</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>1</config-property-value>
</config-property>
<connectionfactory-interface>javax.jms.TopicConnectionFactory</connectionfactory-interface>
<connectionfactory-impl-class>org.objectweb.joram.client.connector.OutboundTopicConnectionFactory</connectionfactory-impl-class>
<connection-interface>javax.jms.TopicConnection</connection-interface>
<connection-impl-class>org.objectweb.joram.client.connector.OutboundTopicConnection</connection-impl-class>
</connection-definition>
<transaction-support>XATransaction</transaction-support>
<reauthentication-support>false</reauthentication-support>
</outbound-resourceadapter>
<!-- InBound -->
<inbound-resourceadapter>
<messageadapter>
<messagelistener>
<messagelistener-type>javax.jms.MessageListener</messagelistener-type>
<activationspec>
<!-- Activation spec -->
<activationspec-class>org.objectweb.joram.client.connector.ActivationSpecImpl</activationspec-class>
<required-config-property>
<config-property-name>destinationType</config-property-name>
</required-config-property>
<required-config-property>
<config-property-name>destination</config-property-name>
</required-config-property>
</activationspec>
</messagelistener>
</messageadapter>
</inbound-resourceadapter>
</resourceadapter>
</connector>
<?xml version="1.0" encoding="UTF-8"?>
<!--
JORAM: Java(TM) Open Reliable Asynchronous Messaging
Copyright (C) 2012 ScalAgent Distributed Technologies
This library 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 any later version.
This library 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 library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA.
-->
<connector
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd"
version="1.5">
<description>J2EE 1.4 Resource Adapter for the JORAM JMS messaging platform</description>
<display-name>JORAM Resource Adapter</display-name>
<vendor-name>OW2 Consortium</vendor-name>
<eis-type>Java Message Service v 1.1</eis-type>
<resourceadapter-version>1.0</resourceadapter-version>
<resourceadapter>
<!-- RESOURCE ADAPTER -->
<resourceadapter-class>org.objectweb.joram.client.connector.JoramAdapter</resourceadapter-class>
<config-property>
<config-property-name>Name</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>joram_ra</config-property-value>
</config-property>
<!-- <config-property>-->
<!-- <config-property-name>JndiName</config-property-name>-->
<!-- <config-property-type>java.lang.String</config-property-type>-->
<!-- <config-property-value>scn:comp/resourceAdapter1</config-property-value>-->
<!-- </config-property>-->
<config-property>
<config-property-name>Collocated</config-property-name>
<config-property-type>java.lang.Boolean</config-property-type>
<config-property-value>false</config-property-value>
</config-property>
<config-property>
<config-property-name>HostName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>localhost</config-property-value>
</config-property>
<config-property>
<config-property-name>ServerPort</config-property-name>
<config-property-type>java.lang.Integer</config-property-type>
<config-property-value>16010</