`
lxl686
  • 浏览: 2271 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

用dwr时,为什么返回String的方法不能暴露到客户端呢?

阅读更多
返回Collection和Void的方法都能很好的暴露到客户端,为什么返回String的方法就不行了?
分享到:
评论
2 楼 lxl686 2008-04-14  
不行啊,我头开始疼了.就上面单个例子来说,能正常显示;可我的咋就不行了啊..
在PersonBusinessImpl类中定义的一个方法:去检查用户名是否已经存在
public String checkPersonUserName(String personUserName) throws Person_LogonException {
		PersonInfo pi = null;
		try {
			pi = (PersonInfo) personInfoDAO
					.findByPersonUserName(personUserName).get(0);
		} catch (IndexOutOfBoundsException ex) {
			return "no";
		}
		return "yes";
	}

在一个personRegist.jsp里:
<html:text property="personUserName"  onblur="checkPersonUserName(this.value);"/>

在js文件里:
function isHasPerson() {

	document.getElementById("noUserError").innerHTML = "检查中...";

	var userName = document.getElementsByName("personUserName");
	
	js_person.checkPersonUserName(userName[0].value, isHasPersonTwo);
}
function isHasPersonTwo(date) {
	var n = document.getElementById("noUserError");
	if (date == 'no') {
		n.innerHTML = "该用户名可用!";
	} else if(date == 'yes'){
		n.innerHTML = "用户名已存在!";
	} else{
		n.innerHTML = "";
	}
}

在dwr.xml里
<dwr>
	<allow>
		<create creator="spring" javascript="js_person"> 
			<param name="beanName" value="personBusiness"/> 
		</create>
         </allow>
</dwr>

spring里也有这个bean了.
         可它咋就不行了呢?
1 楼 rainlife 2008-04-14  
lxl686 写道
返回Collection和Void的方法都能很好的暴露到客户端,为什么返回String的方法就不行了?

怎么不行?比如说这样一个JAVA方法:
public String sayHello(String name) {
    return "Hello " + name;
}

将这个方法通过DWR暴露给WEB,在WEB的JS中,比如说为sayHello.js,则在WEB中只需要这样调用:
sayHello.sayHello(document.getElementById("inputName").value, function(returnData) { //这里的function()是回//调方法
   alert(returnData);
})


你试试看,看能不能返回。呵呵,看来我今天心情不错啊,这个都回复。

相关推荐

    DWR框架怎么返回对象

    DWR (Direct Web Remoting) 是一个开源框架,它允许Web应用程序在客户端JavaScript和服务器端Java之间进行实时的双向通信。这个框架简化了Ajax(Asynchronous JavaScript and XML)的开发,使得开发者能够像调用本地...

    springboot整合dwr实现js调用java方法

    首先,DWR是一个开源Java库,它为Web应用程序提供了一个简单的方法来创建富客户端应用程序。通过DWR,开发者可以在不涉及繁琐的AJAX请求和响应处理的情况下,直接在JavaScript中调用Java对象的方法,使得前端和后端...

    DWR的使用方法

    在使用DWR时,需要注意安全问题,比如避免暴露敏感的方法和数据。可以通过`dwr.xml`配置文件限制可访问的类和方法。同时,由于DWR是实时通信,过多的请求可能会影响服务器性能,因此需要合理设计和优化远程调用。 ...

    dwr 关于返回结果的相关配置

    - 当Java方法返回一个JavaBean(如`MyBean`)时,DWR会自动将其转换为JavaScript对象,以便在客户端进行操作。 5. **返回数组或集合** - DWR默认支持数组和集合类型的转换。例如,如果Java方法返回一个`List...

    Dwr功能案例

    例如,你可以传递一个JavaScript对象到服务器,DWR会将其转换为JSON格式并传递给Java方法。 2. **返回值处理**: 服务器端执行的方法完成后,其返回值会被DWR转化为JavaScript可读的格式,如JSON或XML,然后在...

    dwr反推简单例子

    在"**dwr反推简单例子**"中,我们将会探讨如何使用DWR进行数据的反向推送,即由服务器主动向客户端推送数据,而不仅仅是响应客户端的请求。 首先,DWR的核心概念包括三个主要部分:`Engine`、`Configuration`和`...

    Ajax学习之dwr入门详细实例

    4. `getObject(String name)`:此方法类似,但返回的是一个名为`Cat`的对象,这表明DWR可以处理多种自定义类型。 5. `getPersonList()` 和 `getPersonArray()`:这两个方法分别返回一个`Person`对象的列表和数组,...

    DWR简单测试例子

    DWR(Direct Web Remoting)是一种JavaScript库,它允许Web应用程序在客户端与服务器之间进行实时的、异步的通信,而无需使用XMLHttpRequest(Ajax)或其他插件。DWR简化了JavaScript与Java后端之间的交互,使开发者...

    dwr spring服务器主动推送示例代码

    3. **Reverse AJAX/Comet**: DWR的特色之一是其支持服务器主动推送,即服务器在接收到新数据时,可以直接将数据推送到客户端,而不是等待客户端的请求。 接下来,我们将介绍如何在Spring环境中配置和使用DWR: 1. ...

    DWR快速配置入门 DWR快速配置入门.

    在服务器端,你需要创建对应的Java类,并确保暴露给DWR的方法是public的。例如: ```java package com.example; public class UserService { public User getUser(String id) { // 实现获取用户逻辑 } } ...

    将dwr集成到spring mvc(dwr的配置是基于xml)

    `exampleService`是你要暴露给JavaScript调用的Java服务类,`exampleMethod`是你希望在客户端可用的方法。 为了使DWR能够正常工作,还需要在Web应用的`web.xml`中配置DWR的servlet。这里是一个基本的配置: ```xml...

    Spring与DWR集成

    - **创建远程接口**: 在Java中定义一个接口,声明需要暴露给客户端的方法,并使用DWR注解进行标记。 ```java @Remotable public interface MyService { String getData(); } ``` - **实现接口并配置到Spring**: ...

    dwr课件,java,反向ajax

    1. 实时更新:DWR支持实时的数据交换,使得用户在不刷新页面的情况下获取到最新的服务器数据。 2. 安全性:DWR提供了安全机制,如白名单、签名等,以防止跨站脚本攻击(XSS)和其他安全风险。 3. 自动序列化:DWR...

    dwr与spring一起使用的方法

    DWR的主要目标是简化Ajax(Asynchronous JavaScript and XML)开发,它通过在客户端和服务器之间创建透明的远程调用,使得JavaScript可以直接调用Java方法。DWR处理了诸如JSON或XML序列化、跨域安全、错误处理和缓存...

    dwr+spring集成配置

    在Java类上使用DWR的注解`@RemoteProxy`来标记希望暴露给JavaScript调用的方法。例如: ```java @Service public class MyService { @RemoteProxy(name = "myService") public String sayHello(String name) {...

    调用带JavaBean参数方法的DWR例子

    当客户端(浏览器)调用这个JavaScript接口时,DWR自动处理与服务器的通信,将数据序列化并发送到服务器,然后将服务器返回的结果反序列化并传递回JavaScript。 1. **设置DWR环境**:在项目中集成DWR,需要添加DWR...

    dwr实现分页,增加,删除

    Direct Web Remoting (DWR) 是一种在Java服务器和JavaScript之间进行实时通信的技术,它允许在Web应用程序中轻松地调用服务器端的Java方法,并将结果动态地返回到客户端。在本项目中,我们将深入探讨如何利用DWR来...

    SSH+DWR整合,有图片,有实例,有说明,非常详细

    3. **映射DWR接口:** 在DWR的配置文件(通常为dwr.xml)中,指定刚刚创建的Java类及其可暴露的方法,以便DWR知道哪些方法可以在客户端调用。 4. **配置Spring:** 如果你的项目已经使用了Spring框架,你需要将DWR的...

Global site tag (gtag.js) - Google Analytics