How to add Postgres Driver to Open Liberty? - postgresql

I am implementing a basic REST API with Micorprofile 3.2 and deploying it with Open Liberty.
The server.xml,
<?xml version="1.0" encoding="UTF-8"?>
<server description="${project.name}">
<featureManager>
<feature>microProfile-3.2</feature>
<feature>jpa-2.2</feature>
<feature>jdbc-4.2</feature>
<feature>jndi-1.0</feature>
</featureManager>
<httpEndpoint id="defaultHttpEndpoint"
host="*"
httpPort="8080"
httpsPort="9443"/>
<webApplication location="${project.name}.war" contextRoot="/"/>
<mpMetrics authentication="false"/>
<dataSource id="DefaultDataSource"
jndiName="jdbc/postgresql">
<jdbcDriver jdbcDriverRef="postgresql-driver" libraryRef="postgresql-library"/>
<properties.postgres serverName="localhost"
portNumber="5432"
databaseName="postgres"
user="postgres"
password="postgres"/>
</dataSource>
<jdbcDriver id="postgresql-driver"
javax.sql.XADataSource="org.postgresql.xa.PGXADataSource"
javax.sql.ConnectionPoolDataSource="org.postgresql.ds.PGConnectionPoolDataSource"
libraryRef="postgresql-library"/>
<library id="postgresql-library">
<fileset id="PostgreSQLFileset" dir="${shared.resource.dir}/jdbc"
includes="postgresql-42.2.9.jar"/>
</library>
</server>
my persistence.xml,
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence">
<persistence-unit name="jpa-unit" transaction-type="JTA">
<jta-data-source>jdbc/postgresql</jta-data-source>
</persistence-unit>
</persistence>
The problem is everytime i try to use a EntityManager i get the following error:
[INFO] [ERROR ] CWWJP0015E: An error occurred in the org.eclipse.persistence.jpa.PersistenceProvider persistence provider when it attempted to create the container entity manager factory for the jpa-unit persistence unit. The following error occurred: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.7.5.v20191016-ea124dd158): org.eclipse.persistence.exceptions.EntityManagerSetupException
[INFO] Exception Description: Predeployment of PersistenceUnit [jpa-unit] failed.
[INFO] Internal Exception: javax.persistence.PersistenceException: CWWJP0013E: The server cannot locate the java:comp/DefaultDataSource data source for the jpa-unit persistence unit because it has encountered the following exception: javax.naming.NamingException [Root exception is java.sql.SQLNonTransientException: DSRA4000E: No implementations of [javax.sql.XADataSource, javax.sql.ConnectionPoolDataSource, javax.sql.DataSource, java.sql.Driver] are found for dataSource[DefaultDataSource] with library postgresql-library. The name or location of JDBC driver JAR files might be incorrect or inaccessible. Searched in: []. Searched under packages: [].].
[INFO] [ERROR ] CWOWB1000E: A CDI error has occurred: CWNEN0030E: The server was unable to obtain an object instance for the java:comp/env/xx.xx.demo.micro.pq.infrastructure.infrastructure.EntityManagerProducer/entityManagerFactory reference. The exception message was: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.7.5.v20191016-ea124dd158): org.eclipse.persistence.exceptions.EntityManagerSetupException
[INFO] Exception Description: Predeployment of PersistenceUnit [jpa-unit] failed.
[INFO] Internal Exception: javax.persistence.PersistenceException: CWWJP0013E: The server cannot locate the java:comp/DefaultDataSource data source for the jpa-unit persistence unit because it has encountered the following exception: javax.naming.NamingException [Root exception is java.sql.SQLNonTransientException: DSRA4000E: No implementations of [javax.sql.XADataSource, javax.sql.ConnectionPoolDataSource, javax.sql.DataSource, java.sql.Driver] are found for dataSource[DefaultDataSource] with library postgresql-library. The name or location of JDBC driver JAR files might be incorrect or inaccessible. Searched in: []. Searched under packages: [].].
[INFO] [ERROR ] CWOWB1000E: A CDI error has occurred: CWNEN0030E: The server was unable to obtain an object instance for the java:comp/env/xx.xx.demo.micro.pq.infrastructure.infrastructure.EntityManagerProducer/entityManagerFactory reference. The exception message was: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.7.5.v20191016-ea124dd158): org.eclipse.persistence.exceptions.EntityManagerSetupException
[INFO] Exception Description: Predeployment of PersistenceUnit [jpa-unit] failed.
[INFO] Internal Exception: javax.persistence.PersistenceException: CWWJP0013E: The server cannot locate the java:comp/DefaultDataSource data source for the jpa-unit persistence unit because it has encountered the following exception: javax.naming.NamingException [Root exception is java.sql.SQLNonTransientException: DSRA4000E: No implementations of [javax.sql.XADataSource, javax.sql.ConnectionPoolDataSource, javax.sql.DataSource, java.sql.Driver] are found for dataSource[DefaultDataSource] with library postgresql-library. The name or location of JDBC driver JAR files might be incorrect or inaccessible. Searched in: []. Searched under packages: [].].
[INFO] [WARNING ] CWMOT0009W: The OpenTracing exception mapper detected and is handling an unhandled exception from the JAX-RS application.
[INFO] java.lang.NullPointerException
[INFO] at xx.xx.demo.micro.pq.infrastructure.infrastructure.EntityManagerProducer.createEntityManager(EntityManagerProducer.java:21)
[INFO] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[INFO] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[INFO] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[INFO] at java.lang.reflect.Method.invoke(Method.java:498)
[INFO] at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:95)
[INFO] at [internal classes]
[INFO] at org.jboss.weldx.persistence.EntityManager$1152902288$Proxy$_$$_WeldClientProxy.getCriteriaBuilder(Unknown Source)
[INFO] at xx.xx.demo.micro.pq.domain.ProductRepository.findAll(ProductRepository.java:42)
[INFO] at xx.xx.demo.micro.pq.domain.ProductRepository$Proxy$_$$_WeldClientProxy.findAll(Unknown Source)
[INFO] at xx.xx.demo.micro.pq.application.ProductResource.getAllProduct(ProductResource.java:54)
[INFO] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[INFO] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[INFO] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[INFO] at java.lang.reflect.Method.invoke(Method.java:498)
[INFO] at com.ibm.ws.jaxrs20.cdi.component.JaxRsFactoryImplicitBeanCDICustomizer.serviceInvoke(JaxRsFactoryImplicitBeanCDICustomizer.java:304)
[INFO] at [internal classes]
I create the EntityManager the following way:
#(unitName = "jpa-unit")
private EntityManagerFactory entityManagerFactory;
#Produces
#RequestScoped
public EntityManager createEntityManager() {
return entityManagerFactory.createEntityManager();
}
I dont really understand why open liberty looks in here: Searched in: []. Searched under packages: [].].
EDIT: add pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<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>xx.xxx</groupId>
<artifactId>demo-micro-pq</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<openliberty.maven.version>3.1</openliberty.maven.version>
<final.name>demo-micro-pq</final.name>
<failOnMissingWebXml>false</failOnMissingWebXml>
<openliberty.version>[19.0.0.9,)</openliberty.version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<version.javaee>8.0.1</version.javaee>
<version.slf4j>1.7.28</version.slf4j>
</properties>
<dependencies>
<dependency>
<groupId>org.eclipse.microprofile</groupId>
<artifactId>microprofile</artifactId>
<version>3.2</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>${version.javaee}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.4.10.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>5.4.10.Final</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${version.slf4j}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${version.slf4j}</version>
</dependency>
</dependencies>
<build>
<finalName>demo-micro-pq</finalName>
</build>
<profiles>
<profile>
<id>liberty</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>io.openliberty.tools</groupId>
<artifactId>liberty-maven-plugin</artifactId>
<version>${openliberty.maven.version}</version>
<executions>
<execution>
<id>package-server</id>
<phase>package</phase>
<goals>
<goal>create</goal>
<goal>install-feature</goal>
<goal>deploy</goal>
<goal>package</goal>
</goals>
<configuration>
<outputDirectory>target/wlp-package</outputDirectory>
</configuration>
</execution>
</executions>
<configuration>
<include>runnable</include>
<serverName>${final.name}</serverName>
<bootstrapProperties>
<project.name>${final.name}</project.name>
<jwt.issuer>https://server.example.com</jwt.issuer>
</bootstrapProperties>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.1.1</version>
<executions>
<execution>
<id>copy</id>
<phase>package</phase>
<goals>
<goal>copy</goal>
</goals>
</execution>
</executions>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.2.9</version>
<type>jar</type>
</artifactItem>
</artifactItems>
<outputDirectory>liberty/wlp/usr/shared/resources</outputDirectory>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>

Dependency plugin 'outputDirectory' must match server.xml directory
You need to align your server config with the location you copy the dependency to in your Maven build.
(Your problem seems to be you have an extra 'jdbc' subdir in your server config, compared to the location you're copying into from your Maven build).
E.g.
server.xml
<server>
<library id="postgresql-library">
<fileset id="PostgreSQLFileset" dir="${shared.resource.dir}/jdbc"
includes="postgresql-42.2.9.jar"/>
</library>
</server>
should point to the same directory as:
pom.xml
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.1.1</version>
<configuration>
<outputDirectory>${project.build.directory}/liberty/wlp/usr/shared/resources/jdbc</outputDirectory>
Follow-up note
Note there is an open issue now where we're discussing different ideas to add support into the liberty-maven-plugin itself for copying dependencies into place.

Related

Unable to start Groovy Spring Boot project in Eclipse

Here's an odd one. I have a Spring Boot app, that uses Groovy and Web starters. If I run mvn spring-boot:run it starts fine, and if I run mvn package and then java -jar demo-0.0.1-SNAPSHOT.jar it also runs fine. But if I choose Run As -> Spring Boot Application I get this error:
12:16:22.200 ERROR [Tomcat-startStop-1 ] [ContainerBase] [] A child
container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].TomcatEmbeddedContext[]]
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:939)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:872)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].TomcatEmbeddedContext[]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167)
... 6 common frames omitted
Caused by: org.apache.catalina.LifecycleException: Failed to start component [Pipeline[StandardEngine[Tomcat].StandardHost[localhost].TomcatEmbeddedContext[]]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5117)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 6 common frames omitted
Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.authenticator.NonLoginAuthenticator[]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167)
at org.apache.catalina.core.StandardPipeline.startInternal(StandardPipeline.java:182)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 8 common frames omitted
Caused by: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getVirtualServerName()Ljava/lang/String;
at org.apache.catalina.authenticator.AuthenticatorBase.startInternal(AuthenticatorBase.java:1141)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 10 common frames omitted
12:16:22.201 ERROR [main ] [ContainerBase] [] A child container failed during start
In Eclipe's POM editor I don't see the javax.servlet-api.jar file being brought in, so I added it, but no effect.
Eclipse: Oxygen 4.7.1a
STS: 3.9.1.201710100539-RELEASE
Java: 1.8.0_151
POM is straight from start.spring.io:
<?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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.gmavenplus</groupId>
<artifactId>gmavenplus-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<goals>
<goal>addSources</goal>
<goal>addTestSources</goal>
<goal>generateStubs</goal>
<goal>compile</goal>
<goal>testGenerateStubs</goal>
<goal>testCompile</goal>
<goal>removeStubs</goal>
<goal>removeTestStubs</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Any ideas how to fix this?
Ah ha! I had to remove the "Groovy Libraries" and "Groovy DSL Support" from the Java Build Path in Eclipse - they were bringing in a servlet-api-2.4.jar file.

How do I deploy a GWT-Maven-Project?

We're trying to convert our GWT Project into Maven GWT.
Also we're using Eclipse with m2e.
My idea was to create some sort of a war file by running the project as maven install and push it to the remote server.
Whenever I try maven install, I'm getting this error:
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 9.420s
[INFO] Finished at: Fri Jul 19 23:39:35 CEST 2013
[INFO] Final Memory: 6M/16M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project SiedlerVonCatanC: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project SiedlerVonCatanC: Compilation failure
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:858)
at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:129)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
... 19 more
[ERROR]
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
this is my pom.xml:
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>SiedlerVonCatanC</groupId>
<artifactId>SiedlerVonCatanC</artifactId>
<packaging>war</packaging>
<build>
<defaultGoal>install</defaultGoal>
<sourceDirectory>src</sourceDirectory>
<resources>
<resource>
<directory>src</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<version>2.5.1</version>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>test</goal>
</goals>
<configuration>
<module>main.java.de.swp.catan.SiedlerVonCatanC</module>
<runTarget>SiedlerVonCatanC.html</runTarget>
<hostedWebapp>${webappDirectory}</hostedWebapp>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<dependencies>
<!-- GWT -->
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-servlet</artifactId>
<version>2.5.1</version>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>2.5.1</version>
</dependency>
<!-- SmartGWT -->
<dependency>
<groupId>com.smartgwt</groupId>
<artifactId>smartgwt</artifactId>
<version>3.0</version>
</dependency>
<!-- Event Service -->
<dependency>
<groupId>de.novanic.gwteventservice</groupId>
<artifactId>gwteventservice</artifactId>
<version>1.2.0</version>
</dependency>
<!-- Java-Mail -->
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4</version>
</dependency>
<!-- Apache Commons -->
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.3</version>
</dependency>
<!-- htmlunit (wird im Projekt irgendwo genutzt) -->
<!-- <dependency>
<groupId>net.sourceforge.htmlunit</groupId>
<artifactId>htmlunit</artifactId>
<version>2.4</version>
</dependency>-->
<!-- Guice -->
<dependency>
<groupId>com.google.inject</groupId>
<artifactId>guice</artifactId>
<version>3.0</version>
</dependency>
<!-- Connector for JDBC -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.25</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>com.smartgwt</id>
<url>http://www.smartclient.com/maven2</url>
</repository>
</repositories>
<version>0.2</version>
</project>

Struts2-Maven in eclipse IDE

I have imported this Struts2-maven project in to my Eclipse.
here is my pom.xml for Struts2
<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">
<modelVersion>4.0.0</modelVersion>
<groupId>manning</groupId>
<artifactId>Form_Tags_Struts2_Mvn</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>Form_Tags_Struts2_Mvn</name>
<build>
<finalName>Form_Tags_Struts2_Mvn</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.7.0_05</version>
<scope>system</scope>
<systemPath>/usr/lib/jvm/jdk1.7.0_05/lib/tools.jar</systemPath>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.3.1.2</version>
</dependency>
</dependencies>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
But when am try to run it shows an exception.
Here is my Exception:
SEVERE: Exception starting filter struts2
java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:532)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:514)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:133)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:256)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382)
at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:103)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4650)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5306)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Can any one please help me? actually what happens ?
Try checking your deployment dependency of your project (Properties > Deployment Assembly) and check if Maven Dependencies are included. If you try to add them using Add > Java Build path entries and then select your maven thing.
Hope that helps :)

compiler errors when starting gwt:compile with gwt-maven-plugin

I'm trying to migrating a gwt-project to maven for a couple of days, but keep running into problems.
I tried to follow different guides and tried different pom-configurations but didn't get it to work.
At the moment, it's like this:
When I run gwt:compile, I get [ERROR] Line 8: The import de.bml.web.versandanzeige.server.model.Zyklus cannot be resolved, which is just one of many classes in my package. The error shows only up for this class. I'll post complete log below
the complete error log, with -e option:
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Versandanzeige_Web 1.0.2-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- gwt-maven-plugin:2.5.0:compile (default-cli) # Versandanzeige_Web ---
[INFO] Compiling module de.bml.web.versandanzeige.Versandanzeige_Web
[INFO] Validating units:
[INFO] Ignored 3 units with compilation errors in first pass.
[INFO] Compile with -strict or with -logLevel set to TRACE or DEBUG to see all errors.
[INFO] Computing all possible rebind results for 'de.bml.web.versandanzeige.client.services.KostenstelleService'
[INFO] Rebinding de.bml.web.versandanzeige.client.services.KostenstelleService
[INFO] Checking rule <generate-with class='com.google.gwt.user.rebind.rpc.ServiceInterfaceProxyGenerator'/>
[INFO] [ERROR] Errors in 'file:/home/icarus/git/BML-connect/Versandanzeige_Web/src/main/java/de/bml/web/versandanzeige/client/dto/ZyklusDTO.java'
[INFO] [ERROR] Line 8: The import de.bml.web.versandanzeige.server.model.Zyklus cannot be resolved
[INFO] [ERROR] Line 74: Zyklus cannot be resolved
[INFO] [ERROR] Line 77: Zyklus cannot be resolved
[INFO] [ERROR] Line 80: Zyklus cannot be resolved
[INFO] [ERROR] Line 83: Zyklus cannot be resolved
[INFO] [ERROR] Line 86: Zyklus cannot be resolved
[INFO] [ERROR] Unable to find type 'de.bml.web.versandanzeige.client.services.KostenstelleService'
[INFO] [ERROR] Hint: Previous compiler errors may have made this type unavailable
[INFO] [ERROR] Hint: Check the inheritance chain from your module; it may not be inheriting a required module or a module may not be adding its source path entries properly
... all places where Zyklus is used follow ...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 9.406s
[INFO] Finished at: Mon Nov 12 15:27:39 CET 2012
[INFO] Final Memory: 13M/168M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:gwt-maven-plugin:2.5.0:compile (default-cli) on project Versandanzeige_Web: Command [[
[ERROR] /bin/sh -c /usr/java/jdk1.7.0_07/jre/bin/java -Xmx512m -classpath /home/icarus/git/BML-connect/Versandanzeige_Web/src/main/webapp/WEB-INF/classes:/home/icarus/git/BML-connect/Versandanzeige_Web/src/main/java:/home/icarus/git/BML-connect/Versandanzeige_Web/src/main/resources:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-plugin-api/3.2/sonar-plugin-api-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-check-api/3.2/sonar-check-api-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-colorizer/3.2/sonar-colorizer-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-channel/3.2/sonar-channel-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-duplications/3.2/sonar-duplications-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-graph/3.2/sonar-graph-3.2.jar:/home/icarus/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-squid/3.2/sonar-squid-3.2.jar:/home/icarus/.m2/repository/commons-io/commons-io/2.0.1/commons-io-2.0.1.jar:/home/icarus/.m2/repository/org/picocontainer/picocontainer/2.14.1/picocontainer-2.14.1.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-commons-annotations/3.1.0.GA/hibernate-commons-annotations-3.1.0.GA.jar:/home/icarus/.m2/repository/com/google/guava/guava/10.0.1/guava-10.0.1.jar:/home/icarus/.m2/repository/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.jar:/home/icarus/.m2/repository/commons-configuration/commons-configuration/1.6/commons-configuration-1.6.jar:/home/icarus/.m2/repository/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar:/home/icarus/.m2/repository/commons-digester/commons-digester/1.8/commons-digester-1.8.jar:/home/icarus/.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar:/home/icarus/.m2/repository/commons-codec/commons-codec/1.4/commons-codec-1.4.jar:/home/icarus/.m2/repository/jfree/jfreechart/1.0.9/jfreechart-1.0.9.jar:/home/icarus/.m2/repository/jfree/jcommon/1.0.12/jcommon-1.0.12.jar:/home/icarus/.m2/repository/org/slf4j/slf4j-api/1.6.2/slf4j-api-1.6.2.jar:/home/icarus/.m2/repository/org/slf4j/jcl-over-slf4j/1.6.2/jcl-over-slf4j-1.6.2.jar:/home/icarus/.m2/repository/org/slf4j/log4j-over-slf4j/1.6.2/log4j-over-slf4j-1.6.2.jar:/home/icarus/.m2/repository/com/thoughtworks/xstream/xstream/1.3.1/xstream-1.3.1.jar:/home/icarus/.m2/repository/xpp3/xpp3/1.1.3.3/xpp3-1.1.3.3.jar:/home/icarus/.m2/repository/org/codehaus/woodstox/woodstox-core-lgpl/4.0.4/woodstox-core-lgpl-4.0.4.jar:/home/icarus/.m2/repository/stax/stax-api/1.0.1/stax-api-1.0.1.jar:/home/icarus/.m2/repository/org/codehaus/woodstox/stax2-api/3.0.1/stax2-api-3.0.1.jar:/home/icarus/.m2/repository/org/codehaus/staxmate/staxmate/2.0.0/staxmate-2.0.0.jar:/home/icarus/.m2/repository/xerces/xercesImpl/2.8.1/xercesImpl-2.8.1.jar:/home/icarus/.m2/repository/xalan/xalan/2.7.1/xalan-2.7.1.jar:/home/icarus/.m2/repository/xalan/serializer/2.7.1/serializer-2.7.1.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-gwt-api/2.11/sonar-gwt-api-2.11.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-ws-client/2.11/sonar-ws-client-2.11.jar:/home/icarus/.m2/repository/com/googlecode/json-simple/json-simple/1.1/json-simple-1.1.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-incubator/2.0.1/gwt-incubator-2.0.1.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar:/home/icarus/.m2/repository/javax/validation/validation-api/1.0.0.GA/validation-api-1.0.0.GA.jar:/home/icarus/.m2/repository/javax/validation/validation-api/1.0.0.GA/validation-api-1.0.0.GA-sources.jar:/home/icarus/.m2/repository/org/json/json/20090211/json-20090211.jar:/home/icarus/.m2/repository/com/google/collections/google-collections/1.0/google-collections-1.0.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-entitymanager/3.5.3-Final/hibernate-entitymanager-3.5.3-Final.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-core/3.5.3-Final/hibernate-core-3.5.3-Final.jar:/home/icarus/.m2/repository/antlr/antlr/2.7.6/antlr-2.7.6.jar:/home/icarus/.m2/repository/javax/transaction/jta/1.1/jta-1.1.jar:/home/icarus/.m2/repository/cglib/cglib/2.2/cglib-2.2.jar:/home/icarus/.m2/repository/asm/asm/3.1/asm-3.1.jar:/home/icarus/.m2/repository/javassist/javassist/3.9.0.GA/javassist-3.9.0.GA.jar:/home/icarus/.m2/repository/org/hibernate/javax/persistence/hibernate-jpa-2.0-api/1.0.0.Final/hibernate-jpa-2.0-api-1.0.0.Final.jar:/home/icarus/.m2/repository/org/apache/geronimo/specs/geronimo-jta_1.1_spec/1.1/geronimo-jta_1.1_spec-1.1.jar:/home/icarus/.m2/repository/log4j/log4j/1.2.14/log4j-1.2.14.jar:/home/icarus/.m2/repository/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar:/home/icarus/.m2/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-dev/2.5.0/gwt-dev-2.5.0.jar com.google.gwt.dev.Compiler -logLevel INFO -style PRETTY -war /home/icarus/git/BML-connect/Versandanzeige_Web/src/main/webapp -localWorkers 4 -XfragmentCount -1 -gen /home/icarus/git/BML-connect/Versandanzeige_Web/target/.generated de.bml.web.versandanzeige.Versandanzeige_Web
[ERROR] ]] failed with status 1
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:gwt-maven-plugin:2.5.0:compile (default-cli) on project Versandanzeige_Web: Command [[
/bin/sh -c /usr/java/jdk1.7.0_07/jre/bin/java -Xmx512m -classpath /home/icarus/git/BML-connect/Versandanzeige_Web/src/main/webapp/WEB-INF/classes:/home/icarus/git/BML-connect/Versandanzeige_Web/src/main/java:/home/icarus/git/BML-connect/Versandanzeige_Web/src/main/resources:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-plugin-api/3.2/sonar-plugin-api-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-check-api/3.2/sonar-check-api-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-colorizer/3.2/sonar-colorizer-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-channel/3.2/sonar-channel-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-duplications/3.2/sonar-duplications-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-graph/3.2/sonar-graph-3.2.jar:/home/icarus/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-squid/3.2/sonar-squid-3.2.jar:/home/icarus/.m2/repository/commons-io/commons-io/2.0.1/commons-io-2.0.1.jar:/home/icarus/.m2/repository/org/picocontainer/picocontainer/2.14.1/picocontainer-2.14.1.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-commons-annotations/3.1.0.GA/hibernate-commons-annotations-3.1.0.GA.jar:/home/icarus/.m2/repository/com/google/guava/guava/10.0.1/guava-10.0.1.jar:/home/icarus/.m2/repository/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.jar:/home/icarus/.m2/repository/commons-configuration/commons-configuration/1.6/commons-configuration-1.6.jar:/home/icarus/.m2/repository/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar:/home/icarus/.m2/repository/commons-digester/commons-digester/1.8/commons-digester-1.8.jar:/home/icarus/.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar:/home/icarus/.m2/repository/commons-codec/commons-codec/1.4/commons-codec-1.4.jar:/home/icarus/.m2/repository/jfree/jfreechart/1.0.9/jfreechart-1.0.9.jar:/home/icarus/.m2/repository/jfree/jcommon/1.0.12/jcommon-1.0.12.jar:/home/icarus/.m2/repository/org/slf4j/slf4j-api/1.6.2/slf4j-api-1.6.2.jar:/home/icarus/.m2/repository/org/slf4j/jcl-over-slf4j/1.6.2/jcl-over-slf4j-1.6.2.jar:/home/icarus/.m2/repository/org/slf4j/log4j-over-slf4j/1.6.2/log4j-over-slf4j-1.6.2.jar:/home/icarus/.m2/repository/com/thoughtworks/xstream/xstream/1.3.1/xstream-1.3.1.jar:/home/icarus/.m2/repository/xpp3/xpp3/1.1.3.3/xpp3-1.1.3.3.jar:/home/icarus/.m2/repository/org/codehaus/woodstox/woodstox-core-lgpl/4.0.4/woodstox-core-lgpl-4.0.4.jar:/home/icarus/.m2/repository/stax/stax-api/1.0.1/stax-api-1.0.1.jar:/home/icarus/.m2/repository/org/codehaus/woodstox/stax2-api/3.0.1/stax2-api-3.0.1.jar:/home/icarus/.m2/repository/org/codehaus/staxmate/staxmate/2.0.0/staxmate-2.0.0.jar:/home/icarus/.m2/repository/xerces/xercesImpl/2.8.1/xercesImpl-2.8.1.jar:/home/icarus/.m2/repository/xalan/xalan/2.7.1/xalan-2.7.1.jar:/home/icarus/.m2/repository/xalan/serializer/2.7.1/serializer-2.7.1.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-gwt-api/2.11/sonar-gwt-api-2.11.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-ws-client/2.11/sonar-ws-client-2.11.jar:/home/icarus/.m2/repository/com/googlecode/json-simple/json-simple/1.1/json-simple-1.1.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-incubator/2.0.1/gwt-incubator-2.0.1.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar:/home/icarus/.m2/repository/javax/validation/validation-api/1.0.0.GA/validation-api-1.0.0.GA.jar:/home/icarus/.m2/repository/javax/validation/validation-api/1.0.0.GA/validation-api-1.0.0.GA-sources.jar:/home/icarus/.m2/repository/org/json/json/20090211/json-20090211.jar:/home/icarus/.m2/repository/com/google/collections/google-collections/1.0/google-collections-1.0.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-entitymanager/3.5.3-Final/hibernate-entitymanager-3.5.3-Final.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-core/3.5.3-Final/hibernate-core-3.5.3-Final.jar:/home/icarus/.m2/repository/antlr/antlr/2.7.6/antlr-2.7.6.jar:/home/icarus/.m2/repository/javax/transaction/jta/1.1/jta-1.1.jar:/home/icarus/.m2/repository/cglib/cglib/2.2/cglib-2.2.jar:/home/icarus/.m2/repository/asm/asm/3.1/asm-3.1.jar:/home/icarus/.m2/repository/javassist/javassist/3.9.0.GA/javassist-3.9.0.GA.jar:/home/icarus/.m2/repository/org/hibernate/javax/persistence/hibernate-jpa-2.0-api/1.0.0.Final/hibernate-jpa-2.0-api-1.0.0.Final.jar:/home/icarus/.m2/repository/org/apache/geronimo/specs/geronimo-jta_1.1_spec/1.1/geronimo-jta_1.1_spec-1.1.jar:/home/icarus/.m2/repository/log4j/log4j/1.2.14/log4j-1.2.14.jar:/home/icarus/.m2/repository/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar:/home/icarus/.m2/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-dev/2.5.0/gwt-dev-2.5.0.jar com.google.gwt.dev.Compiler -logLevel INFO -style PRETTY -war /home/icarus/git/BML-connect/Versandanzeige_Web/src/main/webapp -localWorkers 4 -XfragmentCount -1 -gen /home/icarus/git/BML-connect/Versandanzeige_Web/target/.generated de.bml.web.versandanzeige.Versandanzeige_Web
]] failed with status 1
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:217)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:158)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: org.codehaus.mojo.gwt.shell.ForkedProcessExecutionException: Command [[
/bin/sh -c /usr/java/jdk1.7.0_07/jre/bin/java -Xmx512m -classpath /home/icarus/git/BML-connect/Versandanzeige_Web/src/main/webapp/WEB-INF/classes:/home/icarus/git/BML-connect/Versandanzeige_Web/src/main/java:/home/icarus/git/BML-connect/Versandanzeige_Web/src/main/resources:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-plugin-api/3.2/sonar-plugin-api-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-check-api/3.2/sonar-check-api-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-colorizer/3.2/sonar-colorizer-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-channel/3.2/sonar-channel-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-duplications/3.2/sonar-duplications-3.2.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-graph/3.2/sonar-graph-3.2.jar:/home/icarus/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-squid/3.2/sonar-squid-3.2.jar:/home/icarus/.m2/repository/commons-io/commons-io/2.0.1/commons-io-2.0.1.jar:/home/icarus/.m2/repository/org/picocontainer/picocontainer/2.14.1/picocontainer-2.14.1.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-commons-annotations/3.1.0.GA/hibernate-commons-annotations-3.1.0.GA.jar:/home/icarus/.m2/repository/com/google/guava/guava/10.0.1/guava-10.0.1.jar:/home/icarus/.m2/repository/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.jar:/home/icarus/.m2/repository/commons-configuration/commons-configuration/1.6/commons-configuration-1.6.jar:/home/icarus/.m2/repository/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar:/home/icarus/.m2/repository/commons-digester/commons-digester/1.8/commons-digester-1.8.jar:/home/icarus/.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar:/home/icarus/.m2/repository/commons-codec/commons-codec/1.4/commons-codec-1.4.jar:/home/icarus/.m2/repository/jfree/jfreechart/1.0.9/jfreechart-1.0.9.jar:/home/icarus/.m2/repository/jfree/jcommon/1.0.12/jcommon-1.0.12.jar:/home/icarus/.m2/repository/org/slf4j/slf4j-api/1.6.2/slf4j-api-1.6.2.jar:/home/icarus/.m2/repository/org/slf4j/jcl-over-slf4j/1.6.2/jcl-over-slf4j-1.6.2.jar:/home/icarus/.m2/repository/org/slf4j/log4j-over-slf4j/1.6.2/log4j-over-slf4j-1.6.2.jar:/home/icarus/.m2/repository/com/thoughtworks/xstream/xstream/1.3.1/xstream-1.3.1.jar:/home/icarus/.m2/repository/xpp3/xpp3/1.1.3.3/xpp3-1.1.3.3.jar:/home/icarus/.m2/repository/org/codehaus/woodstox/woodstox-core-lgpl/4.0.4/woodstox-core-lgpl-4.0.4.jar:/home/icarus/.m2/repository/stax/stax-api/1.0.1/stax-api-1.0.1.jar:/home/icarus/.m2/repository/org/codehaus/woodstox/stax2-api/3.0.1/stax2-api-3.0.1.jar:/home/icarus/.m2/repository/org/codehaus/staxmate/staxmate/2.0.0/staxmate-2.0.0.jar:/home/icarus/.m2/repository/xerces/xercesImpl/2.8.1/xercesImpl-2.8.1.jar:/home/icarus/.m2/repository/xalan/xalan/2.7.1/xalan-2.7.1.jar:/home/icarus/.m2/repository/xalan/serializer/2.7.1/serializer-2.7.1.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-gwt-api/2.11/sonar-gwt-api-2.11.jar:/home/icarus/.m2/repository/org/codehaus/sonar/sonar-ws-client/2.11/sonar-ws-client-2.11.jar:/home/icarus/.m2/repository/com/googlecode/json-simple/json-simple/1.1/json-simple-1.1.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-incubator/2.0.1/gwt-incubator-2.0.1.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar:/home/icarus/.m2/repository/javax/validation/validation-api/1.0.0.GA/validation-api-1.0.0.GA.jar:/home/icarus/.m2/repository/javax/validation/validation-api/1.0.0.GA/validation-api-1.0.0.GA-sources.jar:/home/icarus/.m2/repository/org/json/json/20090211/json-20090211.jar:/home/icarus/.m2/repository/com/google/collections/google-collections/1.0/google-collections-1.0.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-entitymanager/3.5.3-Final/hibernate-entitymanager-3.5.3-Final.jar:/home/icarus/.m2/repository/org/hibernate/hibernate-core/3.5.3-Final/hibernate-core-3.5.3-Final.jar:/home/icarus/.m2/repository/antlr/antlr/2.7.6/antlr-2.7.6.jar:/home/icarus/.m2/repository/javax/transaction/jta/1.1/jta-1.1.jar:/home/icarus/.m2/repository/cglib/cglib/2.2/cglib-2.2.jar:/home/icarus/.m2/repository/asm/asm/3.1/asm-3.1.jar:/home/icarus/.m2/repository/javassist/javassist/3.9.0.GA/javassist-3.9.0.GA.jar:/home/icarus/.m2/repository/org/hibernate/javax/persistence/hibernate-jpa-2.0-api/1.0.0.Final/hibernate-jpa-2.0-api-1.0.0.Final.jar:/home/icarus/.m2/repository/org/apache/geronimo/specs/geronimo-jta_1.1_spec/1.1/geronimo-jta_1.1_spec-1.1.jar:/home/icarus/.m2/repository/log4j/log4j/1.2.14/log4j-1.2.14.jar:/home/icarus/.m2/repository/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar:/home/icarus/.m2/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar:/home/icarus/.m2/repository/com/google/gwt/gwt-dev/2.5.0/gwt-dev-2.5.0.jar com.google.gwt.dev.Compiler -logLevel INFO -style PRETTY -war /home/icarus/git/BML-connect/Versandanzeige_Web/src/main/webapp -localWorkers 4 -XfragmentCount -1 -gen /home/icarus/git/BML-connect/Versandanzeige_Web/target/.generated de.bml.web.versandanzeige.Versandanzeige_Web
]] failed with status 1
at org.codehaus.mojo.gwt.shell.AbstractGwtShellMojo$JavaCommand.execute(AbstractGwtShellMojo.java:485)
at org.codehaus.mojo.gwt.shell.CompileMojo.compile(CompileMojo.java:365)
at org.codehaus.mojo.gwt.shell.CompileMojo.doExecute(CompileMojo.java:280)
at org.codehaus.mojo.gwt.shell.AbstractGwtShellMojo.execute(AbstractGwtShellMojo.java:172)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
... 19 more
[ERROR]
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
my pom.xml:
<?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">
<modelVersion>4.0.0</modelVersion>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<repositories>
<repository>
<!-- for gwt-incubator -->
<id>sonar</id>
<name>Sonar</name>
<url>http://repository.sonarsource.org/content/repositories/sonar</url>
<releases>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.codehaus.sonar</groupId>
<artifactId>sonar-plugin-api</artifactId>
<version>3.2</version>
<exclusions>
<exclusion>
<artifactId>ejb3-persistence</artifactId>
<groupId>org.hibernate</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.sonar</groupId>
<artifactId>sonar-gwt-api</artifactId>
<version>2.11</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-servlet</artifactId>
<version>2.5.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>2.5.0</version>
<scope>provided</scope>
</dependency>
<!-- unit tests -->
<dependency>
<groupId>org.codehaus.sonar</groupId>
<artifactId>sonar-testing-harness</artifactId>
<version>2.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.7</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.5.3-Final</version>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jta_1.1_spec</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
</dependency>
</dependencies>
<groupId>de.bml-con</groupId>
<artifactId>Versandanzeige_Web</artifactId>
<packaging>war</packaging>
<version>1.0.2-SNAPSHOT</version>
<build>
<outputDirectory>src/main/webapp/WEB-INF/classes</outputDirectory>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
<include>**/*.gwt.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webappDirectory>src/main/webapp</webappDirectory>
<webXml>src/main/webapp/WEB-INF/web.xml</webXml>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<configuration>
<webAppConfig>
<contextPath>/${project.name}</contextPath>
</webAppConfig>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<configuration>
<logLevel>INFO</logLevel>
<style>PRETTY</style>
<gwtVersion>2.1.0</gwtVersion>
<runTarget>de.bml.web.versandanzeige.Versandanzeige_Web/Versandanzeige_Web.html
</runTarget>
<modules>
<module>de.bml.web.versandanzeige.Versandanzeige_Web</module>
</modules>
<copyWebapp>true</copyWebapp>
<webappDirectory>src/main/webapp</webappDirectory>
</configuration>
<executions>
<execution>
<id>gwtcompile</id>
<phase>prepare-package</phase>
<goals>
<goal>compile</goal>
<goal>resources</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- manage dependencies -->
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<configuration>
<includeTypes>jar</includeTypes>
<stripVersion>true</stripVersion>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-invoker-plugin</artifactId>
<executions>
<execution>
<id>copy-deps</id>
<phase>compile</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<projectsDirectory>.</projectsDirectory>
<pomIncludes>
<pomInclude>pom.xml</pomInclude>
</pomIncludes>
<streamLogs>true</streamLogs>
<goals>
<goal>dependency:copy-dependencies</goal>
</goals>
<encoding>UTF-8</encoding>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
project structure:
sources:
webapp:
This project is already under version control, so I'd try to avoid starting anew.
How can I fix this problem, make it compile into a war and start in debug mode?
GWT 101: client code cannot refer to server code.
More specifically:
[INFO] [ERROR] Errors in 'file:/home/icarus/git/BML-connect/Versandanzeige_Web/src/main/java/de/bml/web/versandanzeige/client/dto/ZyklusDTO.java'
[INFO] [ERROR] Line 8: The import de.bml.web.versandanzeige.server.model.Zyklus cannot be resolved
and the server subpackage probably has no corresponding <source path="server" /> in your de/bml/web/versandanzeige/Versandanzeige_Web.gwt.xml (totally understandable though). See https://developers.google.com/web-toolkit/doc/latest/DevGuideOrganizingProjects#DevGuideDirectoriesPackageConventions and https://developers.google.com/web-toolkit/doc/latest/DevGuideCodingBasicsClient
Is your gwt module description missing ( xxx.gwt.xml) ?

Transitive dependencies unresolved at runtime in eclipse wtp

I am facing an issue while running a Dynamic Web Project in Eclipse. I have created a Maven Project (archtype - webapp) and then added DWP behaviour in it by adding maven-eclipse-plugin (version 2.9). The I added my project dependencies in POM file which is as follows
<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">
<modelVersion>4.0.0</modelVersion>
<groupId>au.com.fairfaxdigital</groupId>
<artifactId>accessloganalyzer</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>accessloganalyzer Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>net.sourceforge.wurfl</groupId>
<artifactId>wurfl</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.8</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<repositories>
<repository>
<id>scientiamobile.public</id>
<name>Scientia Mobile Public repository</name>
<url>http://dev.scientiamobile.com/nexus/content/repositories/public-releases/</url>
</repository>
</repositories>
<build>
<finalName>accessloganalyzer</finalName>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.9</version>
<configuration>
<projectNameTemplate>accessloganalyzer-${project.version}</projectNameTemplate>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
<wtpmanifest>true</wtpmanifest>
<wtpapplicationxml>true</wtpapplicationxml>
<wtpversion>2.0</wtpversion>
<manifest>${basedir}/src/main/resources/META-INF/MANIFEST.MF</manifest>
</configuration>
</plugin>
</plugins>
</build>
</project>
Then I build the project using maven command (clean install). I could see the generated war file in target folder. When try run this application on tomcat within eclipse (project->right click->run one server) tomcat starts with an error.
SEVERE: Exception sending context initialized event to listener
instance of class
net.sourceforge.wurfl.core.web.WURFLServletContextListener
java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils
at
net.sourceforge.wurfl.core.web.WURFLServletContextListener.contextInitialized(WURFLServletContextListener.java:81)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4765)
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5260)
at
org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:866)
at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:842)
at
org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
at
org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:649)
at
org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1581)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138) at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662) Caused by:
java.lang.ClassNotFoundException: org.apache.commons.lang.StringUtils
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1688)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1533)
... 15 more Starting Introspector initialization...
When I look into the Eclipse Folder from where tomcat runs the app (C:\Deepak\Study\Dev\Practicals\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\accessloganalyzer-1.0-SNAPSHOT), I didn't find any dependencies (including commons-lang which is being referenced in the error) for the third party library wurfl.1.4.jar that I am using in my project.
wurfl library uses the following dependencies which are not present in WEB-INF/lib and hence causing the issue
commons-collections-3.2.1
commons-lang-2.6
jackson-core-asl-1.8.2
jackson-mapper-asl-1.8.2
logback-classic-0.9.28
logback-core-0.9.28
slf4j-api-1.6.1
Can any one please point what I missing why these transitive dependencies are not being copied in WEB-INF/lib folder in the application WAR file?
Install m2e wtp plugin. This plugin can be installed from the Eclipse Marketplace (Help -> Eclipse Marketplace...). That should get you most of the way there. You should then see your dependencies where you are expecting.