Commit 92b9a44d authored by hanson.yao's avatar hanson.yao

处理jackson-dataformat jar包问题

parent 488258e8
package com.yonde.cadpro.bean;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
......@@ -27,8 +24,6 @@ public class MBDAttribute implements Serializable {
/**
* 子属性列表
*/
@JacksonXmlElementWrapper(localName = "children")
@JacksonXmlProperty(localName = "MBDAttribute")
private List<MBDAttribute> children = new ArrayList<MBDAttribute>();
public MBDAttribute() {
......
package com.yonde.cadpro.bean;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import java.io.Serializable;
import java.util.ArrayList;
......@@ -13,8 +12,7 @@ import java.util.List;
*/
public class MBDAttributes implements Serializable {
@JacksonXmlElementWrapper(useWrapping = false)
@JacksonXmlProperty(localName = "MBDAttribute")
private List<MBDAttribute> mbdAttributes = new ArrayList<MBDAttribute>();
public List<MBDAttribute> getMbdAttributes() {
......
......@@ -1240,7 +1240,7 @@ public class ModelService {
if (mbdDataList != null) {
MBDAttributes mbdDatas = new MBDAttributes();
mbdDatas.getMbdAttributes().addAll(mbdDataList);
String xmlStr = JsonUtils.toXMLStr(mbdDatas);
String xmlStr = JsonUtils.toJsonStr(mbdDatas);
if (StringUtils.isNotBlank(xmlStr)) {
InputStream is = IOUtils.toInputStream(xmlStr, "UTF-8");
ContentUtil.addApplicationData(epm, FILE_NAME_MBDATTRIBUTES, is, "",
......@@ -2313,7 +2313,7 @@ public class ModelService {
mbdDatas.getMbdAttributes().addAll(mbdAttributes);
}
//若无MBD属性,使用空集合覆盖上一版本内容
String mbdSmlStr = JsonUtils.toXMLStr(mbdDatas);
String mbdSmlStr = JsonUtils.toJsonStr(mbdDatas);
if (StringUtils.isNotBlank(mbdSmlStr)) {
InputStream is = null;
try {
......
......@@ -51,7 +51,7 @@ public class BaseLineUtil {
if (ObjectsUtil.isNull(baselineType)) {
baselineType = "wt.vc.baseline.ManagedBaseline";
} else {
baselineType = CommonUtil.buildTypeKey(Global.PMD_DOMAIN, baselineType, ManagedBaseline.class);
baselineType = CommonUtil.buildTypeKey(Global.PDM_DOMAIN, baselineType, ManagedBaseline.class);
}
TypeDefinitionReference typeDef = TypedUtility.getTypeDefinitionReference(baselineType);
if(typeDef == null) throw new WTException("没有此类型:"+baselineType);
......
......@@ -2,20 +2,18 @@ package com.yonde.common;
import com.fasterxml.jackson.annotation.JsonFilter;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.*;
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.fasterxml.jackson.databind.ser.FilterProvider;
import com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter;
import com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider;
//import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.springframework.core.annotation.AnnotationUtils;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
......@@ -27,14 +25,10 @@ public class JsonUtils {
/** @deprecated */
@Deprecated
private static ObjectMapper objectMapper = null;
private static XmlMapper xmlMapper = null;
public JsonUtils() {
}
static {
//xmlMapper = initXmlMapper();
}
private static ObjectMapper getObjectMapper() {
if (ObjectsUtil.isNull(objectMapper)) {
......@@ -47,66 +41,6 @@ public class JsonUtils {
return objectMapper;
}
private static XmlMapper initXmlMapper() {
XmlMapper newXmlMapper = new XmlMapper();
//newXmlMapper.findAndRegisterModules();
//newXmlMapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
newXmlMapper.enable(SerializationFeature.INDENT_OUTPUT);
newXmlMapper.disable(DeserializationFeature.FAIL_ON_IGNORED_PROPERTIES);
newXmlMapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);
//newXmlMapper.setDefaultUseWrapper(false);
newXmlMapper.configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true);
return newXmlMapper;
}
/**
* 对象转为XML字符串
* @param value
* @return
* @throws JsonProcessingException
*/
public static String toXMLStr(Object value) throws JsonProcessingException {
return xmlMapper.writeValueAsString(value);
}
/**
* 对象转xml写入流
* @param value
* @return
* @throws IOException
*/
public static void writeXmlStr(OutputStream os, Object value) throws IOException {
xmlMapper.writeValue(os, value);
}
/**
* xml字符串转为对象
*/
public static <T> T fromXml(String xmlString, Class<T> clazz) {
if (StringUtils.isEmpty(xmlString)) {
return null;
}
try {
return xmlMapper.readValue(xmlString, clazz);
} catch (IOException e) {
log.error("parse xml string error:" + xmlString, e);
return null;
}
}
public static <T> T fromXml(InputStream xmlInput, Class<T> clazz) {
if (xmlInput == null) {
return null;
}
try {
return xmlMapper.readValue(xmlInput, clazz);
} catch (IOException e) {
log.error("parse xml input error", e);
return null;
}
}
public static String toJsonStr(Object value) {
return toJsonStr(value, getObjectMapper());
}
......
package com.yonde.doc.util;
import com.yonde.basedata.service.BaseSearchService;
import com.yonde.basedata.vo.DxDocumentFolderVO;
import com.yonde.common.*;
import com.yonde.contants.Global;
import com.yonde.doc.vo.DxDocumentVO;
......@@ -11,7 +9,6 @@ import wt.doc.DepartmentList;
import wt.doc.DocumentType;
import wt.doc.WTDocument;
import wt.fc.PersistenceHelper;
import wt.iba.value.IBAHolder;
import wt.inf.container.WTContainer;
import wt.inf.container.WTContainerRef;
import wt.lifecycle.LifeCycleHelper;
......@@ -19,8 +16,6 @@ import wt.lifecycle.LifeCycleServerHelper;
import wt.lifecycle.LifeCycleTemplate;
import wt.lifecycle.State;
import wt.log4j.LogR;
import wt.method.RemoteMethodServer;
import wt.part.WTPart;
import wt.type.ClientTypedUtility;
import wt.type.TypeDefinitionReference;
import wt.util.WTException;
......@@ -28,10 +23,7 @@ import wt.util.WTPropertyVetoException;
import java.lang.reflect.InvocationTargetException;
import java.rmi.RemoteException;
import java.text.ParseException;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class DxDocUtil {
private static Logger log = LogR.getLogger(DxDocUtil.class.getName());
......@@ -79,7 +71,7 @@ public class DxDocUtil {
//TypeIdentifier objType = CoreMetaUtility.getTypeIdentifier(fullType);
//WTDocument doc = (WTDocument) CoreMetaUtility.newInstance(objType);
WTDocument doc = WTDocument.newWTDocument();
String typeName = CommonUtil.buildTypeKey(Global.PMD_DOMAIN, fullType, WTDocument.class);
String typeName = CommonUtil.buildTypeKey(Global.PDM_DOMAIN, fullType, WTDocument.class);
TypeDefinitionReference tdr = ClientTypedUtility.getTypeDefinitionReference(typeName);
if (ObjectsUtil.nonNull(tdr)) {
doc.setTypeDefinitionReference(tdr);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment