| 

.NET C# Java Javascript Exception

Zugriff auf grailsApplication aus Domainklasse heraus

Dies ist das Archiv des ehemaligen Forums zum Thema Groovy, Grails, Griffon und Bean Scripting Framework, welches unter groovy-forum.de existierte. Die neue Adresse des Groovy-Forums ist: http://codekicker.de/fragen/themen/groovy.


Zugriff auf grailsApplication aus Domainklasse heraus

slyfox1972 - 01.04.2010 13:06
Hallo!

Ich entwickle gerade eine Klasse "Address", die beim Insert() sich die Koordinaten über Google Maps holt.

package my.package

class Address {
	String name
	String street
	String postalcode
	String city
	String phone
	String fax
	String homepage
	String email
	double latitude
	double longitude

	def beforeInsert = {
		// Todo: get Coords
	}

	def getGmapsDATA = {
		def xml = new URL(gmapsQueryURL()).text
		return xml
	}
	
	def gmapsQueryURL = {
		//def key = grailsApplication.config.google.api.key
		def key = 'mygoogleapikey'
		def query = name + ', ' + street + ', ' + postalcode + ' ' + city
		def url = 'http://maps.google.com/maps/geo?q=' +
			query.encodeAsURL() +
			'&output=xml' +
			'&key=' + key
		return url
	}

    static constraints = {
    }
}

Soweit so gut, die Daten über Google Maps holen klappt.
getGmapsDATA() liefert die XML-Daten, die ich noch weiter verarbeiten muss.

Ist nur ein Problem: der Google-Dienst benötigt einen Key.
Diesen hinterlege ich sinnigerweise in der grails-app/conf/Config.groovy:

google.api.key = 'mygoogleapikey'

Auslesen geht mittels

def key = grailsApplication.config.google.api.key

Jedoch klappt dies nur in einer Controller-Klasse, nicht aber in einer Domain-Klasse.

Da kommt's zu einer Exception:

Error 500: Executing action [index] of controller [my.package.TestController] caused exception: groovy.lang.MissingPropertyException: No such property: grailsApplication for class: my.package.Address

Wie kann ich auf grailsApplication.config.google.api.key zugreifen? Nur mittels Parameter-Übergabe, oder soll ich den Key woanders hinterlegen als in grails-app/conf/Config.groovy ?

Viele Grüße

Egon Schmid


Stelle deine Groovy-Frage jetzt!


Diese Seite zeigt den Thread "Zugriff auf grailsApplication aus Domainklasse heraus" der ehemaligen Webseite groovy-forum.de, welche durch einen Serverunfall zerstört wurde. codekicker.de hat viele Konversationen über die beliebte Programmiersprache Groovy und zugehörige Frameworks wie das Grails-Framework retten können.

Hast Du eine Frage zum Thema Groovy, Grails oder allgemein Java? Viele ehemalige groovy-forum.de Mitglieder beantworten dir auf codekicker.de deine Frage! Stelle jetzt eine Frage!

Viele weitere Diskussionen zu Grails und Groovy befinden sich auf der Threadübersicht des alten groovy-forum.de.