[
https://issues.apache.org/jira/browse/OLINGO-1342?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17567140#comment-17567140
]
TUSHAR SAURABH commented on OLINGO-1342:
----------------------------------------
Hi Aleksandr,
I am getting the same error ,could you please let me know how to fix.Explain me
step by step.
String xmlFile = "metadata.xml";
void perform(String serviceUrl) throws Exception {
readProperties(fileName);
String bearerfederationTokenService = "Bearer " +
federationTokenService;
System.out.println("bearerfederationTokenService :1 :" +
bearerfederationTokenService);
String bearerTokenService = "Bearer " + tokenService;
System.out.println("bearerTokenService : 2 :"+bearerTokenService);
print("\n----- Read Edm ------------------------------");
Edm edm = readEdm(serviceUrl);
List<FullQualifiedName> ctFqns = new ArrayList<FullQualifiedName>();
System.out.println("ctFqns :" + ctFqns);
List<FullQualifiedName> etFqns = new ArrayList<FullQualifiedName>();
for (EdmSchema schema : edm.getSchemas()) {
for (EdmComplexType complexType : schema.getComplexTypes()) {
ctFqns.add(complexType.getFullQualifiedName());
}
for (EdmEntityType entityType : schema.getEntityTypes()) {
etFqns.add(entityType.getFullQualifiedName());
}
}
print("Found ComplexTypes", ctFqns);
print("Found EntityTypes", etFqns);
print("\n----- Inspect each property and its type of the first entity:
" + etFqns.get(0) + "----");
EdmEntityType etype = edm.getEntityType(etFqns.get(0));
for (String propertyName : etype.getPropertyNames()) {
EdmProperty property = etype.getStructuralProperty(propertyName);
FullQualifiedName typeName =
property.getType().getFullQualifiedName();
print("property '" + propertyName + "' " + typeName);
}
public Edm readEdm(String serviceUrl) throws IOException, URISyntaxException {
System.out.println("xmlresult 33333 ::::" + xmlresult );
System.out.println("serviceUrl 44444" + serviceUrl );
System.out.println("xmlFile 55555" + xmlFile );
List<InputStream> streams = new ArrayList<InputStream>();
//If file is locally available
// streams.add(getClass().getResourceAsStream(xmlFile));
ClassLoader classLoader = getClass().getClassLoader();
streams.add(classLoader.getResourceAsStream(xmlFile)) ;
final Edm edm =
client.getReader().readMetadata(classLoader.getResourceAsStream(xmlFile));
return edm;
}
Looking for the exact solution I have been trying last 3 days.
I appreciate for the kind help .
Thanks !
> Non-json errors not displayed properly in logs
> ----------------------------------------------
>
> Key: OLINGO-1342
> URL: https://issues.apache.org/jira/browse/OLINGO-1342
> Project: Olingo
> Issue Type: Bug
> Components: odata4-client
> Affects Versions: (Java) V4 4.5.0, (Java) V4 4.6.0
> Reporter: Aleksandr Zaigraev
> Priority: Major
> Labels: patch
> Fix For: (Java) V4 4.10.0
>
> Attachments: OLINGO-1342.patch
>
>
> When http client receives non-json encoded error message, for example when
> receiving this error message:
> <HEAD><TITLE>Tunnel Connection Failed</TITLE></HEAD>...
> In Spring logs following will be displayed:
> org.apache.olingo.client.api.serialization.ODataDeserializerException:
> com.fasterxml.jackson.core.JsonParseException: Unexpected character ('<'
> (code 60)): expected a valid value (number, String, array, object, 'true',
> 'false' or 'null')
> at [Source: (ByteArrayInputStream); line: 1, column: 2]
> at
> org.apache.olingo.client.core.serialization.JsonDeserializer.toError(JsonDeserializer.java:444)
> ~[odata-client-core-4.5.0.jar:na]
> at
> org.apache.olingo.client.core.serialization.ClientODataDeserializerImpl.toError(ClientODataDeserializerImpl.java:105)
> ~[odata-client-core-4.5.0.jar:na]
> ...
--
This message was sent by Atlassian Jira
(v8.20.10#820010)