Skip to content

Commit de5dd10

Browse files
committed
Fix Micronaut integration in Helidon 3.x? #7206
Signed-off-by: Jorge Bescos Gascon <jorge.bescos.gascon@oracle.com>
1 parent d3f7edf commit de5dd10

File tree

10 files changed

+95
-74
lines changed

10 files changed

+95
-74
lines changed

dependencies/pom.xml

Lines changed: 18 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<!--
33
4-
Copyright (c) 2019, 2023 Oracle and/or its affiliates.
4+
Copyright (c) 2019, 2024 Oracle and/or its affiliates.
55
66
Licensed under the Apache License, Version 2.0 (the "License");
77
you may not use this file except in compliance with the License.
@@ -72,7 +72,7 @@
7272
<version.lib.hystrix>1.5.18</version.lib.hystrix>
7373
<version.lib.jackson>2.15.2</version.lib.jackson>
7474
<version.lib.jakarta.activation-api>2.0.1</version.lib.jakarta.activation-api>
75-
<version.lib.jakarta.annotation-api>2.0.0</version.lib.jakarta.annotation-api>
75+
<version.lib.jakarta.annotation-api>2.1.0</version.lib.jakarta.annotation-api>
7676
<version.lib.jakarta.cdi-api>3.0.0</version.lib.jakarta.cdi-api>
7777
<version.lib.jakarta.el-api>4.0.0</version.lib.jakarta.el-api>
7878
<version.lib.jakarta.inject>2.0.0</version.lib.jakarta.inject>
@@ -106,9 +106,10 @@
106106
<version.lib.mariadb-java-client>2.6.2</version.lib.mariadb-java-client>
107107
<version.lib.maven-wagon>2.10</version.lib.maven-wagon>
108108
<version.lib.micrometer>1.6.6</version.lib.micrometer>
109-
<version.lib.micronaut>3.8.7</version.lib.micronaut>
110-
<version.lib.micronaut.data>3.4.3</version.lib.micronaut.data>
111-
<version.lib.micronaut.sql>4.8.0</version.lib.micronaut.sql>
109+
<version.lib.micronaut>4.2.2</version.lib.micronaut>
110+
<version.lib.micronaut.validation>4.2.0</version.lib.micronaut.validation>
111+
<version.lib.micronaut.data>4.4.1</version.lib.micronaut.data>
112+
<version.lib.micronaut.sql>5.4.0</version.lib.micronaut.sql>
112113
<version.lib.microprofile-config>3.0.1</version.lib.microprofile-config>
113114
<version.lib.microprofile-fault-tolerance-api>4.0</version.lib.microprofile-fault-tolerance-api>
114115
<version.lib.microprofile-graphql>2.0</version.lib.microprofile-graphql>
@@ -1001,14 +1002,6 @@
10011002
<artifactId>micronaut-core</artifactId>
10021003
<version>${version.lib.micronaut}</version>
10031004
<exclusions>
1004-
<exclusion>
1005-
<groupId>javax.annotation</groupId>
1006-
<artifactId>javax.annotation-api</artifactId>
1007-
</exclusion>
1008-
<exclusion>
1009-
<groupId>javax.inject</groupId>
1010-
<artifactId>javax.inject</artifactId>
1011-
</exclusion>
10121005
<exclusion>
10131006
<groupId>com.github.spotbugs</groupId>
10141007
<artifactId>spotbugs-annotations</artifactId>
@@ -1019,6 +1012,11 @@
10191012
</exclusion>
10201013
</exclusions>
10211014
</dependency>
1015+
<dependency>
1016+
<groupId>io.micronaut</groupId>
1017+
<artifactId>micronaut-core-processor</artifactId>
1018+
<version>${version.lib.micronaut}</version>
1019+
</dependency>
10221020
<dependency>
10231021
<groupId>io.micronaut</groupId>
10241022
<artifactId>micronaut-aop</artifactId>
@@ -1086,20 +1084,19 @@
10861084
<version>${version.lib.activemq}</version>
10871085
</dependency>
10881086
<dependency>
1089-
<groupId>io.micronaut</groupId>
1087+
<groupId>io.micronaut.validation</groupId>
10901088
<artifactId>micronaut-validation</artifactId>
1091-
<version>${version.lib.micronaut}</version>
1089+
<version>${version.lib.micronaut.validation}</version>
1090+
</dependency>
1091+
<dependency>
1092+
<groupId>io.micronaut.validation</groupId>
1093+
<artifactId>micronaut-validation-processor</artifactId>
1094+
<version>${version.lib.micronaut.validation}</version>
10921095
</dependency>
10931096
<dependency>
10941097
<groupId>io.micronaut</groupId>
10951098
<artifactId>micronaut-runtime</artifactId>
10961099
<version>${version.lib.micronaut}</version>
1097-
<exclusions>
1098-
<exclusion>
1099-
<groupId>javax.validation</groupId>
1100-
<artifactId>validation-api</artifactId>
1101-
</exclusion>
1102-
</exclusions>
11031100
</dependency>
11041101
<dependency>
11051102
<groupId>io.micronaut.sql</groupId>

examples/integrations/micronaut/data/pom.xml

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<!--
33
4-
Copyright (c) 2020, 2023 Oracle and/or its affiliates.
4+
Copyright (c) 2020, 2024 Oracle and/or its affiliates.
55
66
Licensed under the Apache License, Version 2.0 (the "License");
77
you may not use this file except in compliance with the License.
@@ -44,6 +44,10 @@
4444
<groupId>io.micronaut.data</groupId>
4545
<artifactId>micronaut-data-jdbc</artifactId>
4646
</dependency>
47+
<dependency>
48+
<groupId>io.micronaut.validation</groupId>
49+
<artifactId>micronaut-validation</artifactId>
50+
</dependency>
4751
<dependency>
4852
<groupId>io.micronaut</groupId>
4953
<artifactId>micronaut-runtime</artifactId>
@@ -118,9 +122,14 @@
118122
</path>
119123
<path>
120124
<groupId>io.micronaut</groupId>
121-
<artifactId>micronaut-validation</artifactId>
125+
<artifactId>micronaut-core-processor</artifactId>
122126
<version>${version.lib.micronaut}</version>
123127
</path>
128+
<path>
129+
<groupId>io.micronaut.validation</groupId>
130+
<artifactId>micronaut-validation-processor</artifactId>
131+
<version>${version.lib.micronaut.validation}</version>
132+
</path>
124133
<path>
125134
<groupId>io.micronaut.data</groupId>
126135
<artifactId>micronaut-data-processor</artifactId>

examples/integrations/micronaut/data/src/main/java/io/helidon/examples/integrations/micronaut/data/BeanValidationExceptionMapper.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2020, 2023 Oracle and/or its affiliates.
2+
* Copyright (c) 2020, 2024 Oracle and/or its affiliates.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -16,8 +16,7 @@
1616

1717
package io.helidon.examples.integrations.micronaut.data;
1818

19-
import javax.validation.ConstraintViolationException;
20-
19+
import jakarta.validation.ConstraintViolationException;
2120
import jakarta.ws.rs.core.Response;
2221
import jakarta.ws.rs.ext.ExceptionMapper;
2322
import jakarta.ws.rs.ext.Provider;

examples/integrations/micronaut/data/src/main/java/io/helidon/examples/integrations/micronaut/data/PetResource.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2020, 2023 Oracle and/or its affiliates.
2+
* Copyright (c) 2020, 2024 Oracle and/or its affiliates.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -16,11 +16,10 @@
1616

1717
package io.helidon.examples.integrations.micronaut.data;
1818

19-
import javax.validation.constraints.Pattern;
20-
2119
import io.helidon.examples.integrations.micronaut.data.model.Pet;
2220

2321
import jakarta.inject.Inject;
22+
import jakarta.validation.constraints.Pattern;
2423
import jakarta.ws.rs.GET;
2524
import jakarta.ws.rs.NotFoundException;
2625
import jakarta.ws.rs.Path;

integrations/micronaut/cdi-processor/pom.xml

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<!--
3-
Copyright (c) 2020, 2023 Oracle and/or its affiliates.
3+
Copyright (c) 2020, 2024 Oracle and/or its affiliates.
44
55
Licensed under the Apache License, Version 2.0 (the "License");
66
you may not use this file except in compliance with the License.
@@ -34,22 +34,32 @@
3434
<dependency>
3535
<groupId>io.micronaut</groupId>
3636
<artifactId>micronaut-inject-java</artifactId>
37+
<scope>provided</scope>
3738
</dependency>
3839
<dependency>
3940
<groupId>io.micronaut</groupId>
4041
<artifactId>micronaut-inject</artifactId>
42+
<scope>provided</scope>
4143
</dependency>
4244
<dependency>
4345
<groupId>io.micronaut</groupId>
4446
<artifactId>micronaut-core</artifactId>
47+
<scope>provided</scope>
48+
</dependency>
49+
<dependency>
50+
<groupId>io.micronaut</groupId>
51+
<artifactId>micronaut-core-processor</artifactId>
52+
<scope>provided</scope>
4553
</dependency>
4654
<dependency>
4755
<groupId>jakarta.inject</groupId>
4856
<artifactId>jakarta.inject-api</artifactId>
57+
<scope>provided</scope>
4958
</dependency>
5059
<dependency>
5160
<groupId>jakarta.annotation</groupId>
5261
<artifactId>jakarta.annotation-api</artifactId>
62+
<scope>provided</scope>
5363
</dependency>
5464
</dependencies>
5565

@@ -62,6 +72,14 @@
6272
<compilerArgument>-proc:none</compilerArgument>
6373
</configuration>
6474
</plugin>
75+
<!-- https://github.com/micronaut-projects/micronaut-core/issues/10299 -->
76+
<plugin>
77+
<groupId>io.helidon.build-tools</groupId>
78+
<artifactId>helidon-services-plugin</artifactId>
79+
<configuration>
80+
<failOnMissingModuleInfo>false</failOnMissingModuleInfo>
81+
</configuration>
82+
</plugin>
6583
</plugins>
6684
</build>
6785
</project>

integrations/micronaut/cdi-processor/src/main/java/module-info.java

Lines changed: 0 additions & 29 deletions
This file was deleted.

integrations/micronaut/cdi/pom.xml

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<!--
3-
Copyright (c) 2020, 2023 Oracle and/or its affiliates.
3+
Copyright (c) 2020, 2024 Oracle and/or its affiliates.
44
55
Licensed under the Apache License, Version 2.0 (the "License");
66
you may not use this file except in compliance with the License.
@@ -35,10 +35,6 @@
3535
<groupId>jakarta.enterprise</groupId>
3636
<artifactId>jakarta.enterprise.cdi-api</artifactId>
3737
</dependency>
38-
<dependency>
39-
<groupId>io.micronaut</groupId>
40-
<artifactId>micronaut-inject-java</artifactId>
41-
</dependency>
4238
<dependency>
4339
<groupId>io.micronaut</groupId>
4440
<artifactId>micronaut-inject</artifactId>
@@ -116,9 +112,14 @@
116112
</path>
117113
<path>
118114
<groupId>io.micronaut</groupId>
119-
<artifactId>micronaut-validation</artifactId>
115+
<artifactId>micronaut-core-processor</artifactId>
120116
<version>${version.lib.micronaut}</version>
121117
</path>
118+
<path>
119+
<groupId>io.micronaut.validation</groupId>
120+
<artifactId>micronaut-validation-processor</artifactId>
121+
<version>${version.lib.micronaut.validation}</version>
122+
</path>
122123
<path>
123124
<groupId>io.micronaut.data</groupId>
124125
<artifactId>micronaut-data-processor</artifactId>

integrations/micronaut/cdi/src/test/java/io/helidon/integrations/micronaut/cdi/TestBothBean.java

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2020, 2021 Oracle and/or its affiliates.
2+
* Copyright (c) 2020, 2024 Oracle and/or its affiliates.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -21,8 +21,28 @@
2121
@ApplicationScoped
2222
@MicronautBeanDef
2323
public class TestBothBean implements TestBean {
24+
2425
@Override
2526
public String name() {
2627
return "BothBean";
2728
}
29+
30+
@CdiIntercepted
31+
@Override
32+
public String cdiAnnotated() {
33+
return TestBean.super.cdiAnnotated();
34+
}
35+
36+
@MicroIntercepted
37+
@Override
38+
public String µAnnotated() {
39+
return TestBean.super.µAnnotated();
40+
}
41+
42+
@CdiIntercepted
43+
@MicroIntercepted
44+
@Override
45+
public String bothAnnotated() {
46+
return TestBean.super.bothAnnotated();
47+
}
2848
}

integrations/micronaut/data/pom.xml

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<!--
3-
Copyright (c) 2020, 2023 Oracle and/or its affiliates.
3+
Copyright (c) 2020, 2024 Oracle and/or its affiliates.
44
55
Licensed under the Apache License, Version 2.0 (the "License");
66
you may not use this file except in compliance with the License.
@@ -46,7 +46,6 @@
4646
<dependency>
4747
<groupId>jakarta.validation</groupId>
4848
<artifactId>jakarta.validation-api</artifactId>
49-
<version>2.0.2</version>
5049
<scope>test</scope>
5150
</dependency>
5251
<dependency>
@@ -59,6 +58,11 @@
5958
<artifactId>micronaut-runtime</artifactId>
6059
<scope>test</scope>
6160
</dependency>
61+
<dependency>
62+
<groupId>io.micronaut.validation</groupId>
63+
<artifactId>micronaut-validation</artifactId>
64+
<scope>test</scope>
65+
</dependency>
6266
<dependency>
6367
<groupId>jakarta.persistence</groupId>
6468
<artifactId>jakarta.persistence-api</artifactId>
@@ -151,9 +155,14 @@
151155
</path>
152156
<path>
153157
<groupId>io.micronaut</groupId>
154-
<artifactId>micronaut-validation</artifactId>
158+
<artifactId>micronaut-core-processor</artifactId>
155159
<version>${version.lib.micronaut}</version>
156160
</path>
161+
<path>
162+
<groupId>io.micronaut.validation</groupId>
163+
<artifactId>micronaut-validation-processor</artifactId>
164+
<version>${version.lib.micronaut.validation}</version>
165+
</path>
157166
<path>
158167
<groupId>io.micronaut.data</groupId>
159168
<artifactId>micronaut-data-processor</artifactId>

integrations/micronaut/data/src/test/java/io/helidon/integrations/micronaut/cdi/data/MicronautDataCdiExtensionTest.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2020, 2022 Oracle and/or its affiliates.
2+
* Copyright (c) 2020, 2024 Oracle and/or its affiliates.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -27,14 +27,12 @@
2727
import io.helidon.microprofile.tests.junit5.Configuration;
2828
import io.helidon.microprofile.tests.junit5.HelidonTest;
2929

30-
import javax.validation.ConstraintViolationException;
31-
import javax.validation.constraints.Pattern;
32-
3330
import jakarta.enterprise.context.ApplicationScoped;
3431
import jakarta.inject.Inject;
3532
import jakarta.transaction.Transactional;
33+
import jakarta.validation.ConstraintViolationException;
34+
import jakarta.validation.constraints.Pattern;
3635
import org.eclipse.microprofile.config.inject.ConfigProperty;
37-
import org.junit.jupiter.api.Disabled;
3836
import org.junit.jupiter.api.Test;
3937

4038
import static io.helidon.config.testing.OptionalMatcher.present;

0 commit comments

Comments
 (0)