Note that there are some explanatory texts on larger screens.

plurals
  1. POHow does Grails resolve Controller name conflicts?
    text
    copied!<p>What is the recommended approach when an application Controller name conflicts with the name of a plugin's Controller?</p> <p>I've seen these Grails JIRAs: <a href="http://jira.codehaus.org/browse/GRAILS-4240" rel="nofollow noreferrer">GRAILS-4240</a> <a href="http://jira.codehaus.org/browse/GRAILS-1243" rel="nofollow noreferrer">GRAILS-1243</a></p> <p>...and Burt Beckwith's replies to these two threads imply that the only recourse is to rename one of the Controllers (presumably the application Controller since hacking plugin code is not desirable)</p> <p><a href="https://stackoverflow.com/questions/2378102/how-to-use-the-package-name-to-differentiate-between-classes-in-grails">How to use the package name to differentiate between classes in grails?</a></p> <p><a href="https://stackoverflow.com/questions/2173795/how-to-extend-override-controller-actions-of-plugins">How to extend/override controller actions of plugins?</a></p> <p>However, Burt's own spring-security-ui plugin advocates the exact approach of naming an application Controller <strong>the same as</strong> a plugin Controller - see <a href="http://burtbeckwith.github.com/grails-spring-security-ui/docs/manual/guide/single.html#10%20Customization" rel="nofollow noreferrer">spring-security-ui docs</a>. </p> <p>This approach actually seems to work in both development mode (grails run-app) and when the app is deployed as a WAR. So can this functionality be depended on? If so, what is the Controller conflict resolution rule? The grails docs do not make any mention of it. Perhasps Burt can share his insight?</p> <p>Having a "plugin" architecture like grails' without even a basic namespacing facility to handle conflicts like this seems pretty broken to me...</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload