You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@deltaspike.apache.org by "Michael Heydemann (Jira)" <ji...@apache.org> on 2022/12/09 14:14:00 UTC

[jira] [Resolved] (DELTASPIKE-1458) DefaultConfigSourceProvider cannot be instantiated

     [ https://issues.apache.org/jira/browse/DELTASPIKE-1458?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michael Heydemann resolved DELTASPIKE-1458.
-------------------------------------------
    Fix Version/s: 1.9.7
       Resolution: Fixed

> DefaultConfigSourceProvider cannot be instantiated
> --------------------------------------------------
>
>                 Key: DELTASPIKE-1458
>                 URL: https://issues.apache.org/jira/browse/DELTASPIKE-1458
>             Project: DeltaSpike
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>            Reporter: Michael Heydemann
>            Priority: Major
>             Fix For: 1.9.7
>
>
> Hello,
> I am trying to use the deltaspike test module (CdiTestRunner) in a Jakarta environment. Therefore for some of the dependencies I added the jakarta classifier. The test then fails with an exception. For demonstration purose I reduced the project to the necessary:
> I get this stack trace during test execution:
> {code:java}
> java.util.ServiceConfigurationError: org.apache.deltaspike.core.spi.config.ConfigSourceProvider: Provider org.apache.deltaspike.core.impl.config.DefaultConfigSourceProvider could not be instantiated
> at java.util.ServiceLoader.fail(ServiceLoader.java:232)
> at java.util.ServiceLoader.access$100(ServiceLoader.java:185)
> at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:384)
> at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)
> at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
> at org.apache.deltaspike.core.util.ServiceUtils.loadServiceImplementations(ServiceUtils.java:81)
> at org.apache.deltaspike.core.impl.config.ConfigImpl.init(ConfigImpl.java:80)
> at org.apache.deltaspike.core.impl.config.ConfigProviderImpl.getConfig(ConfigProviderImpl.java:53)
> at org.apache.deltaspike.core.impl.config.ConfigProviderImpl.getConfig(ConfigProviderImpl.java:43)
> at org.apache.deltaspike.core.api.config.ConfigResolver.resolve(ConfigResolver.java:655)
> at org.apache.deltaspike.testcontrol.api.junit.TestBaseConfig$ContainerIntegration.(TestBaseConfig.java:29)
> at org.apache.deltaspike.testcontrol.api.junit.CdiTestRunner.(CdiTestRunner.java:89)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> Caused by: java.lang.NoClassDefFoundError: jakarta/naming/NamingException
> at org.apache.deltaspike.core.impl.config.LocalJndiConfigSource.getPropertyValue(LocalJndiConfigSource.java:53)
> at org.apache.deltaspike.core.impl.config.BaseConfigSource.initOrdinal(BaseConfigSource.java:54)
> at org.apache.deltaspike.core.impl.config.LocalJndiConfigSource.(LocalJndiConfigSource.java:39)
> at org.apache.deltaspike.core.impl.config.DefaultConfigSourceProvider.(DefaultConfigSourceProvider.java:59)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> at java.lang.Class.newInstance(Class.java:442)
> at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:380)
> ... 26 more
> Caused by: java.lang.ClassNotFoundException: jakarta.naming.NamingException
> at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
> ... 36 more{code}
>  
> Here the pom.xml:
> {code:java}
> <project
>   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>   xmlns="http://maven.apache.org/POM/4.0.0"
>   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
>   <modelVersion>4.0.0</modelVersion>
>   <groupId>org.example.cdi.test</groupId>
>   <artifactId>cdi-test</artifactId>
>   <version>1.0.0-SNAPSHOT</version>
>   <packaging>jar</packaging>
>   <properties>
>     <deltaspike.version>1.9.6</deltaspike.version>
>   </properties>
>   <dependencies>
>     <dependency>
>       <groupId>org.apache.deltaspike.modules</groupId>
>       <artifactId>deltaspike-test-control-module-api</artifactId>
>       <version>${deltaspike.version}</version>
>       <classifier>jakarta</classifier>
>       <scope>test</scope>
>     </dependency>
>     <dependency>
>       <groupId>org.apache.deltaspike.modules</groupId>
>       <artifactId>deltaspike-test-control-module-impl</artifactId>
>       <version>${deltaspike.version}</version>
>       <classifier>jakarta</classifier>
>       <scope>test</scope>
>     </dependency>
>     <dependency>
>       <groupId>org.apache.deltaspike.cdictrl</groupId>
>       <artifactId>deltaspike-cdictrl-weld</artifactId>
>       <version>${deltaspike.version}</version>
>       <classifier>jakarta</classifier>
>       <scope>test</scope>
>     </dependency>
>     <dependency>
>       <groupId>org.jboss.weld.se</groupId>
>       <artifactId>weld-se-core</artifactId>
>       <version>4.0.0.Alpha3</version>
>       <scope>test</scope>
>     </dependency>
>     <dependency>
>       <groupId>junit</groupId>
>       <artifactId>junit</artifactId>
>       <version>4.12</version>
>       <scope>test</scope>
>     </dependency>
>   </dependencies>
> </project>
> {code}
>  
> And the empty test I would like to execute:
> {code:java}
> import org.apache.deltaspike.testcontrol.api.junit.CdiTestRunner;
> import org.junit.Test;
> import org.junit.runner.RunWith;
> @RunWith(CdiTestRunner.class)
> public class CdiTest {
>   @Test
>   public void test() {}
> }
> {code}
>  
> I hope you can help me with this.
> Best Regrads,
> Michael



--
This message was sent by Atlassian Jira
(v8.20.10#820010)