mirror of
				https://gitee.com/binary/weixin-java-tools.git
				synced 2025-11-01 00:46:54 +08:00 
			
		
		
		
	🆕 补全消息输出等相关类的 jackson 注解(主要是 @JacksonXmlCData)
This commit is contained in:
		| @@ -1,5 +1,8 @@ | ||||
| package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -13,14 +16,17 @@ import java.util.List; | ||||
|  * @author plw on 2021/9/7 10:39 AM. | ||||
|  * @version 1.0 | ||||
|  */ | ||||
| @XStreamAlias("ArticleUrlResult") | ||||
| @Data | ||||
| @XStreamAlias("ArticleUrlResult") | ||||
| @JacksonXmlRootElement(localName = "ArticleUrlResult") | ||||
| public class ArticleUrlResult implements Serializable { | ||||
|  | ||||
|   @XStreamAlias("ResultList") | ||||
|   @JacksonXmlProperty(localName = "ResultList") | ||||
|   private List<Item> resultList; | ||||
|  | ||||
|   @XStreamAlias("Count") | ||||
|   @JacksonXmlProperty(localName = "Count") | ||||
|   private Long count; | ||||
|  | ||||
|   @Override | ||||
| @@ -28,15 +34,19 @@ public class ArticleUrlResult implements Serializable { | ||||
|     return WxMpGsonBuilder.create().toJson(this); | ||||
|   } | ||||
|  | ||||
|   @XStreamAlias("item") | ||||
|   @Data | ||||
|   @XStreamAlias("item") | ||||
|   @JacksonXmlRootElement(localName = "item") | ||||
|   public static class Item implements Serializable { | ||||
|  | ||||
|     @XStreamAlias("ArticleIdx") | ||||
|     @JacksonXmlProperty(localName = "ArticleIdx") | ||||
|     private String articleIdx; | ||||
|  | ||||
|     @XStreamAlias("ArticleUrl") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "ArticleUrl") | ||||
|     @JacksonXmlCData | ||||
|     private String articleUrl; | ||||
|  | ||||
|     @Override | ||||
|   | ||||
| @@ -2,6 +2,9 @@ package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import java.io.Serializable; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -15,8 +18,9 @@ import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder; | ||||
|  * | ||||
|  * @author Binary Wang | ||||
|  */ | ||||
| @XStreamAlias("HardWare") | ||||
| @Data | ||||
| @XStreamAlias("HardWare") | ||||
| @JacksonXmlRootElement(localName = "HardWare") | ||||
| public class HardWare implements Serializable { | ||||
|   private static final long serialVersionUID = -1295785297354896461L; | ||||
|  | ||||
| @@ -25,12 +29,17 @@ public class HardWare implements Serializable { | ||||
|    */ | ||||
|   @XStreamAlias("MessageView") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "MessageView") | ||||
|   @JacksonXmlCData | ||||
|   private String messageView; | ||||
|  | ||||
|   /** | ||||
|    * 消息点击动作,目前支持ranklist(点击跳转排行榜) | ||||
|    */ | ||||
|   @XStreamAlias("MessageAction") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "MessageAction") | ||||
|   @JacksonXmlCData | ||||
|   private String messageAction; | ||||
|  | ||||
|   @Override | ||||
|   | ||||
| @@ -2,6 +2,9 @@ package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import java.io.Serializable; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -15,8 +18,9 @@ import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder; | ||||
|  * | ||||
|  * @author Binary Wang | ||||
|  */ | ||||
| @XStreamAlias("ScanCodeInfo") | ||||
| @Data | ||||
| @XStreamAlias("ScanCodeInfo") | ||||
| @JacksonXmlRootElement(localName = "ScanCodeInfo") | ||||
| public class ScanCodeInfo implements Serializable { | ||||
|   private static final long serialVersionUID = 4745181270645050122L; | ||||
|  | ||||
| @@ -25,6 +29,8 @@ public class ScanCodeInfo implements Serializable { | ||||
|    */ | ||||
|   @XStreamAlias("ScanType") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "ScanType") | ||||
|   @JacksonXmlCData | ||||
|   private String scanType; | ||||
|  | ||||
|   /** | ||||
| @@ -32,6 +38,8 @@ public class ScanCodeInfo implements Serializable { | ||||
|    */ | ||||
|   @XStreamAlias("ScanResult") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "ScanResult") | ||||
|   @JacksonXmlCData | ||||
|   private String scanResult; | ||||
|  | ||||
|   @Override | ||||
|   | ||||
| @@ -2,6 +2,9 @@ package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import java.io.Serializable; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -15,29 +18,40 @@ import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder; | ||||
|  * | ||||
|  * @author Binary Wang | ||||
|  */ | ||||
| @XStreamAlias("SendLocationInfo") | ||||
| @Data | ||||
| @XStreamAlias("SendLocationInfo") | ||||
| @JacksonXmlRootElement(localName = "SendLocationInfo") | ||||
| public class SendLocationInfo implements Serializable { | ||||
|   private static final long serialVersionUID = 6633214140499161130L; | ||||
|  | ||||
|   @XStreamAlias("Location_X") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Location_X") | ||||
|   @JacksonXmlCData | ||||
|   private String locationX; | ||||
|  | ||||
|   @XStreamAlias("Location_Y") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Location_Y") | ||||
|   @JacksonXmlCData | ||||
|   private String locationY; | ||||
|  | ||||
|   @XStreamAlias("Scale") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Scale") | ||||
|   @JacksonXmlCData | ||||
|   private String scale; | ||||
|  | ||||
|   @XStreamAlias("Label") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Label") | ||||
|   @JacksonXmlCData | ||||
|   private String label; | ||||
|  | ||||
|   @XStreamAlias("Poiname") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Poiname") | ||||
|   @JacksonXmlCData | ||||
|   private String poiName; | ||||
|  | ||||
|   @Override | ||||
|   | ||||
| @@ -4,6 +4,9 @@ import java.io.Serializable; | ||||
| import java.util.ArrayList; | ||||
| import java.util.List; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -17,15 +20,18 @@ import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder; | ||||
|  * | ||||
|  * @author Binary Wang | ||||
|  */ | ||||
| @XStreamAlias("SendPicsInfo") | ||||
| @Data | ||||
| @XStreamAlias("SendPicsInfo") | ||||
| @JacksonXmlRootElement(localName = "SendPicsInfo") | ||||
| public class SendPicsInfo implements Serializable { | ||||
|   private static final long serialVersionUID = -4572837013294199227L; | ||||
|  | ||||
|   @XStreamAlias("PicList") | ||||
|   @JacksonXmlProperty(localName = "PicList") | ||||
|   protected final List<Item> picList = new ArrayList<>(); | ||||
|  | ||||
|   @XStreamAlias("Count") | ||||
|   @JacksonXmlProperty(localName = "Count") | ||||
|   private Long count; | ||||
|  | ||||
|   @Override | ||||
| @@ -33,13 +39,16 @@ public class SendPicsInfo implements Serializable { | ||||
|     return WxMpGsonBuilder.create().toJson(this); | ||||
|   } | ||||
|  | ||||
|   @XStreamAlias("item") | ||||
|   @Data | ||||
|   @XStreamAlias("item") | ||||
|   @JacksonXmlRootElement(localName = "item") | ||||
|   public static class Item implements Serializable { | ||||
|     private static final long serialVersionUID = 7706235740094081194L; | ||||
|  | ||||
|     @XStreamAlias("PicMd5Sum") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "PicMd5Sum") | ||||
|     @JacksonXmlCData | ||||
|     private String picMd5Sum; | ||||
|  | ||||
|     @Override | ||||
|   | ||||
| @@ -1,5 +1,6 @@ | ||||
| package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| @@ -49,13 +50,15 @@ public class WxMpXmlMessage implements Serializable { | ||||
|   /////////////////////// | ||||
|  | ||||
|   @XStreamAlias("ToUserName") | ||||
|   @JacksonXmlProperty(localName = "ToUserName") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "ToUserName") | ||||
|   @JacksonXmlCData | ||||
|   private String toUser; | ||||
|  | ||||
|   @XStreamAlias("FromUserName") | ||||
|   @JacksonXmlProperty(localName = "FromUserName") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "FromUserName") | ||||
|   @JacksonXmlCData | ||||
|   private String fromUser; | ||||
|  | ||||
|   @XStreamAlias("CreateTime") | ||||
| @@ -63,13 +66,15 @@ public class WxMpXmlMessage implements Serializable { | ||||
|   private Long createTime; | ||||
|  | ||||
|   @XStreamAlias("MsgType") | ||||
|   @JacksonXmlProperty(localName = "MsgType") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "MsgType") | ||||
|   @JacksonXmlCData | ||||
|   private String msgType; | ||||
|  | ||||
|   @XStreamAlias("Content") | ||||
|   @JacksonXmlProperty(localName = "Content") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Content") | ||||
|   @JacksonXmlCData | ||||
|   private String content; | ||||
|  | ||||
|   @XStreamAlias("MenuId") | ||||
| @@ -81,23 +86,27 @@ public class WxMpXmlMessage implements Serializable { | ||||
|   private Long msgId; | ||||
|  | ||||
|   @XStreamAlias("PicUrl") | ||||
|   @JacksonXmlProperty(localName = "PicUrl") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "PicUrl") | ||||
|   @JacksonXmlCData | ||||
|   private String picUrl; | ||||
|  | ||||
|   @XStreamAlias("MediaId") | ||||
|   @JacksonXmlProperty(localName = "MediaId") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "MediaId") | ||||
|   @JacksonXmlCData | ||||
|   private String mediaId; | ||||
|  | ||||
|   @XStreamAlias("Format") | ||||
|   @JacksonXmlProperty(localName = "Format") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Format") | ||||
|   @JacksonXmlCData | ||||
|   private String format; | ||||
|  | ||||
|   @XStreamAlias("ThumbMediaId") | ||||
|   @JacksonXmlProperty(localName = "ThumbMediaId") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "ThumbMediaId") | ||||
|   @JacksonXmlCData | ||||
|   private String thumbMediaId; | ||||
|  | ||||
|   @XStreamAlias("Location_X") | ||||
| @@ -113,38 +122,45 @@ public class WxMpXmlMessage implements Serializable { | ||||
|   private Double scale; | ||||
|  | ||||
|   @XStreamAlias("Label") | ||||
|   @JacksonXmlProperty(localName = "Label") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Label") | ||||
|   @JacksonXmlCData | ||||
|   private String label; | ||||
|  | ||||
|   @XStreamAlias("Title") | ||||
|   @JacksonXmlProperty(localName = "Title") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Title") | ||||
|   @JacksonXmlCData | ||||
|   private String title; | ||||
|  | ||||
|   @XStreamAlias("Description") | ||||
|   @JacksonXmlProperty(localName = "Description") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Description") | ||||
|   @JacksonXmlCData | ||||
|   private String description; | ||||
|  | ||||
|   @XStreamAlias("Url") | ||||
|   @JacksonXmlProperty(localName = "Url") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Url") | ||||
|   @JacksonXmlCData | ||||
|   private String url; | ||||
|  | ||||
|   @XStreamAlias("Event") | ||||
|   @JacksonXmlProperty(localName = "Event") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Event") | ||||
|   @JacksonXmlCData | ||||
|   private String event; | ||||
|  | ||||
|   @XStreamAlias("EventKey") | ||||
|   @JacksonXmlProperty(localName = "EventKey") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "EventKey") | ||||
|   @JacksonXmlCData | ||||
|   private String eventKey; | ||||
|  | ||||
|   @XStreamAlias("Ticket") | ||||
|   @JacksonXmlProperty(localName = "Ticket") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Ticket") | ||||
|   @JacksonXmlCData | ||||
|   private String ticket; | ||||
|  | ||||
|   @XStreamAlias("Latitude") | ||||
| @@ -165,8 +181,9 @@ public class WxMpXmlMessage implements Serializable { | ||||
|   private String recognition; | ||||
|  | ||||
|   @XStreamAlias("UnionId") | ||||
|   @JacksonXmlProperty(localName = "UnionId") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "UnionId") | ||||
|   @JacksonXmlCData | ||||
|   private String unionId; | ||||
|  | ||||
|   /////////////////////////////////////// | ||||
| @@ -176,8 +193,9 @@ public class WxMpXmlMessage implements Serializable { | ||||
|    * 群发的结果. | ||||
|    */ | ||||
|   @XStreamAlias("Status") | ||||
|   @JacksonXmlProperty(localName = "Status") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Status") | ||||
|   @JacksonXmlCData | ||||
|   private String status; | ||||
|   /** | ||||
|    * group_id下粉丝数;或者openid_list中的粉丝数. | ||||
| @@ -232,13 +250,15 @@ public class WxMpXmlMessage implements Serializable { | ||||
|   /////////////////////////////////////// | ||||
|  | ||||
|   @XStreamAlias("CardId") | ||||
|   @JacksonXmlProperty(localName = "CardId") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "CardId") | ||||
|   @JacksonXmlCData | ||||
|   private String cardId; | ||||
|  | ||||
|   @XStreamAlias("FriendUserName") | ||||
|   @JacksonXmlProperty(localName = "FriendUserName") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "FriendUserName") | ||||
|   @JacksonXmlCData | ||||
|   private String friendUserName; | ||||
|  | ||||
|   /** | ||||
| @@ -249,13 +269,15 @@ public class WxMpXmlMessage implements Serializable { | ||||
|   private Integer isGiveByFriend; | ||||
|  | ||||
|   @XStreamAlias("UserCardCode") | ||||
|   @JacksonXmlProperty(localName = "UserCardCode") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "UserCardCode") | ||||
|   @JacksonXmlCData | ||||
|   private String userCardCode; | ||||
|  | ||||
|   @XStreamAlias("OldUserCardCode") | ||||
|   @JacksonXmlProperty(localName = "OldUserCardCode") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "OldUserCardCode") | ||||
|   @JacksonXmlCData | ||||
|   private String oldUserCardCode; | ||||
|  | ||||
|   @XStreamAlias("OuterId") | ||||
| @@ -570,8 +592,9 @@ public class WxMpXmlMessage implements Serializable { | ||||
|    * 订单ID. | ||||
|    */ | ||||
|   @XStreamAlias("OrderId") | ||||
|   @JacksonXmlProperty(localName = "OrderId") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "OrderId") | ||||
|   @JacksonXmlCData | ||||
|   private String orderId; | ||||
|  | ||||
|   /** | ||||
| @@ -585,16 +608,18 @@ public class WxMpXmlMessage implements Serializable { | ||||
|    * 商品ID. | ||||
|    */ | ||||
|   @XStreamAlias("ProductId") | ||||
|   @JacksonXmlProperty(localName = "ProductId") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "ProductId") | ||||
|   @JacksonXmlCData | ||||
|   private String productId; | ||||
|  | ||||
|   /** | ||||
|    * 商品SKU信息. | ||||
|    */ | ||||
|   @XStreamAlias("SkuInfo") | ||||
|   @JacksonXmlProperty(localName = "SkuInfo") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "SkuInfo") | ||||
|   @JacksonXmlCData | ||||
|   private String skuInfo; | ||||
|  | ||||
|   /////////////////////////////////////// | ||||
| @@ -605,8 +630,9 @@ public class WxMpXmlMessage implements Serializable { | ||||
|    * 目前为"公众账号原始ID" | ||||
|    */ | ||||
|   @XStreamAlias("DeviceType") | ||||
|   @JacksonXmlProperty(localName = "DeviceType") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "DeviceType") | ||||
|   @JacksonXmlCData | ||||
|   private String deviceType; | ||||
|  | ||||
|   /** | ||||
| @@ -614,8 +640,9 @@ public class WxMpXmlMessage implements Serializable { | ||||
|    * 第三方提供 | ||||
|    */ | ||||
|   @XStreamAlias("DeviceID") | ||||
|   @JacksonXmlProperty(localName = "DeviceID") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "DeviceID") | ||||
|   @JacksonXmlCData | ||||
|   private String deviceId; | ||||
|  | ||||
|   /** | ||||
| @@ -623,16 +650,18 @@ public class WxMpXmlMessage implements Serializable { | ||||
|    * 因此响应中该字段第三方需要原封不变的带回 | ||||
|    */ | ||||
|   @XStreamAlias("SessionID") | ||||
|   @JacksonXmlProperty(localName = "SessionID") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "SessionID") | ||||
|   @JacksonXmlCData | ||||
|   private String sessionId; | ||||
|  | ||||
|   /** | ||||
|    * 微信用户账号的OpenID. | ||||
|    */ | ||||
|   @XStreamAlias("OpenID") | ||||
|   @JacksonXmlProperty(localName = "OpenID") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "OpenID") | ||||
|   @JacksonXmlCData | ||||
|   private String openId; | ||||
|  | ||||
|   @XStreamAlias("HardWare") | ||||
|   | ||||
| @@ -1,36 +1,48 @@ | ||||
| package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
|  | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
| import me.chanjar.weixin.common.api.WxConsts; | ||||
| import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; | ||||
|  | ||||
| @XStreamAlias("xml") | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| public class WxMpXmlOutDeviceMessage extends WxMpXmlOutMessage { | ||||
|   private static final long serialVersionUID = -3093843149649157587L; | ||||
|  | ||||
|   @XStreamAlias("DeviceType") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   private String deviceType; | ||||
|  | ||||
|   @XStreamAlias("DeviceID") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   private String deviceId; | ||||
|  | ||||
|   @XStreamAlias("Content") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   private String content; | ||||
|  | ||||
|   @XStreamAlias("SessionID") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   private String sessionId; | ||||
|  | ||||
|   public WxMpXmlOutDeviceMessage() { | ||||
|     this.msgType = WxConsts.XmlMsgType.DEVICE_TEXT; | ||||
|   } | ||||
| } | ||||
| package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
|  | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
| import me.chanjar.weixin.common.api.WxConsts; | ||||
| import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; | ||||
|  | ||||
| @Data | ||||
| @XStreamAlias("xml") | ||||
| @JacksonXmlRootElement(localName = "xml") | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| public class WxMpXmlOutDeviceMessage extends WxMpXmlOutMessage { | ||||
|   private static final long serialVersionUID = -3093843149649157587L; | ||||
|  | ||||
|   @XStreamAlias("DeviceType") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "DeviceType") | ||||
|   @JacksonXmlCData | ||||
|   private String deviceType; | ||||
|  | ||||
|   @XStreamAlias("DeviceID") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "DeviceID") | ||||
|   @JacksonXmlCData | ||||
|   private String deviceId; | ||||
|  | ||||
|   @XStreamAlias("Content") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Content") | ||||
|   @JacksonXmlCData | ||||
|   private String content; | ||||
|  | ||||
|   @XStreamAlias("SessionID") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "SessionID") | ||||
|   @JacksonXmlCData | ||||
|   private String sessionId; | ||||
|  | ||||
|   public WxMpXmlOutDeviceMessage() { | ||||
|     this.msgType = WxConsts.XmlMsgType.DEVICE_TEXT; | ||||
|   } | ||||
| } | ||||
|   | ||||
| @@ -1,5 +1,8 @@ | ||||
| package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -7,14 +10,17 @@ import lombok.EqualsAndHashCode; | ||||
| import me.chanjar.weixin.common.api.WxConsts; | ||||
| import me.chanjar.weixin.common.util.xml.XStreamMediaIdConverter; | ||||
|  | ||||
| @XStreamAlias("xml") | ||||
| @Data | ||||
| @XStreamAlias("xml") | ||||
| @JacksonXmlRootElement(localName = "xml") | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| public class WxMpXmlOutImageMessage extends WxMpXmlOutMessage { | ||||
|   private static final long serialVersionUID = -2684778597067990723L; | ||||
|  | ||||
|   @XStreamAlias("Image") | ||||
|   @XStreamConverter(value = XStreamMediaIdConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Image") | ||||
|   @JacksonXmlCData | ||||
|   private String mediaId; | ||||
|  | ||||
|   public WxMpXmlOutImageMessage() { | ||||
|   | ||||
| @@ -1,5 +1,8 @@ | ||||
| package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -9,42 +12,55 @@ import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; | ||||
|  | ||||
| import java.io.Serializable; | ||||
|  | ||||
| @XStreamAlias("xml") | ||||
| @Data | ||||
| @XStreamAlias("xml") | ||||
| @JacksonXmlRootElement(localName = "xml") | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| public class WxMpXmlOutMusicMessage extends WxMpXmlOutMessage { | ||||
|   private static final long serialVersionUID = -4159937804975448945L; | ||||
|  | ||||
|   @XStreamAlias("Music") | ||||
|   @JacksonXmlProperty(localName = "Music") | ||||
|   protected final Music music = new Music(); | ||||
|  | ||||
|   public WxMpXmlOutMusicMessage() { | ||||
|     this.msgType = WxConsts.XmlMsgType.MUSIC; | ||||
|   } | ||||
|  | ||||
|   @XStreamAlias("Music") | ||||
|   @Data | ||||
|   @XStreamAlias("Music") | ||||
|   @JacksonXmlRootElement(localName = "Music") | ||||
|   public static class Music implements Serializable { | ||||
|     private static final long serialVersionUID = -5492592401691895334L; | ||||
|  | ||||
|     @XStreamAlias("Title") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "Title") | ||||
|     @JacksonXmlCData | ||||
|     private String title; | ||||
|  | ||||
|     @XStreamAlias("Description") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "Description") | ||||
|     @JacksonXmlCData | ||||
|     private String description; | ||||
|  | ||||
|     @XStreamAlias("ThumbMediaId") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "ThumbMediaId") | ||||
|     @JacksonXmlCData | ||||
|     private String thumbMediaId; | ||||
|  | ||||
|     @XStreamAlias("MusicUrl") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "MusicUrl") | ||||
|     @JacksonXmlCData | ||||
|     private String musicUrl; | ||||
|  | ||||
|     @XStreamAlias("HQMusicUrl") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "HQMusicUrl") | ||||
|     @JacksonXmlCData | ||||
|     private String hqMusicUrl; | ||||
|   } | ||||
|  | ||||
|   | ||||
| @@ -4,6 +4,9 @@ import java.io.Serializable; | ||||
| import java.util.ArrayList; | ||||
| import java.util.List; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -15,8 +18,9 @@ import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; | ||||
|  * 被动回复的图文消息xml. | ||||
|  * @author chanjarster | ||||
|  */ | ||||
| @XStreamAlias("xml") | ||||
| @Data | ||||
| @XStreamAlias("xml") | ||||
| @JacksonXmlRootElement(localName = "xml") | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| public class WxMpXmlOutNewsMessage extends WxMpXmlOutMessage { | ||||
|   private static final long serialVersionUID = -4604402850905714772L; | ||||
| @@ -26,12 +30,14 @@ public class WxMpXmlOutNewsMessage extends WxMpXmlOutMessage { | ||||
|    * 注意,如果图文数超过限制,则将只发限制内的条数 | ||||
|    */ | ||||
|   @XStreamAlias("Articles") | ||||
|   @JacksonXmlProperty(localName = "Articles") | ||||
|   protected final List<Item> articles = new ArrayList<>(); | ||||
|   /** | ||||
|    * 图文消息个数. | ||||
|    * 当用户发送文本、图片、视频、图文、地理位置这五种消息时,开发者只能回复1条图文消息;其余场景最多可回复8条图文消息 | ||||
|    */ | ||||
|   @XStreamAlias("ArticleCount") | ||||
|   @JacksonXmlProperty(localName = "ArticleCount") | ||||
|   protected int articleCount; | ||||
|  | ||||
|   public WxMpXmlOutNewsMessage() { | ||||
| @@ -43,8 +49,9 @@ public class WxMpXmlOutNewsMessage extends WxMpXmlOutMessage { | ||||
|     this.articleCount = this.articles.size(); | ||||
|   } | ||||
|  | ||||
|   @XStreamAlias("item") | ||||
|   @Data | ||||
|   @XStreamAlias("item") | ||||
|   @JacksonXmlRootElement(localName = "item") | ||||
|   public static class Item implements Serializable { | ||||
|     private static final long serialVersionUID = -4971456355028904754L; | ||||
|  | ||||
| @@ -53,6 +60,8 @@ public class WxMpXmlOutNewsMessage extends WxMpXmlOutMessage { | ||||
|      */ | ||||
|     @XStreamAlias("Title") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "Title") | ||||
|     @JacksonXmlCData | ||||
|     private String title; | ||||
|  | ||||
|     /** | ||||
| @@ -60,6 +69,8 @@ public class WxMpXmlOutNewsMessage extends WxMpXmlOutMessage { | ||||
|      */ | ||||
|     @XStreamAlias("Description") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "Description") | ||||
|     @JacksonXmlCData | ||||
|     private String description; | ||||
|  | ||||
|     /** | ||||
| @@ -68,6 +79,8 @@ public class WxMpXmlOutNewsMessage extends WxMpXmlOutMessage { | ||||
|      */ | ||||
|     @XStreamAlias("PicUrl") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "PicUrl") | ||||
|     @JacksonXmlCData | ||||
|     private String picUrl; | ||||
|  | ||||
|     /** | ||||
| @@ -75,6 +88,8 @@ public class WxMpXmlOutNewsMessage extends WxMpXmlOutMessage { | ||||
|      */ | ||||
|     @XStreamAlias("Url") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "Url") | ||||
|     @JacksonXmlCData | ||||
|     private String url; | ||||
|  | ||||
|   } | ||||
|   | ||||
| @@ -1,5 +1,8 @@ | ||||
| package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -7,14 +10,17 @@ import lombok.EqualsAndHashCode; | ||||
| import me.chanjar.weixin.common.api.WxConsts; | ||||
| import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; | ||||
|  | ||||
| @XStreamAlias("xml") | ||||
| @Data | ||||
| @XStreamAlias("xml") | ||||
| @JacksonXmlRootElement(localName = "xml") | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| public class WxMpXmlOutTextMessage extends WxMpXmlOutMessage { | ||||
|   private static final long serialVersionUID = -3972786455288763361L; | ||||
|  | ||||
|   @XStreamAlias("Content") | ||||
|   @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Content") | ||||
|   @JacksonXmlCData | ||||
|   private String content; | ||||
|  | ||||
|   public WxMpXmlOutTextMessage() { | ||||
|   | ||||
| @@ -1,5 +1,8 @@ | ||||
| package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -9,26 +12,31 @@ import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; | ||||
|  | ||||
| import java.io.Serializable; | ||||
|  | ||||
| @XStreamAlias("xml") | ||||
| @Data | ||||
| @XStreamAlias("xml") | ||||
| @JacksonXmlRootElement(localName = "xml") | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| public class WxMpXmlOutTransferKefuMessage extends WxMpXmlOutMessage { | ||||
|   private static final long serialVersionUID = 1850903037285841322L; | ||||
|  | ||||
|   @XStreamAlias("TransInfo") | ||||
|   @JacksonXmlProperty(localName = "TransInfo") | ||||
|   protected TransInfo transInfo; | ||||
|  | ||||
|   public WxMpXmlOutTransferKefuMessage() { | ||||
|     this.msgType = WxConsts.KefuMsgType.TRANSFER_CUSTOMER_SERVICE; | ||||
|   } | ||||
|  | ||||
|   @XStreamAlias("TransInfo") | ||||
|   @Data | ||||
|   @XStreamAlias("TransInfo") | ||||
|   @JacksonXmlRootElement(localName = "TransInfo") | ||||
|   public static class TransInfo implements Serializable { | ||||
|     private static final long serialVersionUID = -6317885617135706056L; | ||||
|  | ||||
|     @XStreamAlias("KfAccount") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "KfAccount") | ||||
|     @JacksonXmlCData | ||||
|     private String kfAccount; | ||||
|  | ||||
|   } | ||||
|   | ||||
| @@ -1,5 +1,8 @@ | ||||
| package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -9,34 +12,43 @@ import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; | ||||
|  | ||||
| import java.io.Serializable; | ||||
|  | ||||
| @XStreamAlias("xml") | ||||
| @Data | ||||
| @XStreamAlias("xml") | ||||
| @JacksonXmlRootElement(localName = "xml") | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| public class WxMpXmlOutVideoMessage extends WxMpXmlOutMessage { | ||||
|   private static final long serialVersionUID = 1745902309380113978L; | ||||
|  | ||||
|   @XStreamAlias("Video") | ||||
|   @JacksonXmlProperty(localName = "Video") | ||||
|   protected final Video video = new Video(); | ||||
|  | ||||
|   public WxMpXmlOutVideoMessage() { | ||||
|     this.msgType = WxConsts.XmlMsgType.VIDEO; | ||||
|   } | ||||
|  | ||||
|   @XStreamAlias("Video") | ||||
|   @Data | ||||
|   @XStreamAlias("Video") | ||||
|   @JacksonXmlRootElement(localName = "Video") | ||||
|   public static class Video implements Serializable { | ||||
|     private static final long serialVersionUID = -6445448977569651183L; | ||||
|  | ||||
|     @XStreamAlias("MediaId") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "MediaId") | ||||
|     @JacksonXmlCData | ||||
|     private String mediaId; | ||||
|  | ||||
|     @XStreamAlias("Title") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "Title") | ||||
|     @JacksonXmlCData | ||||
|     private String title; | ||||
|  | ||||
|     @XStreamAlias("Description") | ||||
|     @XStreamConverter(value = XStreamCDataConverter.class) | ||||
|     @JacksonXmlProperty(localName = "Description") | ||||
|     @JacksonXmlCData | ||||
|     private String description; | ||||
|  | ||||
|   } | ||||
|   | ||||
| @@ -1,5 +1,8 @@ | ||||
| package me.chanjar.weixin.mp.bean.message; | ||||
|  | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlCData; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; | ||||
| import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | ||||
| import lombok.Data; | ||||
| @@ -7,14 +10,17 @@ import lombok.EqualsAndHashCode; | ||||
| import me.chanjar.weixin.common.api.WxConsts; | ||||
| import me.chanjar.weixin.common.util.xml.XStreamMediaIdConverter; | ||||
|  | ||||
| @XStreamAlias("xml") | ||||
| @Data | ||||
| @XStreamAlias("xml") | ||||
| @JacksonXmlRootElement(localName = "xml") | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| public class WxMpXmlOutVoiceMessage extends WxMpXmlOutMessage { | ||||
|   private static final long serialVersionUID = 240367390249860551L; | ||||
|  | ||||
|   @XStreamAlias("Voice") | ||||
|   @XStreamConverter(value = XStreamMediaIdConverter.class) | ||||
|   @JacksonXmlProperty(localName = "Voice") | ||||
|   @JacksonXmlCData | ||||
|   private String mediaId; | ||||
|  | ||||
|   public WxMpXmlOutVoiceMessage() { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Scruel Tao
					Scruel Tao