java - wc-api/v3 无法通过 wc-api-java 工作

标签 java woocommerce woocommerce-rest-api

  1. woocommerce 版本:3.3.3
  2. wordpress 版本 4.9.4
  3. wc-api-java 版本 1.2

我尝试通过 postman 使用 wc-api/v1 和 wc-api/v2,但它们不起作用。只有 wc-api/v3 适用于我的网站。但是当我尝试使用 java 库 wc-api-java 1.2 ( https://github.com/icoderman/wc-api-java ):

OAuthConfig config = new OAuthConfig(
        "http://URL",
        "ck_XXX",
        "cs_XXX"
);
WooCommerce wooCommerce = new WooCommerceAPI(config, ApiVersionType.V2);

// Prepare object for request
Map<String, Object> productInfo = new HashMap<String, Object>();
productInfo.put("name", "Premium Quality");
productInfo.put("type", "simple");
productInfo.put("regular_price", "21.99");
productInfo.put("description", "This field contains description info.");

//Make request and retrieve result
Map product = wooCommerce.create(EndpointBaseType.PRODUCTS.getValue(), productInfo);

System.out.println(product.get("id"));

// Get all with request parameters
Map<String, String> params = new HashMap<String, String>();
params.put("per_page","100");
params.put("offset","0");
List products = wooCommerce.getAll(EndpointBaseType.PRODUCTS.getValue(), params);

System.out.println(products.size());

遇到异常:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/client/methods/HttpRequestBase
    at com.icoderman.woocommerce.WooCommerceAPI.<init>(WooCommerceAPI.java:21)
    at Main.main(Main.java:21)
Caused by: java.lang.ClassNotFoundException: org.apache.http.client.methods.HttpRequestBase
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

哪里没有办法使用wc-api/v3?

最佳答案

问题是由于没有 http 客户端。通过使用 maven 添加 apache httpclient 依赖关系解决:

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.5</version>
</dependency>

关于java - wc-api/v3 无法通过 wc-api-java 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49051702/

相关文章:

wordpress - Woocommerce API - 来 self 自己前端的请求

c# - 根据以下标准开发桌面应用程序的语言/平台

php - 如何在 WooCommerce "My Account"页面上对自定义字段重新排序或添加优先级

java - 合并和匹配时查询给出错误 sql server

php - 将折扣百分比添加到正在销售的可变产品

wordpress - Woocommerce 单一产品税收状况胜过 WooTax 和 Tax Cloud

python - 使用 Python 获取具有特定状态的 WooCommerce 订单

wordpress - WooCommerce REST API - 获取订单的自定义字段

java - 运行自定义 Docker 镜像后出现 "Activemq not found"错误

java - 如何忽略 Eclipse 中的特定异常