@Override public void serializeWithType(Object bean, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer) throws IOException, JsonGenerationException { /* Ok: let's serialize type id as attribute, but if (and only if!) * we are using AS_PROPERTY */ if (typeSer.getTypeInclusion() == JsonTypeInfo.As.PROPERTY) { ToXmlGenerator xgen = (ToXmlGenerator)jgen; xgen.setNextIsAttribute(true); super.serializeWithType(bean, jgen, provider, typeSer); if (_attributeCount == 0) { // if no attributes, need to reset xgen.setNextIsAttribute(false); } } else { super.serializeWithType(bean, jgen, provider, typeSer); } }