-
dwr配置了create却没有生成js20
今天试着用一下dwr,发现自己建的类不会被dwr识别从而生成js,详情如下。
新建了一个web project:HelloDWR,配置web.xml如下:<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <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>
dwr.xml如下:<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://www.getahead.ltd.uk/dwr/dwr20.dtd"> <dwr> <allow> <create creator="new" javascript="service"> <param name="class" value="hello.Service" /> </create> <create creator="new" javascript="JDate"> <param name="class" value="java.util.Date" /> </create> </allow> </dwr>
Service.java如下:package hello; public class Service { public String sayHello(String yourName) { // 可以是访问数据库的复杂代码 return "HelloWorld" + yourName; } }
访问http://localhost:8080/HelloDWR/dwr/index.html只显示JDate,而不显示service(如附件图)。
到网上搜索了下,http://www.iteye.com/problems/20118这里一样的问题,只是我用的1.6的jdk,2.0的dwr,6.0的tomcat。这位前辈在最后说是项目的问题,但没说具体什么问题,怎么解决的。
究竟是什么问题导致了javaAPI的类能被dwr识别,而我自己的类不被识别?忘各位指点迷津。2012年1月12日 17:27
目前还没有答案
相关推荐
这段代码首先引入了DWR自动生成的`TestService.js`脚本,然后调用`sayHello`方法,通过回调函数处理服务器返回的结果。 此外,DWR还提供了异步更新、批量调用、文件上传等功能。例如,使用`batch`方法可以一次执行...
在`WEB-INF`目录下创建`dwr.xml`文件,用于指定哪些JavaBean将被DWR生成相应的JavaScript库。例如: ```xml <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD DirectWebRemoting 2.0//EN" ...
- `testClass.js`是根据`dwr.xml`文件自动生成的,包含了所有可以被调用的Java方法的JavaScript封装。 - `engine.js`是DWR的核心JavaScript库,提供了与服务器端交互的功能。 - `util.js`提供了一些辅助功能,如...
4. **配置DWR映射**:在`dwr.xml`配置文件中,声明你想要暴露给JavaScript的Java类和方法。这个文件通常放在`src/main/resources`目录下。 ```xml <create creator="new" javascript="MyService"> </create>...
- 引入DWR自动生成的JavaScript接口文件、engine.js和util.js: ```html <script src='dwr/interface/testClass.js'> <script src='dwr/engine.js'> <script src='dwr/util.js'> ``` - 编写JavaScript函数...
- **Java组件的编写与发布**:Java组件必须是可实例化的具体类,遵循Java Bean规范,配置文件中`<create>`元素定义JavaScript中的访问方式,`<convert>`元素处理数据类型转换。 - **调用示例与回调函数**:展示...
5. **客户端调用**:在JSP页面中,引入DWR的核心JavaScript库和自动生成的JavaScript接口文件。核心库提供DWR的基本功能,而接口文件(如`citys.js`)包含了客户端可以调用的Java方法的JavaScript代理。 ```html ...
dwr.xml 文件是 DWR 的核心配置文件,用于定义哪些 Java 类可以被远程访问和如何将 Java 对象转换为 JavaScript 对象本文将详细讲解 dwr.xml 文件的配置和入门使用。 在 dwr.xml 文件中, `<allow>` 标签用于定义...
1. **调用没有返回值和参数的Java方法**:最简单的调用方式,只需要在`dwr.xml`中声明方法,然后在JavaScript中直接调用即可。 - **dwr.xml配置**:在`dwr.xml`中声明Java方法,指定方法的权限、返回类型等。 - ...
此外,还需要一个`service.js`文件,这个文件是由DWR自动生成的,包含了Java类的JavaScript代理。在JSP中,编写JavaScript函数来调用Java方法,并设定回调函数处理返回的结果。 - `firstDwr`函数展示了如何调用...
2. **JavaScript接口**:在客户端,DWR会自动生成对应的JavaScript接口。例如,如果服务器有`executeTask`方法,那么在JavaScript中可以直接调用`MyService.executeTask(param1, param2)`。 3. **DWR推送(Push)**...
5. **创建页面**:创建一个JSP页面(如`dwrtest.jsp`),在这个页面中,你可以使用DWR生成的JavaScript代码来调用服务器端的方法。例如: ```jsp <script type="text/javascript" src="/dwr/interface/TestDWR.js...
6. **前端JavaScript使用**:在HTML或JavaScript文件中,使用DWR生成的JavaScript接口(如UserService)进行远程调用。 通过以上配置,iBATIS可以方便地处理数据库操作,而DWR则使得Web应用程序能够提供更丰富的...
DWR会根据`dwr.xml`中的配置自动生成JavaScript接口文件,通常位于`/dwr/*`路径下。这个文件包含了客户端可以直接调用的方法。 5. **客户端JavaScript调用** 在HTML页面中引入生成的JavaScript库文件后,就可以...
一种情况是因为解析器是一个语法宽松的解析器,他不象编译器一样对语法有非常严格的要求,所有有时可能一些重要的语句没有配置而无法事先发现. <![CDATA[ import java.util.List; Check.setLotteryResults...
7. **客户端调用**:在前端JavaScript中,通过DWR生成的JavaScript库,可以直接调用后端的Java方法,如: ```javascript YourService.yourMethod(param, function(response) { // 处理返回的数据 }); ``` 这个...
具体来说,当DWR运行时,会根据配置生成一个JavaScript库,这个库包含了对服务器端JavaBean的封装,从而允许前端代码直接调用这些JavaBean的方法。 #### 三、DWR的组件 - **DWR的JavaScript引擎**:负责处理Ajax...
运行应用,DWR会生成一个`dwr.engine.js`文件,以及一个与你的Java类相对应的JavaScript文件(如`MyService.js`)。 4. **在HTML/JS中调用DWR方法**:现在,你可以在HTML页面中通过JavaScript调用DWR生成的接口来...
通常,DWR会自动生成一个`dwr-engine.js`文件,将其引入页面即可开始使用。 **SSH框架集成** SSH是Struts2、Hibernate和Spring的组合,是Java Web开发中的经典MVC框架。在DWR+SSH项目中,它们协同工作以实现更复杂...
- JavaScript调用时,DWR会自动生成对应的JavaScript接口文件(如TestClass.js),而`engine.js`和`util.js`是DWR核心库,负责执行实际的远程调用。 2. **有简单返回值的Java方法** - 配置与无返回值方法相同,但...