Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jetty-users] Dynamic Servlet Registration

Ken, 

Yes, I saw "No default container found." error, running several grails
commands (war, test-app, ...)
when worked with my grails application.

Frankly speaking, I just did "grails clean" as workaround and never tried to
resolve this issue.
But today, after looking at GrailsProjectRunner.groovy code in your message,
I think, that now the cause of problem can be explained.

1. GrailsProjectRunner reads server factory name from
"grails.server.factory" property, defaulting to tomcat one.
https://github.com/grails/grails-core/blob/master/grails-web/src/main/groovy/org/codehaus/groovy/grails/project/container/GrailsProjectRunner.groovy#L146

2. grails-jetty plugin set this property to
"org.grails.jetty.JettyServerFactory" only after  web.xml generation event:
https://github.com/grails-plugins/grails-jetty/blob/master/scripts/_Events.groovy#L4

When web.xml already exists in grails.project.resource.dir, 
eventGenerateWebXmlEnd is not fired and as a consequence,
"grails.server.factory" property is not setted. 
At least, this theory explains why "grails clean" workaround was effective.
:)

grails-jetty plugin should be fixed. It should always set
"grails.server.factory".

As a workaround you can add this line:
System.setProperty("grails.server.factory",
"org.grails.jetty.JettyServerFactory")
to event handler for SetClasspath evant (or some other always fired event).

Hope this helps,
   Igor



--
View this message in context: http://jetty.4.x6.nabble.com/jetty-users-Dynamic-Servlet-Registration-tp4961419p4961457.html
Sent from the Jetty User mailing list archive at Nabble.com.


Back to the top