java - Portlet 规范 - 处理异步 Multipart 请求

标签 java spring-mvc liferay portlet jsr286

有人可以告诉我,处理多部分http请求的正确方法是什么,因为它们的异步性质不应该是ActionRequest?

例如,来自 Flash uploader 的 Ajax Multipart 请求。它们并不意味着是操作请求,因为操作阶段之后是渲染阶段,对吗?因为如果是 html 形式会很方便。

像 Spring 这样的一些框架正在使用 ResourceRequests 来处理常见的 Ajax 请求,但没有提到它处理多部分请求(在 JSR 286 中)。

剩下的就是渲染阶段,它可以用于此目的,但似乎不太正确。在 spring-portlet-mvc 中,在某些情况下实际上无法做到这一点,因为渲染阶段预计渲染 View ,而不是异步处理请求。

在Spring框架中,存在这些我不知道如何处理的问题

SPR-7662

SPR-7910

我的最后一点是,异步请求应该由 servlet 处理,而不是指向门户 servlet 来成为 portlet 请求,这非常烦人,并且会导致大量额外的工作。或者,就像在 Spring-portlet-mvc 中一样,使用 ResourceRequests 作为解决方法。

最佳答案

嗯,我已经解释了这个问题here ,一般而言。

在 Liferay 门户中,您还必须在操作请求中指定 windowState="exclusive"参数。

<portlet:actionURL var="actionURL" windowState="<%=LiferayWindowState.EXCLUSIVE.toString()%>" />

这会导致响应不会被渲染响应时需要的一些 html 片段包装,这些片段不会返回原始数据,而是会渲染一些 View (JSP)。

关于java - Portlet 规范 - 处理异步 Multipart 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4804616/

相关文章:

java - 为什么 tomcat 服务器在 eclipse 中无法正常启动?

Spring重定向在POST后保留参数

spring - 如何忽略特定 http 动词(GET、POST、PUT)的 swagger 资源属性

java - 想要将 a -z 更改为 b-z

java - 将 proguard 应用于 Java 库项目

java - 哪个线程正在使用文件

java - 在 liferay 主题中使用 java 类?

liferay - liferay-ui :search-container? 中的动态列

javascript - 使用 JSP 在 AlloyUI 数据表中填充数据的优雅方式

java - Spring - 基于枚举的动态工厂