我创建了一个Web服务,并在localhost上的GlassFish上进行了解析。
@WebService
public class ProductCatalog {
ProductServiceImpl productService = new ProductServiceImpl();
public boolean addProductCategories(String category) {
return productService.addCategory(category);
}
public List<String> getProductCategories() {
return productService.getCategories();
}
}
我的服务类
public class ProductServiceImpl {
List<String> categories = new ArrayList<>();
public boolean addCategory(String categoryName) {
return categories.add(categoryName);
}
public List<String> getCategories() {
return categories;
}
}
通过GF管理面板我检查了两种方法。他们工作。我可以添加类别或获取所有现有类别。
之后我导入了wsdl并获得了以下类。
然后我创建了一个新项目并向其添加了导入的类。
public class DataController {
public static void main(String[] args) {
String category = "Horror";
ProductCatalog productCatalog = new ProductCatalog() {
public boolean addProductCategories(String arg0) {
return false;
}
public List<String> getProductCategories() {
return null;
}
};
productCatalog.addProductCategories(category);
ProductCatalogService productCatalogService = new ProductCatalogService();
}
}
现在我不想添加新类别,但不知道该怎么做。
此
productCatalog.addProductCategories(category);
不起作用。该应用程序运行,但通过GF管理面板检查现有类别时,我发现没有添加任何类别。
是什么原因?
答案 0 :(得分:0)
我用错了方法。这应该是这样的。
public class DataController {
public static void main(String[] args) {
String category = "Anime";
ProductCatalogService productCatalogService = new ProductCatalogService();
ProductCatalog productCatalog = productCatalogService.getProductCatalogPort();
productCatalog.addProductCategories(category);
List<String> categories = productCatalog.getProductCategories();
for(String categoryName : categories){
System.out.println(categoryName);
}
}
}