我现在正在尝试在我的网页中添加进度条。 由于我使用strut 1,所以我采用了以下站点中建议的方法:
http://kencochrane.blogspot.com/2006/03/ajax-struts-file-upload-progress-meter.html
我还访问了dwr官方网站以检查最新版本,并稍稍更新代码。
我已将我需要的文件复制到我的项目中并更新了所需的文件(包括web.xml和struts-config.xml),
然而,当我运行我的网站时,我从firebug得到了这个错误:
dwr.engine._getObject不是函数
以前有人遇到过这种情况吗? 我可以做些什么来解决这个问题? 我怀疑它与我的struts-config.xml和web.xml有某种关联,所以下面是我的代码:
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>Upload</display-name>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>/execute/*</url-pattern>
</servlet-mapping>
<servlet>
<display-name>DWR Servlet</display-name>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
</web-app>
的struts-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans>
<form-bean name="UploadForm" type="com.struts.UploaderForm"/>
</form-beans>
<action-mappings>
<action path="/Upload"
type="com.struts.UploadAction"
name="UploadForm"
scope="request"
input="/Upload.jsp">
</action>
</action-mappings>
<controller multipartClass="com.upload.ExtendedMultiPartRequestHandler" />
<message-resources parameter="com/struts/Resource"/>
</struts-config>
非常感谢!
答案 0 :(得分:0)
您是否在HTML中包含了所需的engine.js文件?来自the docs:
engine.js对DWR至关重要,因为它用来编组来自的DWR 动态生成的界面JavaScript函数,所以需要它 无论在哪里使用DWR。
所有engine.js函数都有dwr.engine前缀。
engine.js文件
所有DWR页面都需要以下脚本元素才能导入主DWR 发动机。
<script type='text/javascript' src='/[YOUR-WEB-APP]/dwr/engine.js'> </script>