DWR配置详解:文件上传与dwr.xml构造

4星 · 超过85%的资源 需积分: 10 4 下载量 28 浏览量 更新于2024-09-15 收藏 119KB PDF 举报
DWR (Direct Web Remoting) 是一种用于简化Web应用程序与服务器之间的通信的技术,特别适用于Java开发环境。文件上传功能是DWR常见的一种应用场景,而配置文件dwr.xml则是实现这种功能的关键组件。 首先,dwr.xml配置文件的创建至关重要。它必须包含DWR DOCTYPE声明,表明文件遵循的是DWR规范版本1.0,如以下所示: ```xml <!DOCTYPE dwr PUBLIC "-//GetAheadLimited//DTD DirectWebRemoting 1.0//EN" "http://www.getahead.ltd.uk/dwr/dwr1.0.dtd"> ``` 配置文件的主体结构定义了哪些Java类或数据类型可以在客户端JavaScript中被创建(create)和转换(convert)。`<allow>`标签下的`create`元素允许指定一个类的实例化,通过`createcreator`属性指定实例化方式(如Spring或new),`javascript`属性指定与之交互的JavaScript函数名,`beanName`属性则引用Spring配置文件中的Bean ID,同时列出`includemethod`,即在JavaScript中使用的相应方法。 例如,如果你有一个名为User的Java类,你需要这样配置: ```xml <create creator="springornew" javascript="getUser" scope="session"> <param name="beanName" value="userBean"/> <includemethod method="methodName"/> </create> ``` 转换器部分,`<convert>`标签定义了如何将Java对象转换为JavaScript可用的形式。DWR默认会将`void`类型转换为JavaScript中的`null`,但你可能需要针对`java.lang.Void`进行额外配置。其他常见的转换包括基本类型、对象实例、日期类型、数组和集合等。比如,将一个List转换为JavaScript的Array: ```xml <convert converter="array" match="java.util.List"/> ``` 值得注意的是,尽管DWR提供了一套默认的转换规则,但如果你有自定义的类或者需要特定处理的转换需求,可能需要在`<allow>`部分添加对应的`<convert>`配置,以确保数据在客户端和服务器之间顺畅地传输。 总结来说,dwr.xml配置文件对于DWR文件上传功能的实现起着核心作用,它决定了哪些Java类可以被远程调用,以及如何进行数据类型转换。理解并正确配置这个文件是确保Web应用能够有效利用DWR进行文件上传及其他操作的关键。