Question

My grails controller gets invoked by the following URLs

/center/madrid/12-de-octubre
/center/madrid/12-de-octubre?opt=1

I need the controller to behave differently if there are any parameters after the ? in the URL

I have the following URL mapping:

   name center: "/center/$_uni_city/$_uni_facility_name" {
        controller = "site"
        action = "centerprofile"
} 

While I can find all parameters (e.g. _uni_city=Madrid, opt=1) I am unable to determine which parameters come from the querystring after applying URLMappings (i.e. opt in the example above).

Is there a way to retrieve the original request URL (i.e.
/center/madrid/12-de-octubre?opt=1) in the grails controller?

Was it helpful?

Solution

To get the original parameters in the request URL use:

request.queryString 

OTHER TIPS

See description of Grails request.

  • forwardURI - Useful for obtaining the current request URI since the request objects requestURI property returns the original URI, not the matched one.

Solution:

class URLController{
  def printCurrentUrl = {
   render request.forwardURI
  }
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top