ci.maven: Cannot install passwordUtilities-1.0 on WLP, only on OL-runtime

Hi everyone,

Plugin setup

I have the following feature in my src/main/liberty/config/server.xml:

<features>
  <feature>passwordUtilities-1.0</features>
<features>

Expected behaviour

in the install-feature step, the feature is being downloaded and installed independent of my current runtime artifact (e.g. ol-kernel, wlp-kernel, ol-runtime). Note, there is not wlp-runtime nor wlp-base (which you can download as customer from IBM).

Actual behavour

When I configure the com.ibm.wlp artifact, like so:

      <plugin>
        <groupId>io.openliberty.tools</groupId>
        <artifactId>liberty-maven-plugin</artifactId>
        <version>${liberty-maven-plugin.version}</version>
        <configuration>
          <serverName>cfggenerator</serverName>
          <libertyRuntimeVersion>${wlp.version}</libertyRuntimeVersion>

          <runtimeArtifact>
            <groupId>com.ibm.websphere.appserver.runtime</groupId>
            <artifactId>wlp-javaee7</artifactId>
            <version>${wlp.version}</version>
            <type>zip</type>
          </runtimeArtifact>
          <features>
            <acceptLicense>true</acceptLicense>
            <feature>passwordUtilities-1.0</feature>
          </features>
          <deployPackages>dependencies</deployPackages>
        </configuration>
        <executions>
          <execution>
            <id>test-start</id>
            <phase>pre-integration-test</phase>
            <goals>
              <goal>create</goal>
              <goal>deploy</goal>
              <goal>install-feature</goal>
              <goal>start</goal>
            </goals>
          </execution>
          <execution>
            <id>test-stop</id>
            <phase>post-integration-test</phase>
            <goals>
              <goal>stop</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

I get this exception:

CWWKF1221E: The io.openliberty.autoPasswordUtilities1.0.javaee asset depends on com.ibm.websphere.appserver.eeCompatible-6.0, which is not available in the IBM WebSphere Liberty Repository. If the required asset is a feature that you previously downloaded, install the missing feature by specifying the location of the feature ESA file on the featureManager install --location option, and try to install io.openliberty.autoPasswordUtilities1.0.javaee again.

This happens on wlp.version = 21.0.0.6 and even if I import the features-bom.

known workarounds

The setup process will work flawlessly when I use the artifact io.openliberty:openliberty-runtime.

From what I can see, only this artifact has servlet-3.0 integrated and also supports com.ibm.websphere.appserver.eeCompatible-6.0 which (for unknown reasons) cannot be installed via feature utility

Things I looked up and tried

  • I haven’t found any hint that passwordUtility-1.0 is excluded from installation via featureUtility or this plugin.
  • Installing baseBundle in any WLP (not OL) also works. But I haven’t found how to install baseBundle via this plugin. However, I only want to install the required features anyway. I would like to use wlp-kernel and then install passwordUtility-1.0

Any help what gets wrong here is highly appreciated. Best regards, Ben

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 19 (19 by maintainers)

Most upvoted comments

Hi @cherylking. As far as I can tell, this has long been resolved. Will close this issue. If you think there is anything else to discuss, just ping me. 😃

I added <feature>jca-1.7</feature> to the liberty-maven-plugin, but left only <feature>passwordUtilities-1.0</feature> in the actual server.xml. Works as suggested. Thank you for the workaround!

Thanks @cherylking!

Good findings 🥇, your help is VERY much appreciated! 😃 👍🏻

@bmarwell After talking to Open Liberty development, the set of features you are trying to install on openliberty-kernel should work, but there is some bug that they are tracking down with the autoPasswordUtilities feature dependency on com.ibm.websphere.appserver.eeCompatible-6.0. A workaround was mentioned to include the jca-1.7 feature in your server.xml. I have confirmed that this does get around this issue.

I am following up on whether an issue is currently open for this on Open Liberty and will add a reference here.

Alright. Will try to set up an example project and will also post the full stack trace tomorrow.

Hi, I will provide a sample project.

One more thing. I have my company pom and a mirror of Central in my .m2/settings.xml. I saw there was no download attempt from that repo. I’ll test it without those, too.

@bmarwell I asked about the plugin version because a fix did go into 3.4 related to resolving features (https://github.com/OpenLiberty/ci.common/pull/277). It was related to OpenLiberty 21.0.0.7 however. We will look into your issue and let you know what we find out. Thanks.