{
"namespace" : "some.namespace",
"name" : "some.name",
"version" : "1.0.0",
"schema" : {
"$schema" : "http://json-schema.org/draft-04/schema#",
"type" : "object"
}
}
java.lang.IllegalArgumentException: Invalid BSON field name $schema
at org.bson.AbstractBsonWriter.writeName(AbstractBsonWriter.java:494) ~[bson-3.0.4.jar:na]
at io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec.lambda$writeDocument$1(AbstractJsonCodec.java:257) ~[vertx-mongo-client-3.1.0.jar:na]
at io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec$$Lambda$74/1868429581.accept(Unknown Source) ~[na:na]
at io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.lambda$forEach$3(JsonObjectCodec.java:110) ~[vertx-mongo-client-3.1.0.jar:na]
at io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec$$Lambda$75/1597039948.accept(Unknown Source) ~[na:na]
at java.lang.Iterable.forEach(Iterable.java:75) ~[na:1.8.0_51]
at io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.forEach(JsonObjectCodec.java:109) ~[vertx-mongo-client-3.1.0.jar:na]
at io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.forEach(JsonObjectCodec.java:23) ~[vertx-mongo-client-3.1.0.jar:na]
at io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec.writeDocument(AbstractJsonCodec.java:255) ~[vertx-mongo-client-3.1.0.jar:na]
at io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec.writeValue(AbstractJsonCodec.java:102) ~[vertx-mongo-client-3.1.0.jar:na]
at io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec.lambda$writeDocument$1(AbstractJsonCodec.java:258) ~[vertx-mongo-client-3.1.0.jar:na]
at io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec$$Lambda$74/1868429581.accept(Unknown Source) ~[na:na]
at io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.lambda$forEach$3(JsonObjectCodec.java:110) ~[vertx-mongo-client-3.1.0.jar:na]
at io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec$$Lambda$75/1597039948.accept(Unknown Source) ~[na:na]
at java.lang.Iterable.forEach(Iterable.java:75) ~[na:1.8.0_51]
at io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.forEach(JsonObjectCodec.java:109) ~[vertx-mongo-client-3.1.0.jar:na]
at io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.forEach(JsonObjectCodec.java:23) ~[vertx-mongo-client-3.1.0.jar:na]
at io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec.writeDocument(AbstractJsonCodec.java:255) ~[vertx-mongo-client-3.1.0.jar:na]
at io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec.encode(AbstractJsonCodec.java:28) ~[vertx-mongo-client-3.1.0.jar:na]
at org.bson.codecs.BsonDocumentWrapperCodec.encode(BsonDocumentWrapperCodec.java:63) ~[bson-3.0.4.jar:na]
at org.bson.codecs.BsonDocumentWrapperCodec.encode(BsonDocumentWrapperCodec.java:29) ~[bson-3.0.4.jar:na]
at com.mongodb.connection.InsertCommandMessage.writeTheWrites(InsertCommandMessage.java:99) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InsertCommandMessage.writeTheWrites(InsertCommandMessage.java:43) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.BaseWriteCommandMessage.encodeMessageBody(BaseWriteCommandMessage.java:112) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.BaseWriteCommandMessage.encodeMessageBody(BaseWriteCommandMessage.java:35) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.RequestMessage.encode(RequestMessage.java:132) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.BaseWriteCommandMessage.encode(BaseWriteCommandMessage.java:89) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.WriteCommandProtocol.executeBatchesAsync(WriteCommandProtocol.java:111) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.WriteCommandProtocol.executeAsync(WriteCommandProtocol.java:99) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InsertCommandProtocol.executeAsync(InsertCommandProtocol.java:79) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.DefaultServer$DefaultServerProtocolExecutor.executeAsync(DefaultServer.java:165) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.DefaultServerConnection.executeProtocolAsync(DefaultServerConnection.java:225) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.DefaultServerConnection.insertCommandAsync(DefaultServerConnection.java:114) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.operation.MixedBulkWriteOperation$Run$5.executeWriteCommandProtocolAsync(MixedBulkWriteOperation.java:482) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.operation.MixedBulkWriteOperation$Run$AsyncRunExecutor.executeAsync(MixedBulkWriteOperation.java:652) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.operation.MixedBulkWriteOperation$Run.executeAsync(MixedBulkWriteOperation.java:377) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.operation.MixedBulkWriteOperation.executeRunsAsync(MixedBulkWriteOperation.java:187) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.operation.MixedBulkWriteOperation.access$400(MixedBulkWriteOperation.java:72) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.operation.MixedBulkWriteOperation$2.call(MixedBulkWriteOperation.java:174) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.operation.OperationHelper$1.onResult(OperationHelper.java:236) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.operation.OperationHelper$1.onResult(OperationHelper.java:229) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.DefaultServer$1.onResult(DefaultServer.java:88) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.DefaultServer$1.onResult(DefaultServer.java:79) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.internal.async.ErrorHandlingResultCallback.onResult(ErrorHandlingResultCallback.java:53) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.DefaultConnectionPool$2.onResult(DefaultConnectionPool.java:198) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.DefaultConnectionPool$2.onResult(DefaultConnectionPool.java:183) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.UsageTrackingInternalConnection$1.onResult(UsageTrackingInternalConnection.java:62) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.UsageTrackingInternalConnection$1.onResult(UsageTrackingInternalConnection.java:54) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection$1$1.onResult(InternalStreamConnection.java:155) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection$1$1.onResult(InternalStreamConnection.java:142) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnectionInitializer$3.onResult(InternalStreamConnectionInitializer.java:146) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnectionInitializer$3.onResult(InternalStreamConnectionInitializer.java:140) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.CommandHelper$1$1.onResult(CommandHelper.java:53) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.CommandHelper$1$1.onResult(CommandHelper.java:43) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.CommandHelper$3.onResult(CommandHelper.java:155) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.CommandHelper$3.onResult(CommandHelper.java:148) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection.executeCallbackAndReceiveResponse(InternalStreamConnection.java:375) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection.access$1700(InternalStreamConnection.java:65) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection$ResponseBuffersCallback.onResult(InternalStreamConnection.java:417) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection$ResponseBuffersCallback.onResult(InternalStreamConnection.java:386) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection$ResponseHeaderCallback.onSuccess(InternalStreamConnection.java:555) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection$ResponseHeaderCallback.access$2200(InternalStreamConnection.java:514) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection$ResponseHeaderCallback$ResponseBodyCallback.onResult(InternalStreamConnection.java:577) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection$ResponseHeaderCallback$ResponseBodyCallback.onResult(InternalStreamConnection.java:561) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection$3.completed(InternalStreamConnection.java:444) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.InternalStreamConnection$3.completed(InternalStreamConnection.java:441) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.AsynchronousSocketChannelStream$BasicCompletionHandler.completed(AsynchronousSocketChannelStream.java:221) ~[mongodb-driver-core-3.0.4.jar:na]
at com.mongodb.connection.AsynchronousSocketChannelStream$BasicCompletionHandler.completed(AsynchronousSocketChannelStream.java:205) ~[mongodb-driver-core-3.0.4.jar:na]
at sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:126) ~[na:1.8.0_51]
at sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:281) ~[na:1.8.0_51]
at sun.nio.ch.WindowsAsynchronousSocketChannelImpl$ReadTask.completed(WindowsAsynchronousSocketChannelImpl.java:579) ~[na:1.8.0_51]
at sun.nio.ch.Iocp$EventHandlerTask.run(Iocp.java:397) ~[na:1.8.0_51]
at sun.nio.ch.AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:112) ~[na:1.8.0_51]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_51]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_51]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_51]
Mongo doesn't allow a $ to be the first character of the field name. It's reserved for Mongo directives.I stored JSON schema before by creating a filter to change $schema to s$chema on the way in and out of mongo. It's a small pain but it works.
--
You received this message because you are subscribed to a topic in the Google Groups "vert.x" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/vertx/DTcbeYvpQ3A/unsubscribe.
To unsubscribe from this group and all its topics, send an email to vertx+un...@googlegroups.com.
Visit this group at http://groups.google.com/group/vertx.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/d1649763-d745-4913-8f5d-22a471a26cc1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.