NLCR / SeznamDNNT

Registry for Out of Commerce Literary Works
7 stars 0 forks source link

API: informace o titulu dle identifikátorů - Error 500 #380

Open jahhoo opened 2 years ago

jahhoo commented 2 years ago

https://sdnnt-url.cz/sdnnt/api/v1.0/lists/info/%22pid%22%3A%22uuid%3Ae0b83e80-74e5-11e2-86a5-005056827e52%22

Snímek z 2022-04-27 17-48-18


    org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:432)
    org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:370)
    org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:389)
    org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:342)
    org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:229)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
    cz.inovatika.sdnnt.tracking.TrackingFilter.doFilter(TrackingFilter.java:81)
    cz.inovatika.sdnnt.openapi.endpoints.api.ApiOriginFilter.doFilter(ApiOriginFilter.java:15)
    cz.inovatika.sdnnt.services.impl.shib.ShibbolethFilter.doFilter(ShibbolethFilter.java:109)
    org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71)
</pre><p><b>Root Cause</b></p><pre>org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException: Error from server at http:&#47;&#47;localhost:8983&#47;solr: undefined field uuid
    org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(HttpSolrClient.java:681)
    org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:266)
    org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:248)
    org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:214)
    org.apache.solr.client.solrj.SolrClient.query(SolrClient.java:1003)
    cz.inovatika.sdnnt.openapi.endpoints.api.impl.DNNTListApiServiceImpl.info(DNNTListApiServiceImpl.java:598)
    cz.inovatika.sdnnt.openapi.endpoints.api.ListsApi.info(ListsApi.java:160)
    java.base&#47;jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    java.base&#47;jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    java.base&#47;jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    java.base&#47;java.lang.reflect.Method.invoke(Method.java:566)
    org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:76)
    org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:148)
    org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:191)
    org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:200)
    org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:103)
    org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:493)
    org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:415)
    org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:104)
    org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:277)
    org.glassfish.jersey.internal.Errors$1.call(Errors.java:272)
    org.glassfish.jersey.internal.Errors$1.call(Errors.java:268)
    org.glassfish.jersey.internal.Errors.process(Errors.java:316)
    org.glassfish.jersey.internal.Errors.process(Errors.java:298)
    org.glassfish.jersey.internal.Errors.process(Errors.java:268)
    org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:289)
    org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:256)
    org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:703)
    org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:416)
    org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:370)
    org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:389)
    org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:342)
    org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:229)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
    cz.inovatika.sdnnt.tracking.TrackingFilter.doFilter(TrackingFilter.java:81)
    cz.inovatika.sdnnt.openapi.endpoints.api.ApiOriginFilter.doFilter(ApiOriginFilter.java:15)
    cz.inovatika.sdnnt.services.impl.shib.ShibbolethFilter.doFilter(ShibbolethFilter.java:109)
    org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71)
</pre><p><b>Note</b> Celý stack trace zdrojové chyby je dostupný v server logu.</p><hr class="line" /><h3>Apache Tomcat/9.0.45</h3></body></html>```
jahhoo commented 2 years ago

Stejně tak nejde dotaz, který na SOLR normálně projde...

https://sdnnt-url.cz/sdnnt/api/v1.0/lists/info/granularity:*%22uuid:50e5e170-cfe3-11ea-b7a2-005056827e51%22*

http://localhost:8983/solr/catalog/select?q=granularity%3A*%22uuid%3A50e5e170-cfe3-11ea-b7a2-005056827e51%22*

jahhoo commented 2 years ago

Při zadání jen UUID to funguje. Měly by být tedy ošetřeny chybové hlášky. A také by to mělo být popsáno v dokumentaci.

smallcubes commented 2 years ago

@jahhoo asi souvisí s #372? (dávám odkaz, jen abych issue propojil)

smallcubes commented 2 years ago

zbývá doplnit popisek, který identifikátor se má použít

pavel-stastny commented 2 years ago

Lze použít všechny identifikátory v titulu:

CCNB, katalog id, pid ale podmínkou je, že musí mít přiřazený pid identifikátor = musí být zdigitalizovaný v některé instanci krameria.

smallcubes commented 2 years ago

poprosil bych o ošetření hlášky a dopsání výše uvedených informací do dokumentace @pavel-stastny