簡體   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