go4it

just do it

ejb3的web service

改造原来的ejb3项目为web service

1.修改会话bean如下:

package com.persia.ejb;

import javax.ejb.Stateless;
import javax.jws.WebMethod;
import javax.jws.WebService;

@Stateless
@WebService
public class UserManagerBean implements UserManager {

	@WebMethod
	public void addUser(User user) {
		// TODO Auto-generated method stub
       System.out.println("User[username="+user.getUsername()+"]已经成功保存");
       user.setId(10);
	}

	@WebMethod
	public String sayHello(String msg) {
		// TODO Auto-generated method stub
		return "hello web service "+msg;
	}

}

要求无状态

2.去除user实体bean的序列化

3.JBOSS启动报错

在启动时报了一个错误:
java.lang.LinkageError: JAXB 2.0 API is being loaded from the bootstrap classloader, but this RI (from jar:file://build/web/WEB-INF/lib/jaxb-impl.jar!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class) needs 2.1 API. Use the endorsed directory mechanism to place jaxb-api.jar in the bootstrap classloader. (See http://java.sun.com/j2se/1.5.0/docs/guide/standards/)
解决方法:找一个jaxb-api.jar的包(比如从netbeans目录下搜索一下),复制到jboss-5.0.0.CR1\lib\endorsed目录下去,就能正常启动了。

wsdl文件在D:\DevelopTool\jboss-4.2.2.GA\server\default\data\wsdl\UserWS.jar

可以测试访问http://localhost:8080/UserWS/UserManagerBean?wsdl开是否成功

 

编写web services客户端

1.创建java 项目

2.创建web service client

org.codehaus.xfire.XFireRuntimeException: Could not invoke service 。。。。Server returned error code = 404 for URI

是jboss服务器没有启动

posted on 2008-12-30 18:28  cxccbv  阅读(1014)  评论(1)    收藏  举报

导航