Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java DWR:未定义DWR_Java_Html_Tomcat_Web Applications_Dwr - Fatal编程技术网

Java DWR:未定义DWR

Java DWR:未定义DWR,java,html,tomcat,web-applications,dwr,Java,Html,Tomcat,Web Applications,Dwr,我是DWR的新手。根据中的教程(http://directwebremoting.org/dwr-demo/simple/text.html),我将dwr脚本放在html文件中。但当我运行应用程序时,它会显示以下消息 ReferenceError: dwr is not defined [Break On This Error] var name = dwr.util.getValue("demoName"); 我的HTML文件是: <html> <head&g

我是DWR的新手。根据中的教程(http://directwebremoting.org/dwr-demo/simple/text.html),我将dwr脚本放在html文件中。但当我运行应用程序时,它会显示以下消息

ReferenceError: dwr is not defined
[Break On This Error]       
var name = dwr.util.getValue("demoName");
我的HTML文件是:

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<script type='text/javascript' src='/dwr/engine.js'>    
</script>
<script type='text/javascript' src='/dwr/util.js'>

</script>
<title>Hello</title>
<script type="text/javascript">
    function update() {
        var name = dwr.util.getValue("demoName");
        Demo.sayHello(name, function(data) {
            dwr.util.setValue("demoReply", data);
        });
    }
</script>
</head>

<body>
    <p>
        Name: <input type="text" id="demoName" /> <input value="Send"
            type="button" onclick="update()" /> <br /> Reply: <span
            id="demoReply"></span>
    </p>
</body>
</html>

请确保在web.xml中添加dwr servlet映射

<servlet>
        <servlet-name>dwr-invoker</servlet-name>
        <display-name>DWR Servlet</display-name>
        <description>Direct Web Remoter Servlet</description>
        <servlet-class>
            org.directwebremoting.servlet.DwrServlet
        </servlet-class>

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

dwr调用程序
DWR Servlet
直接Web远程服务器Servlet
org.directwebremoting.servlet.DwrServlet
dwr调用程序
/dwr/*
并将其添加到html文件中

<script type='text/javascript' src='/dwr/demo.js'>    
</script>

错误告诉您变量
dwr
在JavaScript上下文中不存在

看起来您没有正确设置DWR。您对上一个答案的评论证实了这一点: . 如果找不到engine.js,那么您就走不了多远了

您是否按照此处列出的所有步骤设置您的环境,以便可以调用DWR?:

在web.xml中实现DWR.xml、相应的java类和DWR servlet映射后,运行localhost:8080/DWR\u tomcat/DWR/。然后它将显示DWR已知的类。然后单击我们的类名,它将显示类中声明的方法,并生成要添加到html文件中的java脚本标记。

如何生成demo.js以及在何处放置它。web.xml中没有问题。我放置了您提到的代码,但没有任何更改。它将自动生成,只需在我提供的html页面中提供引用,但不起作用。显示消息“NetworkError:404未找到-”NetworkError:404未找到-”demo.js“NetworkError:404未找到-”ttp://localhost:8080/dwr/util.jsNo 这不是我问的问题,您需要在html的head标记中添加。请参阅此“是”,我在中添加了脚本标记,没有更改。当你在我的qn上看的时候,我跟随了同一个网站。
<servlet>
        <servlet-name>dwr-invoker</servlet-name>
        <display-name>DWR Servlet</display-name>
        <description>Direct Web Remoter Servlet</description>
        <servlet-class>
            org.directwebremoting.servlet.DwrServlet
        </servlet-class>

</servlet>
<servlet-mapping>
        <servlet-name>dwr-invoker</servlet-name>
        <url-pattern>/dwr/*</url-pattern>
    </servlet-mapping>
<script type='text/javascript' src='/dwr/demo.js'>    
</script>