Okay, thanks for that Sean. I have a CRAZY idea... how about I try it with CouchDB instead? It's a) by Apache b) can be ran in Docker c) Has a JDBC connector on Github and d) Is 1 of the 2 databases used in OpenEMR so our cTAKES module users wouldn't get too confused.
Again, that last item is nice to have, don't read into it too much :). Thoughts? Thanks, Matthew Vita www.matthewvita.com On Mon, Dec 18, 2017 at 7:23 AM, Finan, Sean < sean.fi...@childrens.harvard.edu> wrote: > Fantastic! > > I am glad that you found the issue - that wouldn't have been a > straightforward causal to track down. > > Unfortunately we cannot package and ship any binaries that aren't fully > Apache license compliant etc. However, we can do two different things: > - We can still grab mysql from maven central for developers to use in a > developer environment, just like we do with the default umls dictionary. > - We can provide an easy means for fetching the library > post-installation. A Dockerfile for ctakes, a downloader that launches > when mysql is selected, or a good old fashioned installation script. > Luckily the mysql library is easily available and we wouldn't need to put > together a runtime package like APR. > > https://books.google.com/books?id=HTo_AmTpQPMC&pg=PA14& > lpg=PA14&dq=apache+license+mysql&source=bl&ots=uOpifTcI2E&sig=-qlWP2- > pXtEkwPM8BsKd73GvX9g&hl=en&sa=X&ved=0ahUKEwjhqrrX55PYAhVm5YMKHTB2A > GM4ChDoAQhMMAY#v=onepage&q=apache%20license%20mysql&f=false > > https://apr.apache.org/download.cgi > > I think that we could make a class that searches for mysql in the > environment if the mysql option is selected. ctakes-gui has a dependency > that makes this easy. Then a little downloader that throws a driver into > the lib/ directory. If needed we could create a factory that returns a > wrapper for the required mysql driver classes, and the factory could > contain a class loader that guarantees the jar is discovered > post-installation. That way a restart of the gui wouldn't be necessary ... > though that may not be a big deal. > > I am just throwing out some ideas. There is probably a very nice solution > that I haven't considered. > > Sean > > > > -----Original Message----- > From: Matthew Vita [mailto:matthewvit...@gmail.com] > Sent: Monday, December 18, 2017 1:23 AM > To: dev@ctakes.apache.org; Sandeep Byatha Gururaja rao; Shane Chesnutt > Subject: cTAKES Rest Service Development - Dictionary GUI MySQL Progress + > 1 Concern [EXTERNAL] > > Hi Gandhi, Sean, Tim, Alex, James, > > Good news, I was able to get MySQL running in the `ctakes-gui` (recall > that I am building in a toggle so that folks can create dictionaries using > MySQL rather than HSQLDB script files). > > I found out the source of the issue with bringing in the MySQL dependency. > This one definitely took me a while and was super subtle! If you visit > /ctakes/ctakes-distribution/src/main/assembly/bin.xml, > <exclude>mysql:*</exclude>is present because it's a n non-asf compliant > dependency used by ytex. > > Removing the exclude and addingin > <include>mysql:mysql-connector-java</include> gets the correct result: > > /ctakes/ctakes-distribution/target/apache-ctakes-4.0.1-SNAPSHOT/lib > matthew > > % ls -lash | grep mysql > 3912 -rw-r--r-- 1 matthew staff 1.9M Dec 14 20:23 > mysql-connector-java-6.0.6.jar > > Just for completeness, this is the exact POM entry: > > <dependency> > <groupId>mysql</groupId> > <artifactId>mysql-connector-java</artifactId> > <version>6.0.6</version> > </dependency> > > > Is there anyway we can use MySQL in cTAKES in a way that is compliant with > ASF? I wonder if MariaDB or Postgresql would be better because they work > with JDBC and are free/open source. Of course, I am biased towards > MySQL/MariaDB because the (near) future users of cTAKES Rest Service in the > OpenEMR space are going to want MySQL/MariaDB users :). Not a huge deal > though. > > Thanks, > > Matthew Vita > www.matthewvita.com >