《果然新鲜》电商项目(18)- 搭建企业级微信公众号

Posted IT老刘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《果然新鲜》电商项目(18)- 搭建企业级微信公众号相关的知识,希望对你有一定的参考价值。

1.引言

在上一节《果然新鲜电商项目(17)- 搭建企业级微信公众号》,主要讲解如何搭建微信公众号,以及WxJava 案例的使用。

本文开始讲解如何把WxJava框架整合到我们的项目。

2.微信公众号开发原理

在上一篇博客,我们从使用了《weixin-java-mp-demo-springboot》案例来调用了测试了微信公众号,现在我们要整合到我们的项目,步骤如下:

step1:微信服务模块(guoranxinxian-shop-service-weixin)引入Maven依赖:

<dependency>
    <groupId>com.github.binarywang</groupId>
    <artifactId>weixin-java-mp</artifactId>
    <version>3.3.0</version>
</dependency>

step2:配置application.yml,直接从上一篇博客的配置文件复制过来,我是配置到Apollo分布式配置中心的:

wx:
  mp:
    configs:
      - appId: wx???95 #(一个公众号的appid)
        secret: bb42????1c3 #(公众号的appsecret)
        token: ylw666 #(接口配置里的Token值)
        #aesKey:  111(接口配置里的EncodingAESKey值)


step3:直接复制《weixin-java-mp-demo-springboot》案例的这几个目录到微信服务模块。

step4 :启动项目,接下来进行测试

3. 测试

3.1 测试接口配置信息

启动项目,微信公众号里点击提交:

2.1 发送消息测试

平台会报错,报错内容为:

Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.thoughtworks.xstream.XStream.setupDefaultSecurity(Lcom/thoughtworks/xstream/XStream;)V] with root cause


原因是微信框架引入了xstream的版本为1.4.1springCloudeureka-client也引入了xstream为了1.4.9从而版本有冲突。修改依赖的代码:

 <dependency>
 <groupId>com.github.binarywang</groupId>
     <artifactId>weixin-java-mp</artifactId>
     <version>3.3.0</version>
     <exclusions>
         <exclusion>
             <artifactId>xstream</artifactId>
             <groupId>com.thoughtworks.xstream</groupId>
         </exclusion>
     </exclusions>
 </dependency>

 <dependency>
     <groupId>org.springframework.cloud</groupId>
     <artifactId>
         spring-cloud-starter-netflix-eureka-client
     </artifactId>
     <exclusions>
         <exclusion>
             <artifactId>xstream</artifactId>
             <groupId>com.thoughtworks.xstream</groupId>
         </exclusion>
     </exclusions>
 </dependency>

 <dependency>
     <artifactId>xstream</artifactId>
     <groupId>com.thoughtworks.xstream</groupId>
     <version>1.4.10</version>
 </dependency>

再次发送消息,可以消息发送成功,有回复。

4.总结

注意:导入我的项目时,可能报错,但是却正常运行,这是由于项目使用了Lombok插件,需要先在IDEA里添加Lombok插件,具体的自己百度!

以上是关于《果然新鲜》电商项目(18)- 搭建企业级微信公众号的主要内容,如果未能解决你的问题,请参考以下文章

《果然新鲜》电商项目(19)- 公众号获取注册码功能

《果然新鲜》电商项目(11)- Docker搭建Maven私服仓库

《果然新鲜》电商项目(47)- Docker下搭建ElasticSearch集群

《果然新鲜》电商项目(20)- 项目配置信息分类(Apollo Namespace命名空间)

《果然新鲜》电商项目(21)- 会员注册功能

《果然新鲜》电商项目(22)- DTO接口细分