0 0

DWREngine 未定义20


启动Tomcat6.0时,MyEclipse6.5控制台报错如下:
2010-10-29 01:59:44 [日志信息] retrieved system configuration file: java.io.ByteArrayInputStream@1ad6a1b
2010-10-29 01:59:44 [日志信息] Creator 'pageflow' not loaded due to ClassNotFoundException. This is only an problem if you wanted to use it. Cause: Beehive/Weblogic Creator not available.
2010-10-29 01:59:44 [日志信息] Creator 'spring' not loaded due to NoClassDefFoundError. This is only an problem if you wanted to use it. Cause: org/springframework/beans/factory/BeanFactory
2010-10-29 01:59:44 [日志信息] Creator 'script' not loaded due to NoClassDefFoundError. This is only an problem if you wanted to use it. Cause: org/apache/bsf/BSFException
2010-10-29 01:59:44 [日志信息] Converter 'jdom' not loaded due to NoClassDefFoundError. This is only an problem if you wanted to use it. Cause: org/jdom/Document
2010-10-29 01:59:45 [日志信息] Found Hibernate3 class: org.hibernate.Hibernate
2010-10-29 01:59:45 [日志信息] Type 'org.jdom.Document' is not convertable due to missing converter 'jdom'. This is only an problem if you wanted to use it.
2010-10-29 01:59:45 [日志信息] Type 'org.jdom.Element' is not convertable due to missing converter 'jdom'. This is only an problem if you wanted to use it.
[align=left][/align]


在执行jsp页面时报错如下:
DWREngine 未定义


DWR版本信息:
version: 1.1.3
scc-info: $Id: dwr-version.properties,v 1.30.2.16 2006/07/11 11:10:45 joe_walker Exp $

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.6.5
Created-By: 1.5.0-b64 (Sun Microsystems Inc.)
MyEclipse 6.5 Mysql 5.0
dwr.wxm文件内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" "http://www.getahead.ltd.uk/dwr/dwr10.dtd">
<dwr>
	 <allow>
<create creator="new" javascript="CheckCate">
			<param name="class" value="com.service.CartServiceImpl" />
			<include method="isExist" />
    </create>
<convert converter="bean" match="com.struts.form.CateForm"/>
  </allow>

</dwr>


web.xml
中     <!--配置dwr控制器--> 的配置:

	  	  <servlet>
	    <!--配置dwr控制器-->	
    <servlet-name>dwr-invoker</servlet-name>
    <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
    <init-param>
      <param-name>debug</param-name>
      <param-value>true</param-value>
    </init-param>
    
    <init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/dwr.xml</param-value>
</init-param>
    
    
    <init-param>
      <param-name>scriptCompressed</param-name>
      <param-value>false</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>dwr-invoker</servlet-name>
    <url-pattern>/dwr/*</url-pattern>
  </servlet-mapping>


调用dwr的jsp页面如下:
<%@ page contentType="text/html; charset=gb2312" %>
<%@ taglib uri="/struts-bean" prefix="bean" %>
<%@ taglib uri="/struts-html" prefix="html" %>

<html>
<head>

<script type="text/javascript" src='/EShop/dwr/engin.js'></script>
<script type="text/javascript" src='/EShop/dwr/util.js'></script>
<script type="text/javascript" src='/EShop/dwr/interface/CheckCate.js'></script>

<script type="text/javascript">
function save(flag){
 var termName=document.all.cateName.value;
 alert(termName);
 CheckCate.isExist(termName,reply);
 alert("执行了!");
 function reply(data){
 if(data==1){
 alert("名称已存在");
 return false;
 }
 else{
 alert("名称可以使用");
 }
 }
}
</script>
<title><bean:message key="admin.pageTitle"/></title>
<link href="../CSS/stylesheet.css" rel="stylesheet" type="text/css">
<style type="text/css">
	<!--
	body {
		background-color: lightgrey;
	}
	-->
</style>
</head>
<body><br>
<html:javascript formName="cateForm"/>
<html:form action="/Admin/adminCate.do?method=addCate" onsubmit="return validateCateForm(this);">
  <table width="600" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr height="40">
        <td colspan="2" class="itemTitle" align="center">
        	
        </td>
      </tr>
      <tr height="30">
        <td width="160" align="right"><bean:message key="category.table.label1"/>:</td>
        <td><html:text property="cateName" size="41" styleClass="textBox"/>
        <input type="button" onClick="save('0')" value="检测"/>
        </td>
     </tr>
      <tr height="30">
        <td valign="top"  align="right"><bean:message key="category.table.label2"/>:</td>
        <td><html:textarea property="cateDesc" cols="40" rows="10" styleClass="textBox"/></td>
     </tr>
      <tr height="30">
        <td colspan="2" align="center">
			<html:reset></html:reset>
			<html:submit></html:submit>
		</td>
     </tr>
      <tr>
        <td height="30" align="center" colspan="2" class="redText">p<html:errors property="addCateStatus"/>
		</td>
      </tr>
    </table>
</html:form>
</body>
</html>

这是调用的判断商品分类是否重复的方法!
public int isExist(String name) throws Exception {
		Session session = MySessionFactory.getSession();
		Transaction tx = null;
		int status = 0;
		try {
			 String hql = "from Category where cateName='"+name+"'";
			Query query = session.createQuery(hql);
			query.setMaxResults(1);
			Category sel=(Category)query.uniqueResult();
			tx=session.beginTransaction();
			tx.commit();
			if(sel!=null)status=1;
		} catch (Exception ex) {
			if (tx != null)
				tx.rollback();
			logger.info("在执行CartServiceImpl类中的addCart方法时出错:\n");
			ex.printStackTrace();
		} finally {
			MySessionFactory.closeSession();
		}
		return status;
	}

问题补充:
jiangnan2112 写道
用到了Spring吧,改如下试试
<create creator="spring" javascript="CheckCate">  
            <param name="beanName" value="beanID(实现类BeanID)" />  
            <include method="isExist" />  
    </create>

在引用engine.js 的时候没有正确拼写。
实际上因该为engine.js 却拼成了engin.js
DWR 
2010年10月29日 01:56

3个答案 按时间排序 按投票排序

0 0

关注学习下

2010年11月15日 00:21
0 0

首先,要注意dwr自带的js包导入顺序是否Right, 正确如下:

<script src='/dwr/engine.js'></script> 

<script src='/dwr/util.js'></script>
<script src='/dwr/interface/test.js'></script>



然后,进入 dwr.jar 包, 打开 org\directwebremoting\engine.js 文件,

搜索该文件中是否存在DWREngine变量的定义。

(因为在dwr3.x版本的engine.js中已经取消了DWREngine的定义,<记得多看源码呀!>)



最后,把 DWREngine 改为 dwr.engine,试试即可知道该方法是否有效了。

2010年11月11日 11:19
0 0

用到了Spring吧,改如下试试
<create creator="spring" javascript="CheckCate">  
            <param name="beanName" value="beanID(实现类BeanID)" />  
            <include method="isExist" />  
    </create>

2010年11月04日 12:44

相关推荐

Global site tag (gtag.js) - Google Analytics