繁体   English   中英

将数据传递到SOAP Web服务

[英]Passing data to SOAP web service

我创建了一个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管理面板检查现有类别时,我发现没有添加任何类别。

是什么原因?

我使用错误的方式。 这是应该的。

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);
    }
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM