1
votes

i followed the tutorial at https://grails.org/wiki/Quick%20Start and it works fine when i start the application with 'grails run-app'.

If i build the app with 'grails war' and deploy the war into my tomcat 8 i only get 404 errors. The tomcat manager app lists my application as started and there are no errors in the logsfiles.

 06-Oct-2016 12:07:30.655 INFO [localhost-startStop-2] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive C:\Program Files\Apache Software Foundation\Apache Tomcat 8.0.27\webapps\my-project-0.1.war
 06-Oct-2016 12:07:39.114 INFO [localhost-startStop-2] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive C:\Program Files\Apache Software Foundation\Apache Tomcat 8.0.27\webapps\my-project-0.1.war has finished in 8,459 ms

What am i missing?

I use grails 3.2.0

It seems that the Bootstrap.groovy is not executed. I have a println in there that is not showing when started with tomcat

added Build.gradle

 buildscript {
     repositories {
         mavenLocal()
         maven { url "https://repo.grails.org/grails/core" }
     }
     dependencies {
         classpath "org.grails:grails-gradle-plugin:$grailsVersion"
         classpath "com.bertramlabs.plugins:asset-pipeline-gradle:2.11.1"
         classpath "org.grails.plugins:hibernate5:6.0.0"
     }
 }

 version "0.1"
 group "my.project"

 apply plugin:"eclipse"
 apply plugin:"idea"
 apply plugin:"war"
 apply plugin:"org.grails.grails-web"
 apply plugin:"org.grails.grails-gsp"
 apply plugin:"asset-pipeline"

 repositories {
     mavenLocal()
     maven { url "https://repo.grails.org/grails/core" }
 }

 dependencyManagement {
     imports {
         mavenBom "org.grails:grails-bom:$grailsVersion"
     }
     applyMavenExclusions false
 }

 dependencies {
     compile "org.springframework.boot:spring-boot-starter-logging"
     compile "org.springframework.boot:spring-boot-autoconfigure"
     compile "org.grails:grails-core"
     compile "org.springframework.boot:spring-boot-starter-actuator"
     provided "org.springframework.boot:spring-boot-starter-tomcat"
     compile "org.grails:grails-dependencies"
     compile "org.grails:grails-web-boot"
     compile "org.grails.plugins:cache"
     compile "org.grails.plugins:scaffolding"
     compile "org.grails.plugins:hibernate5"
     compile "org.hibernate:hibernate-core:5.1.1.Final"
     compile "org.hibernate:hibernate-ehcache:5.1.1.Final"
     console "org.grails:grails-console"
     profile "org.grails.profiles:web"
     provided "org.codehaus.groovy:groovy-ant"
     runtime "com.bertramlabs.plugins:asset-pipeline-grails:2.11.1"
     runtime "com.h2database:h2"
     testCompile "org.grails:grails-plugin-testing"
     testCompile "org.grails.plugins:geb"
     testRuntime "org.seleniumhq.selenium:selenium-htmlunit-driver:2.47.1"
     testRuntime "net.sourceforge.htmlunit:htmlunit:2.18"
 }


 assets {
     minifyJs = true
     minifyCss = true
 }

I changed provided "org.springframework.boot:spring-boot-starter-tomcat" the rest is generated by grails.

1
did you try grails prod war ?user2809386
are you using java 7 or java 8 to build your war? and your server using java 7 or 8?user2809386

1 Answers

0
votes

Well, after trial and error, I found that I had to remove,

provided "org.codehaus.groovy:groovy-ant"

Now things work well.