@@ -760,15 +760,17 @@ public IndexRequest indexRequest(IndexQuery query, IndexCoordinates index) {
760760 String indexName = index .getIndexName ();
761761 IndexRequest indexRequest ;
762762
763- if (query .getObject () != null ) {
764- String id = StringUtils .isEmpty (query .getId ()) ? getPersistentEntityId (query .getObject ()) : query .getId ();
763+ Object queryObject = query .getObject ();
764+
765+ if (queryObject != null ) {
766+ String id = StringUtils .isEmpty (query .getId ()) ? getPersistentEntityId (queryObject ) : query .getId ();
765767 // If we have a query id and a document id, do not ask ES to generate one.
766768 if (id != null ) {
767769 indexRequest = new IndexRequest (indexName ).id (id );
768770 } else {
769771 indexRequest = new IndexRequest (indexName );
770772 }
771- indexRequest .source (elasticsearchConverter .mapObject (query . getObject () ).toJson (), Requests .INDEX_CONTENT_TYPE );
773+ indexRequest .source (elasticsearchConverter .mapObject (queryObject ).toJson (), Requests .INDEX_CONTENT_TYPE );
772774 } else if (query .getSource () != null ) {
773775 indexRequest = new IndexRequest (indexName ).id (query .getId ()).source (query .getSource (),
774776 Requests .INDEX_CONTENT_TYPE );
@@ -779,7 +781,8 @@ public IndexRequest indexRequest(IndexQuery query, IndexCoordinates index) {
779781
780782 if (query .getVersion () != null ) {
781783 indexRequest .version (query .getVersion ());
782- VersionType versionType = retrieveVersionTypeFromPersistentEntity (query .getObject ().getClass ());
784+ VersionType versionType = retrieveVersionTypeFromPersistentEntity (
785+ queryObject != null ? queryObject .getClass () : null );
783786 indexRequest .versionType (versionType );
784787 }
785788
@@ -814,15 +817,16 @@ public IndexRequestBuilder indexRequestBuilder(Client client, IndexQuery query,
814817
815818 IndexRequestBuilder indexRequestBuilder ;
816819
817- if (query .getObject () != null ) {
818- String id = StringUtils .isEmpty (query .getId ()) ? getPersistentEntityId (query .getObject ()) : query .getId ();
820+ Object queryObject = query .getObject ();
821+ if (queryObject != null ) {
822+ String id = StringUtils .isEmpty (query .getId ()) ? getPersistentEntityId (queryObject ) : query .getId ();
819823 // If we have a query id and a document id, do not ask ES to generate one.
820824 if (id != null ) {
821825 indexRequestBuilder = client .prepareIndex (indexName , type , id );
822826 } else {
823827 indexRequestBuilder = client .prepareIndex (indexName , type );
824828 }
825- indexRequestBuilder .setSource (elasticsearchConverter .mapObject (query . getObject () ).toJson (),
829+ indexRequestBuilder .setSource (elasticsearchConverter .mapObject (queryObject ).toJson (),
826830 Requests .INDEX_CONTENT_TYPE );
827831 } else if (query .getSource () != null ) {
828832 indexRequestBuilder = client .prepareIndex (indexName , type , query .getId ()).setSource (query .getSource (),
@@ -834,7 +838,8 @@ public IndexRequestBuilder indexRequestBuilder(Client client, IndexQuery query,
834838
835839 if (query .getVersion () != null ) {
836840 indexRequestBuilder .setVersion (query .getVersion ());
837- VersionType versionType = retrieveVersionTypeFromPersistentEntity (query .getObject ().getClass ());
841+ VersionType versionType = retrieveVersionTypeFromPersistentEntity (
842+ queryObject != null ? queryObject .getClass () : null );
838843 indexRequestBuilder .setVersionType (versionType );
839844 }
840845
@@ -1695,12 +1700,13 @@ private String getPersistentEntityId(Object entity) {
16951700 return null ;
16961701 }
16971702
1698- private VersionType retrieveVersionTypeFromPersistentEntity (Class <?> clazz ) {
1703+ private VersionType retrieveVersionTypeFromPersistentEntity (@ Nullable Class <?> clazz ) {
16991704
17001705 MappingContext <? extends ElasticsearchPersistentEntity <?>, ElasticsearchPersistentProperty > mappingContext = elasticsearchConverter
17011706 .getMappingContext ();
17021707
1703- ElasticsearchPersistentEntity <?> persistentEntity = mappingContext .getPersistentEntity (clazz );
1708+ ElasticsearchPersistentEntity <?> persistentEntity = clazz != null ? mappingContext .getPersistentEntity (clazz )
1709+ : null ;
17041710
17051711 VersionType versionType = null ;
17061712
0 commit comments