Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-11804

Galleon is not provisioning com.h2database.h2 module

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • None
    • None
    • Build System
    • None

    Description

      We need to ensure that Galleon provision is correct. By default, we are currently using the following data source feature group:

      <?xml version="1.0" encoding="UTF-8"?>
      <feature-group-spec name="datasources" xmlns="urn:jboss:galleon:feature-group:1.0">
          <feature spec="subsystem.datasources">
              <feature spec="subsystem.datasources.jdbc-driver">
                  <param name="jdbc-driver" value="h2"/>
                  <param name="driver-name" value="h2"/>
                  <param name="driver-module-name" value="com.h2database.h2"/>
                  <param name="driver-xa-datasource-class-name" value="org.h2.jdbcx.JdbcDataSource"/>
              </feature>
              <feature spec="subsystem.datasources.data-source">
                  <param name="data-source" value="ExampleDS"/>
                  <param name="enabled" value="true"/>
                  <param name="use-java-context" value="true"/>
                  <param name="jndi-name" value="java:jboss/datasources/ExampleDS"/>
                  <param name="data-source" value="ExampleDS"/>
                  <param name="connection-url" value="&quot;jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE&quot;"/>
                  <param name="driver-name" value="h2"/>
                  <param name="user-name" value="sa"/>
                  <param name="password" value="sa"/>
                  <param name="statistics-enabled" value="${wildfly.datasources.statistics-enabled:${wildfly.statistics-enabled:false}}" />
              </feature>
          </feature>
      
          <feature spec="subsystem.ee.service.default-bindings">
              <param name="datasource" value="java:jboss/datasources/ExampleDS"/>
          </feature>
      </feature-group-spec>
      

      The default driver-module-name is com.h2database.h2, that means com.h2database.h2 must be provisioned by default.

      However, if we use the following Galleon provision, the provision fails:

      <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">
          <script/>
          <modelVersion>4.0.0</modelVersion>
          <groupId>org.jboss.galleon.demo</groupId>
          <artifactId>galleon-demo</artifactId>
          <packaging>pom</packaging>
          <version>1.0.0-SNAPSHOT</version>
          <name>galleon demo</name>
          <properties>
              <!--  Galleon  -->
              <galleon.fork.embedded>true</galleon.fork.embedded>
              <version.org.jboss.galleon>3.0.1.Final</version.org.jboss.galleon>
          </properties>
          <dependencies>
              <dependency>
                  <groupId>org.jboss.galleon</groupId>
                  <artifactId>galleon-core</artifactId>
                  <version>${version.org.jboss.galleon}</version>
              </dependency>
          </dependencies>
          <build>
              <pluginManagement>
                  <plugins>
                      <plugin>
                          <groupId>org.jboss.galleon</groupId>
                          <artifactId>galleon-maven-plugin</artifactId>
                          <version>${version.org.jboss.galleon}</version>
                      </plugin>
                  </plugins>
              </pluginManagement>
              <plugins>
                  <plugin>
                      <groupId>org.jboss.galleon</groupId>
                      <artifactId>galleon-maven-plugin</artifactId>
                      <executions>
                          <execution>
                              <id>server-provisioning</id>
                              <goals>
                                  <goal>provision</goal>
                              </goals>
                              <configuration>
                                  <install-dir>${project.build.directory}/wildfly</install-dir>
                                  <record-state>false</record-state>
                                  <log-time>true</log-time>
                                  <plugin-options>
                                      <jboss-maven-dist/>
                                      <jboss-fork-embedded>${galleon.fork.embedded}</jboss-fork-embedded>
                                  </plugin-options>
                                  <feature-packs>
                                      <feature-pack>
                                          <groupId>org.wildfly</groupId>
                                          <artifactId>wildfly-galleon-pack</artifactId>
                                          <version>16.0.0.Beta1</version>
                                          <inherit-packages>false</inherit-packages>
                                          <included-packages>
                                              <name>org.wildfly.openssl</name>
                                              <!-- <name>com.h2database.h2</name> -->
                                          </included-packages>
                                          <inherit-configs>false</inherit-configs>
                                          <included-configs>
                                              <config>
                                                  <model>standalone</model>
                                                  <name>standalone.xml</name>
                                              </config>
                                          </included-configs>
                                      </feature-pack>
                                  </feature-packs>
                              </configuration>
                          </execution>
                      </executions>
                  </plugin>
              </plugins>
          </build>
          <repositories>
              <repository>
                  <releases>
                      <enabled>true</enabled>
                      <updatePolicy>never</updatePolicy>
                  </releases>
                  <snapshots>
                      <enabled>true</enabled>
                      <updatePolicy>never</updatePolicy>
                  </snapshots>
                  <id>jboss-public-repository-group</id>
                  <name>JBoss Public Repository Group</name>
                  <url>
                      http://repository.jboss.org/nexus/content/groups/public/
                  </url>
                  <layout>default</layout>
              </repository>
          </repositories>
          <pluginRepositories>
              <pluginRepository>
                  <releases>
                      <enabled>true</enabled>
                  </releases>
                  <snapshots>
                      <enabled>true</enabled>
                  </snapshots>
                  <id>jboss-public-repository-group</id>
                  <name>JBoss Public Repository Group</name>
                  <url>
                      http://repository.jboss.org/nexus/content/groups/public/
                  </url>
              </pluginRepository>
          </pluginRepositories>
      </project>
      

      org.wildfly.openssl seems to have also a similar issue. Currently we have to explicitely include them

      Attachments

        Activity

          People

            yborgess1@redhat.com Yeray Borges Santana
            yborgess1@redhat.com Yeray Borges Santana
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: