Hi Georg,

No. You have to post subjectId(usually, UUID) to create EHR.
API of EtherCIS is similar to EhrScape.
https://code4health.org/platform/open_interfaces_apis/ehrscape/ehrscape_api_reference

I am sorry I pointed the former version of EhterCIS repository. My
repository is based on recent v1.2.0.
https://github.com/skoba/docker-ethercis

--
Shinji
2018年8月30日(木) 4:27 Georg Fette <georg.fe...@uni-wuerzburg.de>:
>
> Hi Shinji,
> Cool, that worked, thank you.
> I now got my sessionID and tried to create an EHR with
>
> curl -X POST -H 'Ehr-Session:
> sessionId:172.18.0.3-root-1535570266743--2067865307-17' -i
> http://localhost:8888/rest/v1/ehr
>
> That resulted in this response:
>
> <html>
> <head>
> <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"/>
> <title>Error 500 </title>
> </head>
> <body>
> <h2>HTTP ERROR: 500</h2>
> <p>Problem accessing /rest/v1/ehr. Reason:
> <pre>    #1.0.0 Invocation exception to
> method:create:org.jooq.exception.DataAccessException: SQL [select 1 as
> "one" where exists (select 1 as "one" from "ehr"."party_identified"
> where ("ehr"."party_identified"."party_ref_namespace" = ? and
> "ehr"."party_identified"."party_ref_scheme" = ? and
> "ehr"."party_identified"."party_ref_value" = ?))]; This connection has
> been closed.</pre></p>
> <hr /><i><small>Powered by Jetty://</small></i>
> </body>
> </html>
>
> This is the output of the application inside the Docker:
>
> app_1       | INFO - com.ethercis.vehr.AccessLog.info(64) |
> userId=USER[SHIRO]_root,method=post,path=rest/v1/ehr,qryparams={x-client-ip=172.18.0.1;}
> app_1       | WARN - com.ethercis.vehr.RequestDispatcher.dispatch(672) |
> Invocation exception to method:create
> app_1       | org.jooq.exception.DataAccessException: SQL [select 1 as
> "one" where exists (select 1 as "one" from "ehr"."party_identified"
> where ("ehr"."party_identified"."party_ref_namespace" = ? and
> "ehr"."party_identified"."party_ref_scheme" = ? and
> "ehr"."party_identified"."party_ref_value" = ?))]; This connection has
> been closed.
> app_1       |   at org.jooq.impl.Tools.translate(Tools.java:1690)
> app_1       |   at
> org.jooq.impl.DefaultExecuteContext.sqlException(DefaultExecuteContext.java:660)
> app_1       |   at
> org.jooq.impl.AbstractQuery.execute(AbstractQuery.java:354)
> app_1       |   at
> org.jooq.impl.AbstractResultQuery.fetchLazy(AbstractResultQuery.java:341)
> app_1       |   at
> org.jooq.impl.AbstractResultQuery.fetchLazy(AbstractResultQuery.java:328)
> app_1       |   at
> org.jooq.impl.AbstractResultQuery.fetchOne(AbstractResultQuery.java:493)
> app_1       |   at org.jooq.impl.SelectImpl.fetchOne(SelectImpl.java:2735)
> app_1       |   at
> org.jooq.impl.DefaultDSLContext.fetchExists(DefaultDSLContext.java:2663)
> app_1       |   at
> org.jooq.impl.DefaultDSLContext.fetchExists(DefaultDSLContext.java:2673)
> app_1       |   at
> com.ethercis.dao.access.jooq.PartyIdentifiedAccess.findReferencedParty(PartyIdentifiedAccess.java:301)
> app_1       |   at
> com.ethercis.dao.access.jooq.PartyIdentifiedAccess.getOrCreateParty(PartyIdentifiedAccess.java:385)
> app_1       |   at
> com.ethercis.dao.access.interfaces.I_PartyIdentifiedAccess.getOrCreatePartyByExternalRef(I_PartyIdentifiedAccess.java:182)
> app_1       |   at
> com.ethercis.persistence.AuditSetter.getCommitter(AuditSetter.java:66)
> app_1       |   at
> com.ethercis.persistence.AuditSetter.handleProperties(AuditSetter.java:60)
> app_1       |   at
> com.ethercis.ehrservice.EhrService.create(EhrService.java:226)
> app_1       |   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
> app_1       |   at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> app_1       |   at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> app_1       |   at java.lang.reflect.Method.invoke(Method.java:498)
> app_1       |   at
> com.ethercis.vehr.RequestDispatcher.dispatch(RequestDispatcher.java:654)
> app_1       |   at
> com.ethercis.vehr.RequestDispatcher.dispatch(RequestDispatcher.java:691)
> app_1       |   at
> com.ethercis.vehr.AccessGateService.queryHandler(AccessGateService.java:295)
> app_1       |   at
> com.ethercis.vehr.VEhrGateServlet.syncExecute(VEhrGateServlet.java:633)
> app_1       |   at
> com.ethercis.vehr.VEhrGateServlet.processRequest(VEhrGateServlet.java:611)
> app_1       |   at
> com.ethercis.vehr.VEhrGateServlet.doPost(VEhrGateServlet.java:451)
> app_1       |   at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
> app_1       |   at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
> app_1       |   at
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808)
> app_1       |   at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
> app_1       |   at
> org.eclipse.jetty.servlets.CrossOriginFilter.handle(CrossOriginFilter.java:259)
> app_1       |   at
> org.eclipse.jetty.servlets.CrossOriginFilter.doFilter(CrossOriginFilter.java:222)
> app_1       |   at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
> app_1       |   at
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
> app_1       |   at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
> app_1       |   at
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
> app_1       |   at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
> app_1       |   at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
> app_1       |   at
> org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52)
> app_1       |   at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
> app_1       |   at org.eclipse.jetty.server.Server.handle(Server.java:497)
> app_1       |   at
> org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
> app_1       |   at
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
> app_1       |   at
> org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
> app_1       |   at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
> app_1       |   at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
> app_1       |   at java.lang.Thread.run(Thread.java:745)
> app_1       | Caused by: org.postgresql.util.PSQLException: This
> connection has been closed.
> app_1       |   at
> org.postgresql.jdbc2.AbstractJdbc2Connection.checkClosed(AbstractJdbc2Connection.java:861)
> app_1       |   at
> org.postgresql.jdbc3.AbstractJdbc3Connection.prepareStatement(AbstractJdbc3Connection.java:281)
> app_1       |   at
> org.postgresql.jdbc2.AbstractJdbc2Connection.prepareStatement(AbstractJdbc2Connection.java:334)
> app_1       |   at
> org.jooq.impl.ProviderEnabledConnection.prepareStatement(ProviderEnabledConnection.java:112)
> app_1       |   at
> org.jooq.impl.SettingsEnabledConnection.prepareStatement(SettingsEnabledConnection.java:76)
> app_1       |   at
> org.jooq.impl.AbstractResultQuery.prepare(AbstractResultQuery.java:227)
> app_1       |   at
> org.jooq.impl.AbstractQuery.execute(AbstractQuery.java:314)
> app_1       |   ... 43 more
> app_1       | INFO - com.ethercis.vehr.VEhrGateServlet.syncExecute(640)
> | Error trapped:#1.0.0 Invocation exception to
> method:create:org.jooq.exception.DataAccessException: SQL [select 1 as
> "one" where exists (select 1 as "one" from "ehr"."party_identified"
> where ("ehr"."party_identified"."party_ref_namespace" = ? and
> "ehr"."party_identified"."party_ref_scheme" = ? and
> "ehr"."party_identified"."party_ref_value" = ?))]; This connection has
> been closed.
>
> Did I use the POST command to create a new EHR correctly ? I have
> interpreted the API that there are no further parameters mandatory. What
> could have gone wrong ?
> Greetings
> Georg
>
> --
> ---------------------------------------------------------------------
> Dipl.-Inf. Georg Fette      Raum: B001
> Universität Würzburg        Tel.: +49-(0)931-31-85516
> Am Hubland                  Fax.: +49-(0)931-31-86732
> 97074 Würzburg              mail: georg.fe...@uni-wuerzburg.de
> ---------------------------------------------------------------------
>
>
> _______________________________________________
> openEHR-implementers mailing list
> openEHR-implementers@lists.openehr.org
> http://lists.openehr.org/mailman/listinfo/openehr-implementers_lists.openehr.org

_______________________________________________
openEHR-implementers mailing list
openEHR-implementers@lists.openehr.org
http://lists.openehr.org/mailman/listinfo/openehr-implementers_lists.openehr.org

Reply via email to