code: @Override
      public BaseJsonBo setAttribute(String attrName, Object value, boolean triggerChange) {
          if (value instanceof JsonNode) {
              if (value instanceof NullNode || value instanceof MissingNode) {
                  super.setAttribute(attrName, null, triggerChange);
              } else {
                  super.setAttribute(attrName, value.toString(), triggerChange);
              }
          } else {
              JsonNode node = null;
              if (value instanceof String) {
                  node = tryParseJson(value.toString());
              }
              node = node != null ? node : SerializationUtils.toJson(value);
              super.setAttribute(attrName, node.toString(), triggerChange);
          }
          return this;
      }
docs: {@inheritDoc}
  
  @since 0.10.0