如题 请朋友帮忙 很着急 找了资料 都是说<signatures>可以解决 但是都不起作用。 谢谢!!
ps: 项目是 DWR直接调用Spring的业务方法!
public class Book extends BaseEntity
{
private Integer id;
private String name;
private String publish;
private String author;
private Double price;
private String memo;
public Book(){super();}
public Book(String name, String publish, String author, Double price)
{
super();
this.name = name;
this.publish = publish;
this.author = author;
this.price = price;
}
//omit seter/getter
}
DWR.xml
<dwr>
<allow>
<create creator="spring" javascript="bookService">
<param name="beanName" value="bookService" />
</create>
<create creator="new" javascript="book">
<param name="class" value="com.nyber.lab.domain.Book" />
</create>
<convert converter="bean" match="com.nyber.lab.domain.Book"
javascript="Book" />
</allow>
<signatures>
<![CDATA[
import java.util.List;
import com.nyber.lab.service.BookServiceImpl;
import com.nyber.lab.domain.Book;
BookServiceImpl.updateBooks(List<Book>);
]]>
</signatures>
</dwr>
BookServiceImpl.java
public class BookServiceImpl implements BookService
{
// 以上是其他方法
public void updateBooks(List<Book> books) throws BusinessException
{
System.out.println(books.get(0));
// 无法将 books 遍历出来
}
}
js:
function addBooks()
{
var books = new Array();
var book = new Book();
book.id=10;
// 省略了设置值
var book2 = new Book();
book2.id=20;
// 省略了设置值
books[0] = book;
books[1] = book2;
bookService.updateBooks(books);
}
server得到的结果如下:
{memo:reference:c0-e2, price:reference:c0-e3, name:reference:c0-e4, id:reference:c0-e5, author:reference:c0-e6, publish:reference:c0-e7}
相关推荐
当服务器完成处理并返回`List<User>`时,DWR会自动调用`userdata`函数,并将Java列表转换为JavaScript数组传递给它。在`userdata`函数内部,我们使用`for`循环遍历数组,通过索引访问每个`User`对象的`userName`属性...
例如,服务器端有一个方法`getString()`返回一个字符串,DWR会自动将这个字符串传递给JavaScript回调函数。这在显示消息、错误信息或者简单的数据交换中非常有用。 2. **返回对象**: DWR支持将Java对象转换为JSON...
1、 导入dwr.jar包 2、 在web.xml中配置dwr,如下: <!-- 配置DWR --> <servlet> <servlet-name>dwr-invoker</servlet-name> <servlet-class> org.... <url-pattern>/dwr/*</url-pattern>
例如,Java方法返回一个`List<JavaBean>`,DWR会将其转换为JavaScript数组,每个元素都是对应的JavaScript对象。你可以在JavaScript中使用`for`循环遍历并访问这些对象。 此外,DWR提供了错误处理、安全控制、缓存...
《DWR:前台调用后台Java类的"Hello, World!"实践详解》 Direct Web Remoting(DWR)是一个开源的Java库,它允许Web应用程序在浏览器和服务器之间进行实时的、安全的通信,实现JavaScript与Java代码的交互。DWR简化...
List<MyObject> dataList = new ArrayList<>(); // 假设填充数据... return dataList; } ``` 这里的`MyObject`是你要返回的数据对象,可以根据实际需求进行定义。 3. **生成DWR的JavaScript接口**:在完成上述...
<br>功能:使用dwr完成在客户端无刷新的分页排序等<br><br>工具:MyEclipse 6.0,数据库SQLSERVER 2000<br><br>数据在SQL文件夹下,Jobs是pubs数据库自带的<br><br>主要的三个页面,emp是详细的,另两个是简单的复制修改,...
4. `string` - 字符串转换 5. `date` - 日期转换 6. `array` - 数组转换 7. `map` - 映射转换 8. `collection` - 集合转换 在使用自定义的转换器或创建器时,需要在`<init>`部分声明它们,并赋予唯一的`id`属性,...
在“dwr入门例子 返回list”这个主题中,我们将深入探讨如何使用DWR从服务器返回列表数据到客户端。列表通常包含多个项目,如数据库查询结果,这些数据可以在网页上以表格或其他形式展示给用户。DWR提供了方便的方法...
- **Service 类**: 这是一个普通的 Java 类,其中包含了一个名为 `sayHello` 的方法,该方法接收一个字符串参数并返回一个字符串。 ##### 4. 创建 dwr.xml 文件 创建 dwr.xml 文件来定义哪些 Java 类可以被客户端...
`Dealer`类的实例可以通过`bean`转换器自动映射到JavaScript对象,而`Monitor`类的方法如`setDealers`和`setDealersMap`允许接收`List<Dealer>`和`Map<String, Dealer>`类型的参数。 接下来,让我们看看具体的Java...
这种类型的Map特别常见,因为键通常是字符串,值可以是任何类型。在DWR中,你可以直接在JavaScript中通过键来访问和修改这些值,增强了前后端数据交换的灵活性。 6. **DWR包和导入**: 在使用DWR时,你需要在项目...
目录:<br>第一章:dwr入门<br>第二章:web.xml配置<br>第三章:dwr.xml配置<br>第四章:整合<br>第五章:dwr中的javaScript简介<br>第六章:engine.js功能<br>第七章:util.js功能<br>第八章:dwr进阶<br>第九章:...
INF/src下<br>Winxp sp3+JDK1.6+Tomcat 6.0下运行通过<br>因文件长度限制,未加入相关类库,请自行加入,需要的类库有:<br>dom.jar<br>dwr-2.0.rc2.jar<br>jaxen-full.jar<br>jaxp-api.jar<br>jdbc2_0-stdext.jar...
<artifactId>dwr</artifactId> <version>3.x.x</version> <!-- 使用你想要的版本 --> </dependency> ``` 接下来,我们需要配置DWR。在Spring MVC中,通常使用XML配置文件(例如:`applicationContext-dwr.xml`)...
<script type='text/javascript' src="<%=request.getContextPath()%>/dwr/interface/personAction.js"></script> <script type='text/javascript' src='<%=request.getContextPath()%>/dwr/engine.js'></script> ...
`<allow>`标签是配置DWR允许操作的关键部分,它定义了哪些Java类可以被JavaScript调用,以及如何转换Java对象。例如: ```xml <allow> <create creator="..." javascript="..."/> <convert converter="..." match...
List<User> userList = new ArrayList<>(); // 假设这里是从数据库获取数据 // userList.add(new User(...)); return userList; } } ``` 在前端,我们需要创建一个AJAX请求来调用DWR暴露的`getUserList()`方法...
通过上述示例可以看出,在DWR中处理List、Set和Map等集合类型的关键在于正确配置DWR XML文件,并编写合适的客户端JavaScript代码来调用服务端的方法及处理返回的数据。这种方式大大简化了前后端之间的数据交换过程,...
spring-hibernate-dwr做的AJAX操作CRUD实例<br>环境:myeclipse6.0+jdk1.6<br>所需lib列表,请自行加入<br>mysql-connector-java-3.1.7-bin.jar<br>antlr-2.7.6rc1.jar<br>asm-attrs.jar<br>cglib-2.1.3.jar<br>...