2013-12-10 1 views
1

0 из моих запросов GET занимает 5 минут, чтобы выполнить на сервере, К этому моменту пользовательский интерфейс дает мне запрос тайм-аут, как я могу переопределить это.Время запроса Tomcat

PS: Я использую tomcat + Ext.js.
Я сделаю это действие асинхронным позже, это немедленный запрос.

Большое спасибо

+0

Я изменил время ожидания соединения в server.xml, но это, похоже, не помогает. – Mok

+0

Извинения Я не могу сказать вам, как переопределить тайм-аут (немедленная помощь), и я делаю несколько предположений о том, что вы делаете; но хотел бы предложить вам провести модульное тестирование на ресурсе, который вы GETing. избегайте тестирования через tomcat, пока вы не сделаете это действие асинхронным. посмотрите на http://www.vogella.com/articles/JUnit/article.html Удачи – Kickaha

+0

Теперь это происходит почти через 5 минут, любая идея, почему на этот раз. – Mok

ответ

1

Вы используете запрос Ajax для получения данных? Если это так, вы можете переопределить период таймаута 30 секунд по умолчанию. Ext.Ajax.timeout = yourValueHere; Дополнительная информация об этом доступна в sencha docs.

+0

Извините, забыл упомянуть, я тоже это сделал. Это не помогло мне. Спасибо, хотя. – Mok

+0

@ user35690 Вы используете JsonP случайно? Если это так, для переопределения существует другое свойство. – weeksdev

+1

какой браузер вы используете? Если вы используете IE, возможно, вам стоит знать: http://stackoverflow.com/questions/13804266/extjs-ajax-request-timeout-has-no-affect-with-internet-explorer. Я поставил путь, который я делаю это в ответ. –

1

Это не ваш сервер, из-за которого ваш AjaxRequest (по умолчанию - 3 минуты в зависимости от браузера). Override конфигурации тайм-аута вашего запроса:

По желанию (так что вы можете настроить только те запросы, которые вы думаете, что они собираются занять больше времени):

Если ваш запрос из магазина:

Ext.define("RCV2.store.ReporteConcentradoStore", { 
    extend: "Ext.data.Store", 
    model: "RCV2.model.RegistroReporteConcentrado", 
    proxy: { 
     timeout: 900000, // <<<<<----- this is the important part 
     type: "ajax", 
     url: "../obtenerReporteConcentradoV2Servlet", 
     reader: { 
      type: "json", 
      root: "registros" 
     } 
    }, 
    autoLoad: false}); 

или в момент вызова метода загрузки:

store.load({ 
    timeout:900000, // <<<<<----- this is the important part 
    params: { 
    "desde":desde, 
    "hasta": hasta 
    } 

Если вы делаете независимые AjaxReques t:

Ext.Ajax.request(
      { 
       url: '../someServletOrWhatever', 
       method: 'POST', 
       timeout: 30000  // <<<<<----- this is the important part 
      } 
Смежные вопросы