Secciones

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: 

Entrevistas con los expertos
 

Los protagonistas te cuentan de qué van los proyectos más importantes del mundo Groovy:


Un proyecto de:
ImaginaWorks
Campus Escuela de Groovy

Groovy: primeros pasos

Problemas al cambiar el Valor de response.setContentType()

abraham - miércoles 27/02/2008

Hola 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()

Nacho - miércoles 27/02/2008

Hola 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, 

Re: Problemas al cambiar el Valor de response.setContentType()

abraham - jueves 28/02/2008

Nacho,

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.

 

 

 

Responder al hilo | Volver al foro "Groovy: primeros pasos" | Volver a los foros