2016-07-02 32 views
0

我的问题是当我在表单中发布csv文件时,我的进程操作正在执行但在完成执行之前(需要逐行检查并执行一些操作)开始执行新的执行。解析actionURL中的CSV内容重复两次Liferay 7

我检查了Chrome控制台,似乎是当超过30秒导航器重新加载自己并开始新操作时。

任何想法如何增加超时或其他解决方案?

<aui:form name="importQuestions" action="<%=importQuestionsURL%>" method="post" role="form"> 
    <aui:fieldset> 
     <aui:field-wrapper label="editorquestions.importQuestions.csv" helpMessage="editorquestions.importQuestions.csv.help" > 
       <aui:input inlineLabel="left" inlineField="true" name="fileName" label="" id="fileName" type="file" value="" > 
        <aui:validator name="acceptFiles">'csv'</aui:validator> 
       </aui:input> 
     </aui:field-wrapper> 
    </aui:fieldset> 
    <aui:button-row> 
     <aui:button type="submit" cssClass="btn btn-primary"></aui:button> 
     <aui:button name="close" value="close" type="button" onClick="<%=backToSearchQuestionURL%>"> </aui:button> 
    </aui:button-row> 
</aui:form> 

在我的逻辑是循环...大约550线。

回答

0

可以提高服务器的portal-ext.properties的javascript.single.page.application.timeout

# 
# Set the timeout in milliseconds before SPA navigation times out and falls 
# back to standard navigation. 
# 
javascript.single.page.application.timeout=60000 

但你应该只把这个当作你的开发环境中的解决方法。

对于长时间运行的后台任务,您应该考虑Liferay的BackgroundTask框架。参见:

https://web.liferay.com/de/web/daniel.kocsis/blog/-/blogs/background-task-a-k-a-the-secret-weapon-behind-the-new-asynchronous-staging