`
liuyf
  • 浏览: 34100 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

Sakai中用wicket处理文件上传

阅读更多
不出意外,会失败。
表面上,fileUpload.getFileUpoad()返回null值的FileUpload
问题的更底层的爆发点在org.apache.coyote.http11.filters.IdentityInputFilter.java
的doRead中remaining值为空,表示tomcat的connetor中的数据没有了.
于是重点关注IdentityInputFilter.java中remaining变量的变化,对其设置内存修改断点,发现在上传的时候,确实是有值的,但随后又被改变,反看堆栈,发现是sakai做了处理。
在api,org.sakaiproject.util.RequestFilter.java中556行,有req = handleFileUpload(req, resp, tempFiles);即sakai已经读取了上传的文件,所以上层当然读不了。
比较暴力的解决方法,注释该行就可以了。



还有如下方法:
向sakai的filter传递参数,像下面一样写filter
<!-- Sakai request filter -->
<filter>
<filter-name>sakai.request</filter-name>
<filter-class>org.sakaiproject.util.RequestFilter</filter-class>

<!--
         Don't use Sakai's built-in upload handling.
         Samigo has its own upload filter below.
    -->
    <init-param>
      <param-name>upload.enabled</param-name>
      <param-value>false</param-value>
    </init-param>
</filter>
0
1
分享到:
评论

相关推荐

    Sakai-src基于Sakai的源码文件

    这个压缩包文件"sakai-src-2.9.0"包含了Sakai 2.9.0版本的全部源代码,为我们提供了深入洞察Sakai架构和工作原理的窗口。 首先,我们需要了解Sakai的核心设计理念。Sakai基于服务导向架构(Service-Oriented ...

    Sakai部署步骤 (1)1

    通过检查`/iscas/sakai/tomcat7/logs/catalina.out`或`/iscas/sakai/tomcat7/logs/sakai.log`文件,可以监控Sakai的运行状态和可能的错误信息。 在整个部署过程中,确保每个步骤都按照正确的顺序和配置进行,特别...

    sakai样式修改手册

    如果你需要每次请求都重新计算模板,可以修改Sakai的配置文件关闭缓存。具体操作可参考链接:http://liuyf.iteye.com/blog/645759,这通常涉及修改与Velocity相关的配置项。 5. **JSF配置**:Sakai可能还使用Java...

    Sakai 2.6 配置

    本文将深入探讨Sakai 2.6的配置过程,重点关注核心配置文件`sakai.properties`。这个文件是Sakai系统的核心配置,它定义了系统的行为、连接到外部服务(如数据库)的方式以及各种服务的参数。 首先,我们来看`sakai...

    Sakai 框架与内核 附件下载

    《Sakai框架与内核详解》 Sakai是一个开源的教育软件平台,它为全球的...通过阅读和分析提供的压缩包文件,我们可以更全面地了解Sakai的设计理念、技术实现和未来发展,从而更好地利用这个平台来提升教学质量和效率。

    sakai doc 2.9.3

    6. **异常和错误类**:描述可能在使用 Sakai API 时遇到的异常和错误,以及如何处理它们。 7. **工具和辅助类**:可能包括一些辅助类,这些类不直接构成核心功能,但提供了一些有用的工具方法。 通过深入阅读和...

    Sakai的开发文档

    - 在`%RepositoryRoot%`目录下创建`build.properties`文件,并指定Sakai源码位置和Tomcat安装路径。 - 使用`mvn sakai:install`命令进行编译,需要注意替换路径中的反斜杠(`\`)为正斜杠(`/`)。 - **问题解决**:...

    sakai的安装配置

    ### Sakai 的安装与配置详解 #### 一、概述 Sakai 是一款开源的教育协作平台,广泛应用于教育机构中。本文档旨在详细介绍 Sakai 2.9.0 版本的安装与配置过程,并解决在安装过程中可能遇到的一些常见问题。 #### ...

    sakai 用户注册业务流程分析

    - **具体处理**:`ToolHandler.java` 的 `doGet()` 方法中获取页面上应显示的工具信息,然后调用 `doTool()` 方法处理具体的工具逻辑。 ##### 3. 业务逻辑 - **表单提交**:用户提交表单后,表单数据被传递到 `...

    sakai charon分析文档

    Charon对Sakai URL的处理方式也进行了一定程度上的改革,所有的URL都统一以`/portal`开始。例如,请求整个站点的显示时,URL为`/portal/site`。这种方式不仅简化了URL结构,还提高了系统的可读性和可维护性。 #### ...

    使用Sakai构建开放式教学平台(完整版)

    ### 使用Sakai构建开放式教学平台的深度解析 #### Sakai概述 Sakai,源自于2004年由美国的顶尖学府如印第安纳大学、密歇根大学、斯坦福大学、麻省理工学院及伯克利大学联合发起的开放源代码课程管理系统(CMS)开发...

    SAKAI 架构 的前世今生

    **SAKAI架构的前世今生** SAKAI,作为一个开源的教育技术平台,自2003年成立以来,已经在全球范围内被广泛应用于教学、学习和协作。它的设计初衷是为了提供一个灵活、可扩展且易用的环境,促进学术交流与合作。本文...

    sakai-portal-api-2.9.0-b05.zip

    综上所述,这个压缩包包含了与Sakai门户API相关的代码,特别是利用JAXB技术处理XSL-FO的组件。开发者可以利用这些资源来定制Sakai平台的展示层,通过JAXB将XSL-FO文档转换为适用于打印或电子阅读的格式。同时,由于...

    sakai安装文档,很有用的

    sakai安装文档,很有用的安装Sakai App Builder

    sakai webservices 使用方式

    - **编辑JWS文件**: 不建议直接在Tomcat的`webapps/sakai-axis`目录下编辑Sakai的Webservices文件(JWS),因为这可能导致新添加的方法无法被识别的情况发生。正确的做法是首先修改位于Sakai源码中Webservices子项目的...

    E-learning sakai 用户手册

    Sakai 是由高校、商业组织和个人开发者组成的社区,致力于开发一个通用的协作学习环境(Collaboration and Learning Environment,CLE)。Sakai是基于Educational Community License(开源软件许可证的一种)的教育软件...

    Sakai部署步骤1

    - 跟踪Sakai的日志文件,例如在`/iscas/sakai/tomcat7/logs/catalina.out`,可以检查Sakai的启动状态、错误信息和其他诊断数据。 完成以上步骤后,你应该已经成功地部署了Sakai,并准备好了开始使用或进一步配置。...

    sakai-介绍

    文件名列表中的"2.jpg"和"1.jpg"可能是用于说明Sakai界面截图或使用流程的图片。这些图片可能展示了Sakai的用户界面布局,如何创建课程,添加资源,参与讨论,或者进行其他操作,帮助新用户更好地理解和使用Sakai。 ...

    给sakai换首页

    由于提供的文件列表中只有一个名为“给sakai换首页.doc”的文档,这很可能是博主详细记录了更改Sakai首页的步骤和指南。打开这个文档,你可以找到具体的操作细节和可能遇到的问题及解决方案。如果需要更具体的帮助,...

Global site tag (gtag.js) - Google Analytics