【发布时间】:2013-07-18 09:40:35
【问题描述】:
我正在 Windows Werver 2012 上运行的 Glassfish 上构建一个带有 java 客户端和 java web 服务的 web 服务。
这是我的@WebService 类:
import java.util.ArrayList;
import java.util.List;
import javax.jws.WebService;
@WebService
public class ProductCatalog {
public List<String> getProductCategories(){
List<String> categories = new ArrayList<>();
categories.add("Books");
categories.add("Music");
categories.add("Movies");
return categories;
}
}
在客户端创建存根方法,我使用java中的wsimport转换来生成来自WS发出的WSDL xml所需的java源文件.
我注意到的是,如果我在列表中添加一个 cetgory:
//...code
categories.add("Books");
categories.add("Music");
categories.add("Movies");
categories.add("Pens");
//...code
我从客户端获取更新后的数组列表:Book,Music,Movie + "Pens"
- 但如果我向 che 类添加新方法,则该方法对 客户端,怎么来的?
- 是因为我需要再次对 WSDL 文件运行 WSIMPORT 并且 重新编译客户端?
- 如果上述情况属实,有没有办法避免 WSIMPORT 每次发生变化时生成类/源文件 服务器端/网络服务代码?
感谢路德
【问题讨论】:
标签: java web-services wsdl glassfish wsimport