In 2.x we could put a Character inside a field value. This is no longer the case in 3.0.
BasicDBObject object = ... object.put("delimiter", '/'); ... List<DBObject> objectsToInsert = new ArrayList<>(); objectsToInsert.add(object); DBCollection collection = ... collection.insert(objectsToInsert, WriteConcern.ACKNOWLEDGED);
Raises the following exception
org.bson.codecs.configuration.CodecConfigurationException: Can't find a codec for class java.lang.Character. at org.bson.codecs.configuration.CodecCache.getOrThrow(CodecCache.java:46) at org.bson.codecs.configuration.ProvidersCodecRegistry.get(ProvidersCodecRegistry.java:63) at org.bson.codecs.configuration.ProvidersCodecRegistry.get(ProvidersCodecRegistry.java:37) at com.mongodb.DBObjectCodec.writeValue(DBObjectCodec.java:210) at com.mongodb.DBObjectCodec.encode(DBObjectCodec.java:128) at com.mongodb.DBObjectCodec.encode(DBObjectCodec.java:61) at com.mongodb.CompoundDBObjectCodec.encode(CompoundDBObjectCodec.java:48) at com.mongodb.CompoundDBObjectCodec.encode(CompoundDBObjectCodec.java:27) at org.bson.codecs.BsonDocumentWrapperCodec.encode(BsonDocumentWrapperCodec.java:63) at org.bson.codecs.BsonDocumentWrapperCodec.encode(BsonDocumentWrapperCodec.java:29) at com.mongodb.connection.InsertCommandMessage.writeTheWrites(InsertCommandMessage.java:99) at com.mongodb.connection.InsertCommandMessage.writeTheWrites(InsertCommandMessage.java:43) at com.mongodb.connection.BaseWriteCommandMessage.encodeMessageBody(BaseWriteCommandMessage.java:112) at com.mongodb.connection.BaseWriteCommandMessage.encodeMessageBody(BaseWriteCommandMessage.java:35) at com.mongodb.connection.RequestMessage.encode(RequestMessage.java:132) at com.mongodb.connection.BaseWriteCommandMessage.encode(BaseWriteCommandMessage.java:89) at com.mongodb.connection.WriteCommandProtocol.sendMessage(WriteCommandProtocol.java:170) at com.mongodb.connection.WriteCommandProtocol.execute(WriteCommandProtocol.java:73) at com.mongodb.connection.InsertCommandProtocol.execute(InsertCommandProtocol.java:66) at com.mongodb.connection.InsertCommandProtocol.execute(InsertCommandProtocol.java:37) at com.mongodb.connection.DefaultServer$DefaultServerProtocolExecutor.execute(DefaultServer.java:155) at com.mongodb.connection.DefaultServerConnection.executeProtocol(DefaultServerConnection.java:219) at com.mongodb.connection.DefaultServerConnection.insertCommand(DefaultServerConnection.java:108) at com.mongodb.operation.InsertOperation.executeCommandProtocol(InsertOperation.java:76) at com.mongodb.operation.BaseWriteOperation$1.call(BaseWriteOperation.java:111) at com.mongodb.operation.BaseWriteOperation$1.call(BaseWriteOperation.java:106) at com.mongodb.operation.OperationHelper.withConnectionSource(OperationHelper.java:186) at com.mongodb.operation.OperationHelper.withConnection(OperationHelper.java:177) at com.mongodb.operation.BaseWriteOperation.execute(BaseWriteOperation.java:106) at com.mongodb.operation.BaseWriteOperation.execute(BaseWriteOperation.java:58) at com.mongodb.Mongo.execute(Mongo.java:745) at com.mongodb.Mongo$2.execute(Mongo.java:728) at com.mongodb.DBCollection.executeWriteOperation(DBCollection.java:327) at com.mongodb.DBCollection.insert(DBCollection.java:323) at com.mongodb.DBCollection.insert(DBCollection.java:314) at com.mongodb.DBCollection.insert(DBCollection.java:284) at com.mongodb.DBCollection.insert(DBCollection.java:250)