Lo + Leído
Eventos destacados
Artículos para tus primeros pasos
Si estás empezando a introducirte en el mundo de Groovy y Grails, no te pierdas nuestros artículos básicos:
- Introducción a Groovy, parte 1 (Andrés Almiray)
- Introducción a Groovy, parte 2 (Andrés Almiray)
- Introducción a Groovy, parte 3 (Andrés Almiray)
- Introducción a Grails (Material Seminario ImaginaWorks)
Los protagonistas te cuentan de qué van los proyectos más importantes del mundo Groovy:
Groovy: primeros pasos
Problemas al cambiar el Valor de response.setContentType()
abraham - miércoles 27/02/2008Hola amigos, necesito que me ayuden, tengo problemas con un script que devuelve un XML al Ejecutarlo en Tomcat 6 y GlassFish V2.
El error se presenta al cambiar el valor de setContentType a "text/xml", por defecto Groovy Servlet usa "text/html".
Saludos y Gracias
Abraham Gajardo
// EL SCRIPT CON PROBLEMAS //
def CAR_RECORDS = '''
<?xml version="/1.0"/ encoding="/iso-8859-1"/ ?>
<mapa>
<continente>
<nombre>america</nombre>
<paises>
<nombre>argentina</nombre>
<nombre>brasil</nombre>
<nombre>mexico</nombre>
<nombre>estados unidos</nombre>
</paises>
<imagen>america.gif</imagen>
<descripcion>America, segunda masa contintal aislada mas grande de la Tierra. </descripcion>
<superficie>42.00.000</superficie>
</continente>
</mapa> ''' ;
response.setContentType( "text/xml" );
PrintWriter out = response.getWriter();
//out.println(CAR_RECORDS);
out.write( CAR_RECORDS)
///// EL ERROR DEVUELTO POR EL SERVIDOR //
HTTP Status 500 - GroovyServlet Error: script: '/datos.groovy': Script processing failed.No signature of method: static response.setContentType() is applicable for argument types: (java.lang.String) values: {"text/xml"}groovy.lang.MetaClassImpl.invokeStaticMissingMethod(MetaClassImpl.java:1127)
type Status report
messageGroovyServlet Error: script: '/datos.groovy': Script processing failed.No signature of method: static response.setContentType() is applicable for argument types: (java.lang.String) values: {"text/xml"}groovy.lang.MetaClassImpl.invokeStaticMissingMethod(MetaClassImpl.java:1127)
descriptionThe server encountered an internal error (GroovyServlet Error: script: '/datos.groovy': Script processing failed.No signature of method: static response.setContentType() is applicable for argument types: (java.lang.String) values: {"text/xml"}groovy.lang.MetaClassImpl.invokeStaticMissingMethod(MetaClassImpl.java:1127)) that prevented it from fulfilling this request.
Re: Problemas al cambiar el Valor de response.setContentType()
abraham - jueves 28/02/2008Nacho,
Tambien genera error al utilizar response.contentType='text/xml'.
Lamentablemente hay poca documentacion sobre el cambio de Tipos con GroovyServlet, todos los ejemplo que he visto son sobre devolver codigo en html o solo texto.
Saludos y gracias.
//// El ERROR GENERADO AL UTILIZAR response.contentType='text/xml'
Estado HTTP 500 - GroovyServlet Error: script: '/datos.groovy': Script processing failed.No such property: contentType for class: responseorg.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:49)
type Informe de estado
mensaje GroovyServlet Error: script: '/datos.groovy': Script processing failed.No such property: contentType for class: responseorg.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:49)
descripción El servidor encontró un error interno (GroovyServlet Error: script: '/datos.groovy': Script processing failed.No such property: contentType for class: responseorg.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:49)) que hizo que no pudiera rellenar este requerimiento.
Un momento...
Re: Problemas al cambiar el Valor de response.setContentType()
Nacho - miércoles 27/02/2008Hola Abraham, prueba a hacer response.contentType='text/xml' (en lugar de invocar al setter de forma explícita). Ya me contarás si funciona, yo no lo he probado :-)
Saludos,