Read Timed Out

cancel
Showing results for 
Search instead for 
Did you mean: 
joseacc
Member II

Read Timed Out

Buenas,

Desde Share al invocar a un webscript de Alfresco, si se tarda justo mas de 90 segundos la respuesta es un error de tomcat http 500 (por ejemplo, una transformación a PDF de un fichero grande):

HTTP Status 500 - Read timed out

type Status report

message Read timed out

description The server encountered an internal error (Read timed out) that prevented it from fulfilling this request.

Es un error claro de time out y creo que debe ser algo configurable en tomcat. Pero he mirado a fondo la configuración de tomcat y no encuentro ningún parámetro adecuado de timeout.

Mencionar que el webscript continua perfectamente con su ejecución en Alfresco aunque haya dado ese error de respuesta.

Agredezco cualquiera posible solución.

Gracias
4 Replies
Highlighted
mikel_asla1
Active Member

Re: Read Timed Out

En el deployment descriptor del contexto adecuado (ubicado por defecto en JavaEE en <tomcat-home>/webapps/contexto/WEB-INF/web.xml)

<session-config>
      <session-timeout>60</session-timeout>
   </session-config>

En <tomcat-home>/conf/web.xml puedes establecer un valor para todas las aplicaciones, y especificar otra más adecuada para cada contexto dentro del descriptor propio del contexto desplegado.

Un saludo
joseacc
Member II

Re: Read Timed Out

Buenas,

Antes de nada agradecerte tu respuesta.

El parámetro que me indicas es la duración (en minutos) de la sesión del usuario y no aplica en el caso que comento (además actualmente lo tengo a 60 minutos). El problema está en las comunicaciones webscript entre la aplicación share y alfresco. Después de mucho buscar no he encontrado ninguna configuración sobre el timeout de este tipo de comunicaciones (supuestamente alrededor de 90 segundos).

Un saludo
mikel_asla1
Active Member

Re: Read Timed Out

Tienes mucha razón, me he confundido con web-scripts, que si establece una sesión http, para luego enchufar los scripts. Alfresco usa Axis para implementar WebServices, por lo que la configuración de axis es lo que estamos buscando. Yo he mirado también y no encuentro gran cosa.
Siento no haber podido ayudarte, si encuentro algo lo posteo.
Un saludo!
joseacc
Member II

Re: Read Timed Out

Creo que el engine de los webscript está basado en REST y no en Axis. En Axis se puede configurar un timeout antes de establecer la comunicación pero en los webscript aparentemente no. Aunque me extraña mucho porque sigue siendo una comunicación http, esos 90 segundos deben estar establecidos en algún sitio jejeje.

He mirado el fuente de Alfresco y de la librería commons-io (http://commons.apache.org/io/) pero no encuentra nada que me sirva.

Este tema lo he publicado en el JIRA de Alfresco, a ver si nos pueden resolver la duda. Mientras tanto seguiré investigando a ver si encuentro algo.

Una solución temporal sería lanzar el trabajo en Alfresco en background y devolver una respuesta inmediata en share, pero hay ciertas operaciones que no las puedo hacer así ya que necesito que en share le llegue la respuesta justo cuando el trabajo en Alfresco haya finalizado. Sinceramente considero esto como una gran limitación de Alfresco.