Tuesday, August 23, 2022

Migrating to ltgt gwt-maven-plugin causes compile problem with HibernateValidation

Hi all,

I'm in the progress of modularising a GWT app and migrating it to use the newer ltgt gwt-maven-plugin. I have a GWT module which compiles correctly using the old gwt-maven-plugin, but fails with the following errors using the new gwt-maven-plugin:

[INFO] --- gwt-maven-plugin:1.0.1:compile (default-compile) @ gwt-portal ---
[INFO] Compiling module com.inspectivity.portal.Portal
[INFO]    Tracing compile failure path for type 'com.inspectivity.portal.client.validation.CustomValidatorFactory'
[INFO]       [ERROR] Errors in 'file:/Users/thomas/dev-private/inspectivity-modules/gwt-portal/src/main/java/com/inspectivity/portal/client/validation/CustomValidatorFactory.java'
[INFO]          [ERROR] Line 31: The method getParameterNameProvider() of type CustomValidatorFactory must override or implement a supertype method
[INFO]          [ERROR] Line 36: The method close() of type CustomValidatorFactory must override or implement a supertype method
[INFO]    Tracing compile failure path for type 'org.hibernate.validator.engine.PathImpl'
[INFO]       [ERROR] Errors in 'jar:file:/Users/thomas/.m2/repository/com/google/gwt/gwt-user/2.8.2/gwt-user-2.8.2.jar!/org/hibernate/validator/super/org/hibernate/validator/engine/PathImpl.java'
[INFO]          [ERROR] Line 72: NodeImpl cannot be resolved to a type
[INFO]          [ERROR] Line 84: NodeImpl cannot be resolved to a type
[INFO]          [ERROR] Line 131: NodeImpl cannot be resolved to a type
[INFO]          [ERROR] Line 202: NodeImpl cannot be resolved to a type
[INFO]          [ERROR] Line 95: NodeImpl cannot be resolved to a type
[INFO]          [ERROR] Line 127: NodeImpl cannot be resolved to a type
[INFO]    Tracing compile failure path for type 'org.hibernate.validator.engine.ConstraintViolationImpl_CustomFieldSerializer'
[INFO]       [ERROR] Errors in 'jar:file:/Users/thomas/.m2/repository/com/google/gwt/gwt-user/2.8.2/gwt-user-2.8.2.jar!/org/hibernate/validator/engine/ConstraintViolationImpl_CustomFieldSerializer.java'
[INFO]          [ERROR] Line 100: The method instantiate(SerializationStreamReader) from the type ConstraintViolationImpl_CustomFieldSerializer refers to the missing type ConstraintViolationImpl
[INFO]          [ERROR] Line 37: ConstraintViolationImpl cannot be resolved to a type
[INFO]          [ERROR] Line 73: ConstraintViolationImpl cannot be resolved to a type
[INFO]          [ERROR] Line 32: The type ConstraintViolationImpl_CustomFieldSerializer must implement the inherited abstract method CustomFieldSerializer<ConstraintViolationImpl>.deserializeInstance(SerializationStreamReader, ConstraintViolationImpl)
[INFO]          [ERROR] Line 33: ConstraintViolationImpl cannot be resolved to a type
[INFO]          [ERROR] Line 32: The type ConstraintViolationImpl_CustomFieldSerializer must implement the inherited abstract method CustomFieldSerializer<ConstraintViolationImpl>.serializeInstance(SerializationStreamWriter, ConstraintViolationImpl)
[INFO]          [ERROR] Line 41: ConstraintViolationImpl cannot be resolved to a type
[INFO]          [ERROR] Line 105: ConstraintViolationImpl cannot be resolved to a type
[INFO]          [ERROR] Line 88: ConstraintViolationImpl cannot be resolved to a type
[INFO]          [ERROR] Line 53: ConstraintViolationImpl cannot be resolved to a type
[INFO]          [ERROR] Line 98: ConstraintViolationImpl cannot be resolved to a type
[INFO]    Tracing compile failure path for type 'org.hibernate.validator.engine.ValidationSupport'
[INFO]       [ERROR] Errors in 'jar:file:/Users/thomas/.m2/repository/com/google/gwt/gwt-user/2.8.2/gwt-user-2.8.2.jar!/org/hibernate/validator/engine/ValidationSupport.java'
[INFO]          [ERROR] Line 43: ConstraintViolationImpl cannot be resolved to a type
[INFO]       [ERROR] Errors in 'jar:file:/Users/thomas/.m2/repository/com/google/gwt/gwt-user/2.8.2/gwt-user-2.8.2.jar!/org/hibernate/validator/super/org/hibernate/validator/engine/PathImpl.java'
[INFO]          [ERROR] Line 72: NodeImpl cannot be resolved to a type
[INFO]          [ERROR] Line 84: NodeImpl cannot be resolved to a type
[INFO]          [ERROR] Line 131: NodeImpl cannot be resolved to a type
[INFO]          [ERROR] Line 202: NodeImpl cannot be resolved to a type
[INFO]          [ERROR] Line 95: NodeImpl cannot be resolved to a type
[INFO]          [ERROR] Line 127: NodeImpl cannot be resolved to a type
[INFO]    [ERROR] Aborting compile due to errors in some input files

I'm using GWT 2.8.2 and here's a fragment of my POM for the module:

<?xml version="1.0" encoding="UTF-8"?>
<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">

    <parent>
        <groupId>com.inspectivity</groupId>
        <artifactId>inspectivity</artifactId>
        <version>...</version>
    </parent>

    <modelVersion>4.0.0</modelVersion>

    <artifactId>gwt-portal</artifactId>
    <packaging>gwt-app</packaging>

    <name>gwt-portal</name>

    <properties>
        <app.version>${project.parent.version}</app.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <webappDirectory>${project.build.directory}/web-exploded</webappDirectory>
    </properties>

    <dependencies>
        ....
        <dependency>
            <groupId>com.google.gwt</groupId>
            <artifactId>gwt-servlet</artifactId>
        </dependency>
        <dependency>
            <groupId>com.google.gwt</groupId>
            <artifactId>gwt-dev</artifactId>
        </dependency>
        <dependency>
            <groupId>com.google.gwt</groupId>
            <artifactId>gwt-user</artifactId>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-validator</artifactId>
            <version>5.2.5.Final</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-validator</artifactId>
            <version>5.2.5.Final</version>
            <classifier>sources</classifier>
        </dependency>
        <dependency>
            <groupId>javax.validation</groupId>
            <artifactId>validation-api</artifactId>
            <version>1.1.0.Final</version>
        </dependency>
        ...
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>net.ltgt.gwt.maven</groupId>
                <artifactId>gwt-maven-plugin</artifactId>
                <configuration>
                    <moduleName>com.inspectivity.portal.Portal</moduleName>
                </configuration>
            </plugin>


            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>



Thanks a lot for any hint!

Cheers,
Thomas

--
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/03ed382d-6ce7-4ca0-8862-e9bc5c84cf06n%40googlegroups.com.

No comments:

Post a Comment