Comments (6)
Hi @xuanhai266, a new version of azure-ai-documentintelligence
has shipped:
https://central.sonatype.com/artifact/com.azure/azure-ai-documentintelligence
With this I think the issue can be considered addressed.
from azure-sdk-for-java.
@alzimmermsft @jairmyree could you please assist @xuanhai266 here?
from azure-sdk-for-java.
Thanks for filing this issue @xuanhai266.
The issue appears to be that azure-search-documents
includes a dependency on azure-core-serializer-json-jackson
, which supplies a service provider implementation for JsonSerializer
. So, when the request call is made instead of using the default implementation of JsonSerializer
provided by azure-core
it uses the one in azure-core-serializer-json-jackson
which has one major difference in null
values being included in serialization (the azure-core
implementation is specifically meant for types managed by Azure SDKs and we don't send null
values).
One solution to this problem is to Maven exclude the azure-core-serializer-json-jackson
dependency from `azure-search-documents:
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-search-documents</artifactId>
<version>11.7.0-beta.3</version>
<exclusions>
<exclusion>
<groupId>com.azure</groupId>
<artifactId>azure-core-serializer-json-jackson</artifactId>
</exclusion>
</exclusions>
</dependency>
Which I've verified locally makes the Document Intelligence API call work. But this could break features in azure-search-documents
.
Another solution is preventing azure-core-serializer-json-jackson
's JsonSerializer
implementation to be loaded from the service provider.
I also looked at the in-development version of azure-ai-documentintelligence
and it is migrating to our new serialization framework using azure-json
and it worked without any dependency removes or changes to build as it no longer uses Jackson annotations for serialization.
from azure-sdk-for-java.
@alzimmermsft
Thank you for your response.
One solution to this problem is to Maven exclude the azure-core-serializer-json-jackson dependency from `azure-search-documents:
Yes, this workaround is working well.
But this could break features in azure-search-documents.
Do you know which features of azure-search-documents will be broken if I exclude the azure-core-serializer-json-jackson dependency?
I also looked at the in-development version of azure-ai-documentintelligence and it is migrating to our new serialization framework using azure-json and it worked without any dependency removes or changes to build as it no longer uses Jackson annotations for serialization.
When does this version of azure-ai-documentintelligence release?
from azure-sdk-for-java.
Do you know which features of azure-search-documents will be broken if I exclude the azure-core-serializer-json-jackson dependency?
When azure-core-serializer-json-jackson
is excluded azure-search-documents
will fall back to the default serializer provided by azure-core
to manage serializing documents sent to and received from the Search service, unless a custom JsonSerializer
is passed while creating the SearchClient
(SearchClientBuilder.serializer). This will result in slightly different serialization handling provided by Jackson Databind, which may break some cases such as the default serializer in azure-core
doesn't serialize null properties which is a valid case in a Search document.
When does this version of azure-ai-documentintelligence release?
Let me follow-up with the owner of the SDK on this.
from azure-sdk-for-java.
Hi @xuanhai266. Thank you for opening this issue and giving us the opportunity to assist. We believe that this has been addressed. If you feel that further discussion is needed, please add a comment with the text "/unresolve" to remove the "issue-addressed" label and continue the conversation.
from azure-sdk-for-java.
Related Issues (20)
- [BUG] Azure Communication Service Job Router RouterValue class Deserialize Issue HOT 1
- Factory method 'openAIClient' threw exception; nested exception is java.lang.NoClassDefFoundError: reactor/util/Loggers HOT 2
- Detected an instance of Random/SplittableRandom class in the image heap HOT 2
- [BUG] Cosmos hangs forever with CosmosEndToEndOperationLatencyPolicyConfig set HOT 2
- [OpenAI] Support token calculation in streaming API
- Use an access token directly instead of token credential HOT 1
- [BUG] Azure Communication Service Job Router Java SDK having Deserialize Issue for RouterValue class HOT 3
- Receive message connection from ServiceBusProcessorClient closes due to inactivity in service bus HOT 2
- [Question] Implementing Long-Running Operations with SyncPoller HOT 3
- Change BinaryData fromObject(Object) and toObject(Class<T>) / toObject(TypeReference<T>) behavior
- OpenRewrite recipes for moving usages from azure-core to io.clientcore
- Authentication window not opening in browser[BUG] HOT 2
- [BUG]azure-cosmos-spark is not able to read array type field as string HOT 4
- [FEATURE REQ] Support auth by customer defined TokenCredencial for all scenarios HOT 1
- [BUG] [Azure OpenAI] block()/blockFirst()/blockLast() are blocking, which is not supported in thread reactor-http-nio-2 HOT 4
- ChatCompletion call with image as data url not working with com.azure:azure-ai-openai:1.0.0-beta.9 HOT 5
- Callautomation implementation design feedbacks HOT 1
- Storage - Queues Samples Issue
- Azure Redis Checkpoint Store Samples Issue
- [BUG] The response `The requested URI does not represent any resource on the server.` is not helpful when the blob name is `null`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from azure-sdk-for-java.