一、创建web项目【hello】并编写接口代码
package cn.com.songjy.xfire.services;
import cn.com.songjy.xfire.User;
/**
* 在定义接口方法时,建议将参数封装到一个对象中(哪怕是只有一个参数),
* 则在发布时显示的wsdl中参数的名称与接口定义的参数名称就会相同,便于阅读
*
*/
public interface IHelloWord {
public String hello(String name);
public String hello(User user);
}
二、编写实现类
package cn.com.songjy.xfire.services.impl;
import java.util.Date;
import cn.com.songjy.xfire.User;
import cn.com.songjy.xfire.services.IHelloWord;
public class HelloWord implements IHelloWord {
public String hello(String name) {
StringBuffer str = new StringBuffer();
str.append("你好,");
str.append(name);
str.append(",");
str.append("现在的时间是:");
str.append(new Date());
return str.toString();
}
public String hello(User user) {
StringBuffer str = new StringBuffer();
str.append("你好,");
str.append(user.getName());
str.append(",");
str.append("现在的时间是:");
str.append(new Date());
return str.toString();
}
}
三、在java代码根目录中编写文件META-INF\xfire\services.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<name>HelloWordService</name>
<namespace>http://www.songjy.com.cn/</namespace>
<serviceClass>cn.com.songjy.xfire.services.IHelloWord</serviceClass>
<implementationClass>cn.com.songjy.xfire.services.impl.HelloWord</implementationClass>
</service>
</beans>
四、在web.xml文件中添加如下代码
<servlet>
<servlet-name>XFireServlet</servlet-name>
<servlet-class>
org.codehaus.xfire.transport.http.XFireConfigurableServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>XFireServlet</servlet-name>
<url-pattern>/services/*</url-pattern><!-- services可以自定义 -->
</servlet-mapping>
五、发布项目并测试
在浏览器中输入如下地址即可看到效果:
http://127.0.0.1:8080/hello/services/HelloWordService?wsdl