Last modified by Vincent Massol on 2020/01/28

From version 29.1
edited by Vincent Massol
on 2019/09/09
Change comment: There is no comment for this version
To version 27.2
edited by Vincent Massol
on 2019/07/09
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -122,13 +122,20 @@
122 122  {{/code}}
123 123  )))This is to avoid class loading issues for the Log4J library.
124 124  
125 -= Using a WildFly/JBoss DataSource =
125 += Using a JBoss DataSource =
126 126  
127 -== Tutorial for JBoss AS 7.1+ ==
127 +JBoss links about this topic:
128 128  
129 -* Create a JBoss Module for your database driver.
130 -** **HSQLDB**: create the directory ##[ROOT]/modules/org/hsqldb/main## and put the HSQLDB Driver JAR (e.g. ##hsqldb-2.2.9.jar##) in it and also create a ##module.xml## in it and write the following code inside:(((
131 -{{code language='xml'}}
129 +* [[JBoss AS 7.1 Datasource Configuration>>https://docs.jboss.org/author/display/AS71/DataSource+configuration]]
130 +* [[DataSource configuration in AS 7>>https://community.jboss.org/wiki/DataSourceConfigurationInAS7]]
131 +* [[JBoss AS 7.1.0.Final "Thunder" released - Java EE 6 Full Profile certified!>>http://planet.jboss.org/post/jboss_as_7_1_0_final_thunder_released_java_ee_6_full_profile_certified]]
132 +* [[How do I migrate my application from AS5 or AS6 to AS7>>https://docs.jboss.org/author/display/AS7/How+do+I+migrate+my+application+from+AS5+or+AS6+to+AS7]]
133 +* [[Excited about JBoss AS 7.1 Part I: Deployable Datasources>>https://community.jboss.org/en/tools/blog/2012/02/28/excited-about-jboss-as-71-part-i-deployable-datasources]]
134 +
135 +== Tutorial for JBoss AS 7.1 ==
136 +
137 +* Create a JBoss Module for your database driver. For example for HSQLDB, create the directory ##[ASROOT]/modules/org/hsqldb/main## and put the HSQLDB Driver JAR (e.g. ##hsqldb-2.2.9.jar##) in it and also create a ##module.xml## in it and write the following code inside:(((
138 +{{code}}
132 132  <?xml version="1.0" encoding="UTF-8"?>
133 133  <module xmlns="urn:jboss:module:1.0" name="org.hsqldb">
134 134   <resources>
... ... @@ -140,53 +140,7 @@
140 140  </module>
141 141  {{/code}}
142 142  )))
143 -** **MySQL**: create the directory ##[ROOT]/modules/com/mysql/main## and put the MySQL Driver JAR (e.g. ##mysql-connector-java-5.1.48.jar##) in it and also create a ##module.xml## in it and write the following code inside:(((
144 -{{code language='xml'}}
145 -<?xml version="1.0" encoding="UTF-8"?>
146 -
147 -<module xmlns="urn:jboss:module:1.1" name="com.mysql">
148 - <resources>
149 - <resource-root path="mysql-connector-java-5.1.48.jar"/>
150 - </resources>
151 - <dependencies>
152 - <module name="javax.api"/>
153 - <module name="javax.transaction.api"/>
154 - <module name="javax.servlet.api" optional="true"/>
155 - </dependencies>
156 -</module>
157 -{{/code}}
158 -)))
159 -* Edit the ##[ASROOT]/standalone/configuration/standalone.xml## file to add a new ##<datasource>## and a new ##<driver>## sections (adjust the properties as needed):
160 -** **MySQL**. Example:(((
161 -{{code language='xml'}}
162 -<datasources>
163 - <datasource jta="true" jndi-name="java:jboss/datasources/XWikiDS" pool-name="XWikiDS" enabled="true" use-java-context="true" use-ccm="true">
164 - <connection-url>jdbc:mysql://localhost:3306/xwiki?useSSL=false</connection-url>
165 - <driver>mysql</driver>
166 - <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
167 - <pool>
168 - <min-pool-size>10</min-pool-size>
169 - <max-pool-size>100</max-pool-size>
170 - <prefill>true</prefill>
171 - </pool>
172 - <security>
173 - <user-name>xwiki</user-name>
174 - <password>xwiki</password>
175 - </security>
176 - <statement>
177 - <prepared-statement-cache-size>32</prepared-statement-cache-size>
178 - <share-prepared-statements>true</share-prepared-statements>
179 - </statement>
180 - </datasource>
181 -...
182 -<drivers>
183 - <driver name="mysql" module="com.mysql">
184 - <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
185 - </driver>
186 -...
187 -{{/code}}
188 -)))
189 -** Note that it's also possible to create a data source file named ##-ds.xml## (e.g. ##hsqldb-ds.xml##) in ##[ASROOT]/standalone/deployments/## (you can also put it in your ##WEB-INF/## dir). Example of content for HSQLDB:(((
150 +* Create a data source file named ##-ds.xml## (e.g. ##hsqldb-ds.xml##). If you're using a standalone deployment, put it in ##[ASROOT]/standalone/deployments/## (you can also put it in your ##WEB-INF/## dir). Example of content:(((
190 190  {{code}}
191 191  <?xml version="1.0" encoding="UTF-8"?>
192 192  <datasources xmlns="http://www.jboss.org/ironjacamar/schema">
... ... @@ -200,29 +200,9 @@
200 200   </datasource>
201 201  </datasources>
202 202  {{/code}}
203 -
204 -However it's not recommended because the deployment datasource feature should only be used in development environments, as the deployable datasources are considered as unmanaged datasource. Those are not recommended for production environments, because those can not be managed by the JBoss Management console or the management utilities like jboss-cli.sh. Hence such datasource cannot be managed like the managed dataSources which are configured inside the domain.xml or standalone*.xml files.
205 205  )))
206 -* Modify XWiki's ##WEB-INF/hibernate.cfg.xml## file to tell Hibernate to use the defined DataSource rather than a direct JDBC connection:(((
207 -{{code}}
208 -<!-- This needs to be commented out since we're not going to use the DBCP connection pool (we're going to use the Data Source connection pool) -->
209 -<!--property name="hibernate.connection.provider_class">com.xpn.xwiki.store.DBCPConnectionProvider</property-->
210 -...
211 -<!-- Tells Hibernate to use the defined data source -->
212 -<property name="connection.datasource">java:jboss/datasources/XWikiDS</property>
213 -
214 -<!-- The following can be commented out since these are not needed as they are defined in the Data source definition -->
215 -<!--
216 - <property name="hibernate.connection.url">jdbc:hsqldb:file:${environment.permanentDirectory}/database/xwiki_db;shutdown=true</property>
217 - <property name="hibernate.connection.username">sa</property>
218 - <property name="hibernate.connection.password"></property>
219 - <property name="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property>
220 --->
221 -...
222 -{{/code}}
223 -)))
224 224  
225 -== Tutorial for older versions ==
166 +== Old Tutorial ==
226 226  
227 227  * Uncomment the ##resource-ref## section in XWiki's ##web.xml## file. You should have:(((
228 228  {{code}}
... ... @@ -248,19 +248,8 @@
248 248  )))
249 249  * Modify XWiki's ##WEB-INF/hibernate.cfg.xml## file to tell Hibernate to use the defined DataSource rather than a direct JDBC connection:(((
250 250  {{code}}
251 -<!-- This needs to be commented out since we're not going to use XWiki's Data Source -->
252 -<!--property name="hibernate.connection.provider_class">com.xpn.xwiki.store.DBCPConnectionProvider</property-->
253 253  ...
254 -<!-- Tells Hibernate to use the defined data source -->
255 255  <property name="connection.datasource">java:jboss/datasources/XWikiDS</property>
256 -
257 -<!-- The following can be commented out since these are not needed as they are defined in the Data source definition -->
258 -<!--
259 - <property name="hibernate.connection.url">jdbc:hsqldb:file:${environment.permanentDirectory}/database/xwiki_db;shutdown=true</property>
260 - <property name="hibernate.connection.username">sa</property>
261 - <property name="hibernate.connection.password"></property>
262 - <property name="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property>
263 --->
264 264  ...
265 265  {{/code}}
266 266  )))

Get Connected