В настоящее время я работаю над проектом Kotlin, Reactor, GraphQL, MongoDB.
Кажется, проблема в моей схеме построения graphql, но я не могу ее выяснить.
У меня есть интерфейс Foo
interface Foo {
id: ID
field1: String
field2: String
}
И у меня есть другой интерфейс Bar
interface Bar{
id: ID
field1: String
field2: String
Оба являются интерфейсами, поэтому я разрешил их тип, добавив несколько строк на моем RuntimeWiring
.
RuntimeWiring.newRuntimeWiring()
/* Shortend for brevity */
.type(newTypeWiring("Foo")
.typeResolver(fooResolvers.fooTypeResolver())
.dataFetcher("bar", barDataFetchers.getBar())
.type(newTypeWiring("Bar")
.typeResolver(barResolvers.barTypeResolver())
...
.build()
Когда я отправляю запрос с просьбой о bar
от Foo
, он даже не достигает barDataFetchers.getBar()
.
Есть ли что-то, что я 'м отсутствует?
РЕДАКТИРОВАТЬ
После установки моего уровня регистрации graphql на DEBUG,
Я понял, что graphql-java использует graphql.schema.PropertyDataFetcher
для извлечения данных для bar
.
Это не то, что я хотел. Он должен использовать мой собственный dataFetcher, barDataFetchers