有了这个Jaxb Xml定义,我尝试通过添加@xmlpath(“.”)
来移除映射元素包装器,但在解压缩过程中会导致异常
@XmlRootElement
public abstract class ViewElement{
@XmlJavaTypeAdapter(value=EventAdapter.class)
public Map<Event, String> getEvents() {
}
private transient Class entityType;
public Class getEntityType() {
return entityType;
}
}
EventAdapter是
public class EventAdapter extends XmlAdapter<EventAdapter.AdaptedMap, Map<Event, String>> {
public static class AdaptedMap {
@XmlVariableNode("key")
List<AdaptedEntry> entries = new ArrayList<AdaptedEntry>();
}
public static class AdaptedEntry {
@XmlTransient
public String key;
@XmlValue
public String value;
}
.....
}
我的输出是
<element>
<events>
<onCellEdit>do some thing<onCellEdit>
</events>
<entityType>com.agitech.erp.model.erp.ErpFolder</entityType>
<element>
我尝试通过添加@xmlpath(“.”)
来删除
标记
@XmlPath(".")
@XmlJavaTypeAdapter(value=EventAdapter.class)
public Map<Event, String> getEvents() {
}
产量不错
<element>
<onCellEdit>do some thing<onCellEdit>
<entityType>com.agitech.erp.model.erp.ErpFolder</entityType>
<element>
但撤退失败了
Caused by: Exception [EclipseLink-3002] (Eclipse Persistence Services - 2.6.0.v20140809-296a69f): org.eclipse.persistence.exceptions.ConversionException
Exception Description: The object [], of class [class java.lang.String], from mapping [org.eclipse.persistence.oxm.mappings.XMLDirectMapping[entityType-->view.entityType/text()]] with descriptor [XMLDescriptor(com.agitech.erp.view.BeanView --> [DatabaseTable(view), DatabaseTable(viewFrame), DatabaseTable(viewElement)])], could not be converted to [class java.lang.Class].
Internal Exception: java.lang.ClassNotFoundException:
at org.eclipse.persistence.exceptions.ConversionException.couldNotBeConvertedToClass(ConversionException.java:95)
at org.eclipse.persistence.internal.helper.ConversionManager.convertObjectToClass(ConversionManager.java:446)
调试Jaxb使我熟悉了这一行
org.eclipse.persistence.internal.oxm.XMLDirectMappingNodeValue
public void endElement(XPathFragment xPathFragment, UnmarshalRecord unmarshalRecord) {
...
line 205 unmarshalRecord.setAttributeValue(convertedValue, xmlDirectMapping);
}
public XPathNode getNonAttributeXPathNode(String namespaceURI, String localName, String qName, Attributes attributes) {
....
if(null == resultNode && null == nonPredicateNode) {
// ANY MAPPING
resultNode = xPathNode.getAnyNode();
// by default it return the EventAdapter, changing it to NULL fix my problem
}
....
}
我已经能够重现你们看到的问题,但还没有找出原因。您可以使用以下bug来跟踪此问题的进展:
即使在尝试了许多事情之后也无法找到解决方案,因此在此处发布希望获得一些解决此问题或修复方法。 基本上,如果 ,但是除了< code>Map之外,我还需要一个< code>@XmlElement。因此有一个字段用< code >(映射字段)@XmlPath(" .)和另一个带有< code>@XmlElement的字符串字段,然后我想执行< code >解组。 以下是我尝试 : 下面是它将被< co
我使用pybind11让python调用现有的C模块(库)。但是,在C库中,调用::GetModuleFileName(Visual Studio)来确定加载的模块在C中运行时的物理路径。但是当我通过pybind11从python(Jupyter Notebook)调用库时,python.exe的物理路径会返回。如何配置或更改以确保获得C库的物理路径? C代码是这样的:Lib. h 我ib.cpp
我使用的是Horizontal ViewPager2,它里面有4个片段。每个片段都有一个回收器视图上的SwipeReFresLayout。我面临的问题是,当回收器视图位于顶部时,然后onClick on任何项目列表都不起作用。如果我向下滚动一点回收器视图,那么onClick就可以正常工作。当回收器视图位于顶部时,如果SwipeReFresLayout处于刷新状态,那么onClick就可以正常工作。
我想使用Stetho调试了我的Andorid应用程序,但Stetho与Fastjson有冲突。
问题内容: 我有一个自定义返回的我想将它作为任意XML包含在JAXB对象中(我知道我必须手工制作XSD)。但是,JAXB抱怨 显然,不支持将w3c XML类型作为Java类型来支持,这很遗憾。但是,除此之外,使用明显受到支持的错误时,我会遇到相同的错误。 如何在JAXB中包括任意XML元素作为元素? 注意:根据https://forums.oracle.com/thread/1668210我也尝试
Postgres 10和11的插入说明: 关于冲突[冲突目标]冲突行动 我有一张桌子: 而我想做的 但是我得到一个错误: ON CONFLICT DO UPDATE需要推理规范或约束名称提示:例如,ON CONFLICT(column_name) 为什么我必须提供一个确定的目标?如何提供主键或其他列集?